- c # / JAVA-在CMD中运行的应用程序上获取PID

本文关键字:应用 应用程序 程序上 PID 获取 运行 JAVA- CMD | 更新日期: 2023-09-27 18:03:48

不好意思

如何找到一个java PID?

Process Server = new Process();
Server.StartInfo.FileName = "cmd.exe";
Server.StartInfo.RedirectStandardInput = true;
Server.StartInfo.RedirectStandardOutput = true;
Server.StartInfo.RedirectStandardError = true;
Server.StartInfo.UseShellExecute = false;
Server.Start();
StreamWriter InputCommands;
InputCommands = Server.StandardInput;
InputCommands.WriteLine(@"cd ""D:'Other'Server""");
InputCommands.WriteLine(@"java -jar Server155.jar");

可以输入

InputCommands.WriteLineAsync("status");

我试着使用

Server.StartInfo.FileName = "java.exe";
Server.StartInfo.Arguments = " -jar Server155.jar"

直接获取PID,但java路径更改为'C:'windows'system32'或'C:'Users'name'

,但也不能再输入,jar不能加载其他文件

java -jar "D:'JavaServer'test.jar"

正确路径@ .bat run

D:'JavaServer'test.jar
D:'JavaServer'file'....

WIN键+ R运行java

D:'JavaServer'test.jar
C:'windows'system32'file'....

cmd不带CD路径

D:'JavaServer'test.jar
C:'users'username'file'....

如何获得PID并在正确的路径上运行?

thx for help

- c # / JAVA-在CMD中运行的应用程序上获取PID

答案很简单。使用Server.StartInfo.WorkingDirectory指定程序的"当前目录"在哪里。

然后,当您运行它时,java程序将尝试读取(或加载,或其他)它认为在同一目录下的文件(作为jar文件)-该目录实际上是WorkingDirectory