2

在我的 Java 应用程序中,我希望在尝试加载之前确定用户定义的 dll 是 32 位还是 64 位。

我知道(以编程方式)运行我的应用程序的 JVM 是 32 位还是 64 位。我也知道(以编程方式)主机是 Windows 还是 Linux。

在调用“System.loadLibrary()”方法之前,如何以编程方式确定 dll 是 32 位还是 64 位?

4

1 回答 1

0

在 Windows 上,这需要像这样的管道

dumpbin /headers lib.dll | findstr /i "machine magic"

这是使用dumpbin通常随 Visual Studio 安装的实用程序,findstr是一个系统实用程序,我不知道是否有可重新分发的dumpbin.

只需从 java 执行此命令并对结果应用一些基本的比较检查。

于 2012-11-21T17:10:48.480 回答