Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t在64位java程序中加载64位DLL_Java_Dll_64 Bit_Java Native Interface_32 Bit - Fatal编程技术网

Can';t在64位java程序中加载64位DLL

Can';t在64位java程序中加载64位DLL,java,dll,64-bit,java-native-interface,32-bit,Java,Dll,64 Bit,Java Native Interface,32 Bit,==已编辑== 我猜这和自由党有关。我正在使用,如果调用Queue.sendBytes()会发生错误,但如果调用Queue.send(Message),则不会发生错误。谢谢你所做的一切 ==编辑== 我有一个64位的DLL编译(我已经用dumpbin检查过了) 我正在尝试运行一个Java程序来利用这个库,但没有成功System.getProperty(“sun.arch.data.model”)dumps 64。我已经成功地将该库与其他Java程序一起使用,所以我知道这不是源于它。这一定是我编译

==已编辑==

我猜这和自由党有关。我正在使用,如果调用Queue.sendBytes()会发生错误,但如果调用Queue.send(Message),则不会发生错误。谢谢你所做的一切

==编辑==

我有一个64位的DLL编译(我已经用dumpbin检查过了)

我正在尝试运行一个Java程序来利用这个库,但没有成功
System.getProperty(“sun.arch.data.model”)
dumps 64。我已经成功地将该库与其他Java程序一起使用,所以我知道这不是源于它。这一定是我编译或实例化JVM的方式。有人知道会发生什么吗?错误如下:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006da48ad7, pid=3208, tid=4868
#
# JRE version: 6.0_24-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (19.1-b02 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x258ad7]
#
# An error report file with more information is saved as:
# hs_err_pid3208.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
我注意到,出于某种原因,我真的不知道这是否正常,JVM正在尝试加载一堆windows 32位库:

Dynamic libraries:
0x0000000000400000 - 0x000000000042e000     C:\Windows\system32\java.exe
0x0000000077420000 - 0x00000000775c9000     C:\Windows\SYSTEM32\ntdll.dll
0x0000000077200000 - 0x000000007731f000     C:\Windows\system32\kernel32.dll
0x000007fefd4e0000 - 0x000007fefd54c000     C:\Windows\system32\KERNELBASE.dll
0x000007fefe7e0000 - 0x000007fefe8bb000     C:\Windows\system32\ADVAPI32.dll
0x000007feff090000 - 0x000007feff12f000     C:\Windows\system32\msvcrt.dll
0x000007feff710000 - 0x000007feff72f000     C:\Windows\SYSTEM32\sechost.dll
0x000007feff130000 - 0x000007feff25d000     C:\Windows\system32\RPCRT4.dll
0x000000006d7f0000 - 0x000000006def4000     C:\Program Files\Java\jre6\bin\server\jvm.dll
0x0000000077320000 - 0x000000007741a000     C:\Windows\system32\USER32.dll
0x000007fefd950000 - 0x000007fefd9b7000     C:\Windows\system32\GDI32.dll

错误异常\u访问\u冲突(0xc0000005)是由DLL中的代码错误引起的。获取访问冲突意味着正在加载DLL。Queue.send()工作和Queue.sendBytes()失败的症状进一步说明DLL中存在错误。

错误异常访问冲突(0xc0000005)是由DLL中的代码错误引起的。获取访问冲突意味着正在加载DLL。Queue.send()工作且Queue.sendBytes()失败的症状进一步说明DLL中存在错误。

我看到您正在使用AMD。您是否尝试使用Intel 64位?在64位系统上,
system32
中的所有文件都是64位的。32位文件位于SysWOW64中,因此DLL不会尝试加载32位库。责怪MS保留命名(包括32个文件夹名和文件名),即使文件是64位的…谢谢。我不能用别的电脑试试,因为我这里没有别的电脑。最奇怪的是,我有另一个应用程序,加载刚刚好,但这一个不。。。我真的很紧张…我会尝试Java 6 update 30来检查是否不是一个已修复的错误。我看到您正在使用AMD。您是否尝试使用Intel 64位?在64位系统上,
system32
中的所有文件都是64位的。32位文件位于SysWOW64中,因此DLL不会尝试加载32位库。责怪MS保留命名(包括32个文件夹名和文件名),即使文件是64位的…谢谢。我不能用别的电脑试试,因为我这里没有别的电脑。最奇怪的是,我有另一个应用程序,加载刚刚好,但这一个不。。。我真的很紧张…我会尝试Java6Update30来检查它是否不是一个已经修复的bug。