在 C++ 的同一进程空间内执行外部可执行文件

发布于 2024-11-05 01:40:18 字数 270 浏览 0 评论 0原文

我正在尝试找到一种使用 C++ 包装器在 Windows 中执行 java vm 的简单方法。我可以使用 CreateProcess() 直接启动 java.exe,并提供我需要提供的所有参数。问题是现在在进程管理器中显示为两个进程。因此,如果我终止父进程,java.exe 实例仍然存在。

我需要这样做的原因是我们有一些 java 程序,所有这些程序都将同时运行。我希望能够在进程资源管理器中为它们提供可区分的名称,这样如果用户在使用其中一个进程时遇到问题,他们就不必猜测对应于哪个 java.exe 进程。

I'm trying to find an easy way to execute a java vm in windows using a C++ wrapper. I can use CreateProcess() to launch java.exe directly with all of my parameters that I need to give it. The problem is this now shows up as two processes in process manager. So, if I kill the parent process, the java.exe instance still sticks around.

The reason I need to do this is that we have a few java programs, all of which will be running concurrently. I want to be able to give them distinguishable names in the process explorer, so that if a user has trouble with one of them, they don't have to guess which java.exe process that corresponds to.

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

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

发布评论

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

评论(1

掩于岁月 2024-11-12 01:40:18

您可以将 java.exe 替换为您自己的可执行文件。 Java 术语表中的这篇文章讨论了 java.exe 的工作原理以及在哪里可以找到它的源代码。您可能只需复制然后重命名 java.exe 就可以了

You can replace java.exe with your own executable. This article from the Java Glossary discusses how java.exe works and where to find the source for it. It's possible that you could get by simply by copying and then renaming java.exe

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