gpt4 book ai didi

java - java和ntdll.dll之间的关系

转载 作者:行者123 更新时间:2023-12-02 02:05:39 25 4
gpt4 key购买 nike

我有一个 java 应用程序 (tomcat-app),在后台使用 JNI 连接到 C 库。这个 java 应用程序以一种非常随机的方式崩溃了。我在系统事件中看到,是基于ntdll.dll崩溃的,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 版本?

非常感谢您的建议。

最佳答案

ntdll 是一个低级 Windows 系统 api,它提供了数百个 Windows api 函数,如内存管理、加载 DLL 和系统异常。

您不得使用与您系统上的版本不同的版本,因为它是您正在运行的 Windows 操作系统版本的紧密耦合/组成部分。

如果没有更多信息,很难判断问题可能是什么,但也许您在 JNI 包装器中使用了不正确的调用约定,从而导致堆栈不平衡。

关于java - java和ntdll.dll之间的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50843321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com