|
|
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Собственно сабж)) Есть приложение Java отлично работающее на 32 разрядной системе. Для работы с Excel использую JCom ( Jcom ). Но вся беда в том, что он только для win32. Помогите советом, какую библиотеку можно использовать для работы с COM-объектами (Excel) под 64 системой? В идеале бы Jcom, но его не могу найти для версии x64... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 15:13:01 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUS В идеале бы Jcom, но его не могу найти для версии x64... Так собери сам, она же open source. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 15:19:35 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
MasterZivАлексей LEXUSВ идеале бы Jcom, но его не могу найти для версии x64... Так собери сам, она же open source. Там нет исходников, только скомпилированный jar файл и dll файл. Как ее можно собрать? Не понимаю механизм, если нет исходников... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 15:23:07 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSНо вся беда в том, что он только для win32. на заборе написано, или ругается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 15:30:05 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Petro123Алексей LEXUSНо вся беда в том, что он только для win32. на заборе написано, или ругается? Ругается))) авторjava.lang.NoClassDefFoundError: Could not initialize class jp.ne.so_net.ga2.no_ji.jcom.excel8.ExcelApplication Jawin также не поддерживает 32 разрядку... Нашел соседнюю тему Там как я понял просто поставили jre от 32 битки и запускали через нее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 15:39:16 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Я не на тот Jcom ссылку кинул, мой используемый jcom японец писал страница с примерами вот нужный там исходники есть, и для компиляции все, только не понятно, как для 64 версию получить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 16:19:48 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSПомогите советом, какую библиотеку можно использовать для работы с COM-объектами (Excel) под 64 системой?32-разрядную jvm. С соответствующими ограничениями на память. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 16:43:51 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
На 32 разрядной java машине, приложение вообще не запускается... Можно ли как то пересохранить библиотеку dll? Сделать из x86 dll - x64 dll? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2013, 20:39:02 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUS, а JCom используется только для работы с Excel документами или есть другие использования? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2013, 20:43:12 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
mayton, а чем не подходит apache poi для работы с xls/xlsx? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 14:27:22 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSНа 32 разрядной java машине, приложение вообще не запускается...-Xms в четыре гигабайта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 14:50:02 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSПомогите советом, какую библиотеку можно использовать для работы с COM-объектами (Excel) под 64 системой? http://sourceforge.net/projects/jacob-project/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 16:39:19 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Работа с экселем лишь маленькая часть всего приложения))) Посмотрел JACOB, все упирается в DLL, там их просто две, для x86 и x64. Повторю вопрос, как то переделать dll x32 в x64 можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 21:03:35 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSПосмотрел JACOB, все упирается в DLL, там их просто две, для x86 и x64. Просто в Java коде указываете какую загрузить.. Это не проблема. JNA с COM тоже рабтает. Сам пока не пробовал, в ближайшее время хочу попробовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 21:46:36 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
avp.mkАлексей LEXUSПосмотрел JACOB, все упирается в DLL, там их просто две, для x86 и x64. Просто в Java коде указываете какую загрузить.. Это не проблема. Это то понятно, только в коде скорее всего вызывается одно имя библиотеки. Типо System.loadlibrary("имя библиотеки")... Просто на разных разрядностях будут разные dll. В коде скорее всего нет проверки разрядности машины. Вот мне бы как-то тоже самое сделать для JCom. Получить dll для x64)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 22:05:59 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSЭто то понятно, только в коде скорее всего вызывается одно имя библиотеки. Типо System.loadlibrary("имя библиотеки")... Нет, вызывается то, что программист предал. System.setProperty("jacob.dll.path", "D:\\dist\\Java\\Библиотеки\\jacob\\jacob-....dll"); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2013, 22:28:12 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSПовторю вопрос, как то переделать dll x32 в x64 можно? 14670030 Есть доступ к исходникам по CVS: Вот ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 00:54:43 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
just_vladimirmayton, а чем не подходит apache poi для работы с xls/xlsx? Это не по адресу вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 12:39:35 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
mayton, извиняюсь, по диагонали прочитал топик и ошибочно подумал, что Вы являетесь ТС :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 13:48:19 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
avp.mkJNA с COM тоже рабтает. Сам пока не пробовал, в ближайшее время хочу попробовать. В следующем релизе (4.0.1) обещают генерацию враперов по tlb. https://github.com/twall/jna/blob/master/CHANGES.md#features COM/Typelib java code generator com.sun.jna.platform.win32.COM.tlb.TlbImp [@wolftobias] Примеры (для COM/OLE) идущие с библиотекой - убоги. Кому-нибудь попадались более сложные примеры работы с COM/OLE через JNA? Поделитесь ссылками) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 14:12:12 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUS, есть ещё Java Access Bridge - если вы хорошо владеете Win API или SWT OleAutomation ( пример ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 15:17:54 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
GarrickАлексей LEXUS, есть ещё Java Access Bridge - если вы хорошо владеете Win API или SWT OleAutomation ( пример ) Извините, пример нерабочий, не смотрите. Еще на ум приходят варианты, реализовать необходимую часть, ту что требует OLE, на С#/VB.NET/JS/VBS и запускать отдельно CMD/BAT файлами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 15:22:41 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Алексей LEXUSПовторю вопрос, как то переделать dll x32 в x64 можно?Вы так уверены, что 64-разрядная библиотека сможет работать с 32-разрядным приложением? Может быть, всё-таки, разобраться, почему java-приложение работает в 32-разрядной jvm на 32-разрядной операционной системе и не работает в 32-разрядной jvm на 64-разрядной системе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2013, 19:40:34 |
|
||
|
Работа с COM-объектами в 64 разрядной системе
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovВы так уверены, что 64-разрядная библиотека сможет работать с 32-разрядным приложением? Если заменить все вызовы 32-разрядного API, на соответствующие 64-разрядные, ну там ещё с типами данных возможно придётся поколдовать (short, int, long и т.п.), то возможно удастся скомпилить этот код в 64-битную библиотеку. Basil A. SidorovМожет быть, всё-таки, разобраться, почему java-приложение работает в 32-разрядной jvm на 32-разрядной операционной системе и не работает в 32-разрядной jvm на 64-разрядной системе? Да, тут всё просто - либо нет 32-разрядно jvm вовсе, либо Офис стоит 64-разрядный, который не поднимается 32-разрядной библиотекой. to Алексей LEXUS: Автор так и не озвучил для чего ему COM в Java. Возможно есть более простые пути решения проблемы. Например, мне в одном приложении не удалось распарсить очень большой excel-файл с помощью POI (про event модель с SAX в курсе). Т.к. выполнение всего это всё равно предполагалось на компьютере пользователя с Windows и Office, написал пару строк на VBS - открыть файл, сохранить как CSV, закрыть. Запускаю этот VBS файл из своего приложения в котором потом обрабатываю CSV файл вместо EXCEL - даже намного быстрее получается. Шире надо смотреть - возможно есть другие инструменты, позволяющие решить проблему проще и быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2013, 09:21:03 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38362600&tid=2128806]: |
0ms |
get settings: |
18ms |
get forum list: |
23ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
46ms |
get topic data: |
18ms |
get forum data: |
4ms |
get page messages: |
99ms |
get tp. blocked users: |
3ms |
| others: | 321ms |
| total: | 544ms |

| 0 / 0 |
