我有一个使用 JNI 连接到后台 C 库的 Java 应用程序(tomcat-app)。这个 java 应用程序以一种非常随机的方式崩溃。我在系统事件中看到,这是基于 ntdll.dll 崩溃的,它是 Windows/System32 中的系统库。
有人可以告诉我,ntdll.dll 提供了哪些功能,它的用途是什么以及为什么 java 需要这个 ntdll.dll?
我使用 Google 来寻找解决方案,但是这种崩溃几乎可能发生在所有 Windows 系统上,我结合了很多应用程序(似乎它不仅仅是一个 windows-java 问题)。标准解决方案是重新安装/更新系统和/或应用程序。但是有没有解释,为什么这个 ntdll.dll 会造成这么大的麻烦?
你认为,如果我将更高版本的 ntdll.dll 放到 java 目录或 c-library 的目录中,这会有所帮助吗,这样 java 或 c-lib 可以采用这个较新的版本,而不是 Windows /System32 版本?
非常感谢您的建议。