Эксепшн при работе с Com4j

 
 
 
Сообщения:35
Здравствуйте. Смотрю как в java создавать COM-объекты, и наткнулся на библиотеку Com4j. Нашёл пример в сети http://parshinpn.pro/content/primer-ispolzovaniya-biblioteki-com4j. Попытался его сделать, но он у меня не работает. Выдаётся эксепшн (скопировал то, что было в консоли ИДЕИ):
Quote:
Введите текст:
тест
Exception in thread "main" com4j.ExecutionException: com4j.ComException: 80040154 CoCreateInstance failed : Класс не зарегистрирован : .\com4j.cpp:153
at com4j.ComThread.execute(ComThread.java:203)
at com4j.Task.execute(Task.java:25)
at com4j.COM4J.createInstance(COM4J.java:97)
at com4j.COM4J.createInstance(COM4J.java:72)
at org.limantrade.voc.ClassFactory.createDictionary(ClassFactory.java:16)
at org.limantrade.Com4j_integrate.initLibrary(Com4j_integrate.java:39)
at org.limantrade.Com4j_integrate.main(Com4j_integrate.java:169)
Caused by: com4j.ComException: 80040154 CoCreateInstance failed : Класс не зарегистрирован : .\com4j.cpp:153
at com4j.Native.createInstance(Native Method)
at com4j.COM4J$CreateInstanceTask.call(COM4J.java:117)
at com4j.COM4J$CreateInstanceTask.call(COM4J.java:104)
at com4j.Task.invoke(Task.java:51)
at com4j.ComThread.run0(ComThread.java:153)
at com4j.ComThread.run(ComThread.java:134)

Process finished with exit code 1


Все шаги выполнил, ошибок на них не выдавало.
Изменен:06 ноя 2017 12:20
 
 
Сообщения:45
Возможно у вас не зарегистрирована библиотека. Попробуйте выполнить команду regsvr32 library.dll
 
 
Сообщения:35
izluchatel:
Возможно у вас не зарегистрирована библиотека. Попробуйте выполнить команду regsvr32 library.dll

Да всё сделал. Скорее всего, нужно использовать 32-битную версию JVM.
 
 
Сообщения:35
Точно, дело было либо в разрядности винды, либо в разрядность JVM (а может быть, и в том, и в другом). Так что, проблема решена.
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет