COM4J使用访问冲突崩溃JVM

时间:2011-06-23 14:21:37

标签: java com com4j

我正在尝试使用COM4J(20110320)与Dragon Naturally Speaking 11进行交互。它成功启动,我可以与COM对象进行交互,包括从中获取事件。

然而,一旦它启动并正在侦听要进入的事件,JVM最终将因EXCEPTION_ACCESS_VIOLATION而崩溃。这种情况的时机相当不稳定,几乎可以立即用几分钟。

报告的问题框架有所不同,jvm.dll,oleaut32.dll& com4j-x86.dll都发生了各种偏移。 Java框架是一致的:

j  com4j.Variant.convertTo(Ljava/lang/Class;)Ljava/lang/Object;+0
j  com4j.EventProxy$EventMethod.invoke(Ljava/lang/Object;I[Lcom4j/Variant;)Ljava/lang/Object;+85
j  com4j.EventProxy.invoke(II[Lcom4j/Variant;)Ljava/lang/Object;+52
v  ~StubRoutines::call_stub
j  com4j.Win32Lock.suspend0(I)V+0
j  com4j.Win32Lock.suspend()V+4,
j  com4j.ComThread.run0()V+14
j  com4j.ComThread.run()V+27
v  ~StubRoutines::call_stub

运行Windows 7 Pro SP1 x64,JDK 1.6.0u24 x86。

我在C#中使用相同的COM对象进行了快速测试,但没有崩溃。

任何人都能分享见解吗?

干杯, 丹尼尔。

0 个答案:

没有答案