如何区分任务管理器进程列表中的进程列表中的不同JavaWS应用程序?

我正在使用JavaWS来启动一个应用程序,然后如何在用户的机器中检查该应用程序是否正在运行,因为它在任务管理器进程列表中的名称不是我在JNLP文件中给出的。

注意。 我检查了任务管理器进程列表,但进程的名称是javaw.exe,所有使用JavaWS的应用程序都具有相同的名称。 我的问题是,如果用户启动了多个JavaWS应用程序,那么我们如何识别我们要检查的进程? 我想到了获得过程的PID,但遗憾的是没有任何方法可以获得过程的PID。 我在Windows上工作。

..如何在用户的机器上检查该应用程序是否正在运行..

没有必要采用检查过程,这是一种固有的操作系​​统特定方法。

JNLP API提供了SingleInstanceService ..

在Java Web Start下启动的.allow(s)应用程序将自己注册为单例,并在用户尝试启动它们的新实例时在新参数集中传递。

然后,您的代码将决定是否更新当前应用程序,将其置于最前面,或启动新实例。

在Windows7上,您可以选择要在任务管理器中显示的列的列表。

转到View -> Select Process Page Columns

并选择要显示的Command line行列。

您应该能够通过命令行区分不同的javaw进程,包括类路径,主类名等。