无法使用 VC++ 中的 LoadLibrary() 函数在 Windows 7 上加载 JVM

发布于 2024-12-04 04:38:56 字数 453 浏览 2 评论 0原文

我在我的应用程序中面临一个问题,如下:

我的应用程序中的 Java 类使用 JRE6 文件执行,因此我在我的应用程序中捆绑了 JRE6 文件夹。我的应用程序中的 exe 使用函数 Loadlibrary(jvm.dll 的路径)加载 JVM。这在 XP 上工作正常,但在 Windows 7 机器上会抛出错误 - “无法加载 JVM 错误”。 可能是什么问题?有什么建议吗?

如果我将上述 exe(来自我的应用程序的 exe)与以下路径的 JRE6 文件夹捆绑在一起,则此错误在 Windows 7 计算机上消失: JRE6/bin/MyExe。 exe 似乎能够在路径 JRE6/bin/MyExe 中找到其 JVM 依赖项。但是,如果我将 exe 与 JRE6 捆绑在一起并将其与我的应用程序一起分发,是否会违反 JRE6 版权和许可?

注意:我的应用程序中的 Exe 仅加载 JVM,不会添加/修改/删除 JRE6 文件夹中的任何文件。

I am facing one problem in my application as following:

Java classes from my application uses JRE6 files for execution so I have bundled JRE6 folder in my application. An exe from my application loads JVM using function: Loadlibrary(jvm.dll's path). This works fine on XP but on Windows 7 machine an error is being thrown - "Unable to load JVM error."
What could be the issue? any suggestion?

This error disappears on Windows 7 machine if I bundle the above exe(exe from my application) with JRE6 folder at the following path:
JRE6/bin/MyExe.
It seems that exe is able to find its JVM dependencies at the path - JRE6/bin/MyExe. But would it be JRE6 Copyright and Licensing violation if I bundle my exe with JRE6 and distribute it along with my application.

NOTE: Exe from my application only loads JVM and does not add/modify/delete any file from JRE6 folder.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

羞稚 2024-12-11 04:38:56

请尝试这个。
重新安装使用 jvm.dll 文件的程序。如果在使用特定程序时发生 jvm.dll DLL 错误,重新安装该程序应该替换该文件。

please, try this.
Reinstall the program that uses the jvm.dll file. If the jvm.dll DLL error occurs when you use a particular program, reinstalling the program should replace the file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文