加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

在Windows上设置Java进程名称

发布时间:2020-12-13 20:54:31 所属栏目:Windows 来源:网络整理
导读:我们的Java Swing应用程序在Windows上运行,并使用Launch4J包装在一个exe文件中。 我们想自定义我们的应用程序进程名称和描述(在Windows的任务管理器中),因为它当前是“javaw.exe”和“Java Platform SE binary”(这对我们的客户感到困惑)。 虽然较早版本的
我们的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看到

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读