进程Id.有时或有时不开始匹配

本文关键字:开始 Id 进程 | 更新日期: 2023-09-27 17:57:59

我想从C#代码ANSYS Fluent exe文件运行

现在为了进行比较,我将举两个例子

Process fluent = Process.Start(@"C:'Program Files'ANSYS Inc'v130'fluent'ntbin'win64'fluent.exe", @"2ddp file.jou");
Process browser = Process.Start("IExplorer.exe", "http://www.google.com");

为什么C#代码中的browser.ID与TaskManager中的相同?为什么代码中的fluent.ID与TaskManager中的不同?

是因为Fluent的特点还是我犯了一些错误?

主要问题是:如何运行Fluent并在C#代码中获取其ID?

进程Id.有时或有时不开始匹配

这几乎肯定与Fluent的特性有关。如果您无法从Process.Start中获得(相关的)PID,您可能需要启动进程,然后进入等待循环,并尝试按名称检索进程(请参阅:Process.GetProcessesByName-我认为您会在没有.EXE的情况下传入EXE的名称)。

这个解决方案的健壮性取决于你对Fluent特性的预测能力,而这看起来已经很困难了。我绝对建议使用Process Explorer(如上所述),以及熟悉其他SysInternal工具,它们在这些情况下提供了大量的见解。

答案Daniel B可以,但如果我需要启动几个Fluent实例,它就不起作用。因此,我找到的最佳解决方案是使用CommandLine参数,然后在任务管理器中搜索