0

我在编程中使用 Java,并且想观察一些进程是否运行。我必须使我的实现平台独立;支持不同的操作系统(Windows XP、7 和 2000)也支持不同语言的操作系统(法语、英语、日语、中文、阿拉伯语、RTL 等)

我首先尝试使用命令行,但我遇到了一个问题,即命令回复是操作系统语言,所以如果操作系统是法语,它会用法语回复,如果是英语,它会回复英语。

我以不同的方式使用命令,但遇到了另一个编码问题,所以我必须在调用命令之前将编码设置为 UTS8,这适用于英语和法语,但我怀疑它适用于中国和 RTL 语言.

您对更好的解决方案有任何线索吗?

提前致谢

4

2 回答 2

0

There is no universally accepted way for doing this because all operating systems are very different. The two approaches we have available are probably the best. If you run into language problems with tasklist perhaps you should then take a look at the vbs version. The upside in that is that it should work independently of the language and Windows version.

于 2011-02-05T15:17:36.220 回答
0

我在编程中使用 Java,并且想观察一些进程是否运行。

坦率地说,这是一个在 Java 中很难解决的问题。Java 是跨平台的,因此它将您与特定于平台的功能隔离开来。因此,没有“官方”方式来获取 Java 中正在运行的进程列表。有一些技巧(例如调用“任务列表”,正如 erloewe 所解释的那样),但没有真正的解决方案。

您最好的选择可能是用其他语言(例如 C、Perl 或 VBScript)编写程序,然后从 Java 中调用它。

于 2011-02-05T17:56:15.970 回答