在Windows上设置Java进程名称

前端之家收集整理的这篇文章主要介绍了在Windows上设置Java进程名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们的Java Swing应用程序在Windows上运行,并使用Launch4J包装在一个exe文件中。

我们想自定义我们的应用程序进程名称和描述(在Windows的任务管理器中),因为它当前是“javaw.exe”和“Java Platform SE binary”(这对我们的客户感到困惑)。

虽然较早版本的Launch4J可以使用< customProcName>进行更改,但此选项现在已经停止,因为它不再工作,因为Win7。

是否有其他(简单)解决方法自定义我们的应用程序进程的名称和描述?

例如,更改javaw.exe可执行文件名似乎是一种方法(当我们将它嵌入到包装的exe文件中),但是如何指示launch4j jvm文件名更改?

另一个选择可能是创建一个启动器exe文件:也许是一个过度的杀手?

任何想法/提示都是受欢迎的;谢谢!

如果您想要滚动自己的解决方案,您将要查看JNI和 Invocation API,特别是用于创建VM的JNI_CreateJavaVM(),找到主方法GetStaticMethodID()并使用CallStaticVoidMethod调用它。

这是java.exe,javaw.exe和各种其他本机启动器在内部执行的操作。一些例子包括

> OpenJDK java.c
> IntelliJ WinLauncher.cpp
> WinRun4J VM.cpp

如果您不想将本机构建系统与您的java构建系统集成,则一种方法是提前构建一个静态的launcher.exe,并将其视为一个静态二进制Blob。然后在Java构建过程中,使用java修改二进制blob,更新VERSIONINFO,图标和启动画面。这个方法的一个例子可以在IntelliJ LauncherGeneratorMain.java看到

原文链接:https://www.f2er.com/windows/372417.html

猜你在找的Windows相关文章