在搜索了很多关于这个问题之后,我仍然在检查运行过程是否已经完成时遇到问题.当用户点击GUI中的"Go"按钮时,程序运行约5秒钟并关闭.完成后,我想做点什么(例如,GUI中的绿色标记).
我的问题是'GetProcessesByName'显然无法看到程序,这很奇怪,因为我在任务管理器中看到它.程序名称是quartus_pgm.exe.请参阅以下代码,我已经尝试过quartus_pgm,或者quartus_pgm.exe,或者quartus_pgm.exe32(如任务管理器中所见)但没有!
如果我放'cmd'它确实看到它(quartus_pgm是从cmd中提取的),但它不是我想要的.我尝试了各种方法:
Process[] targetProcess = Process.GetProcessesByName(Path.GetFileNameWithoutExtension(processName));
Run Code Online (Sandbox Code Playgroud)
或者这个:
Process[] processes = Process.GetProcessesByName("quartus_pgm");
if (processes.Length > 0)
// do something;
Run Code Online (Sandbox Code Playgroud)
或者这个:
foreach (var process in Process.GetProcessesByName("quartus_pgm.exe"))
{
// do something;
}
Run Code Online (Sandbox Code Playgroud)
Isw*_*San 24
尝试删除.exe部分.
foreach (var process in Process.GetProcessesByName("quartus_pgm"))
{
// do something;
}
Run Code Online (Sandbox Code Playgroud)
从这里:
进程名称是进程的友好名称,例如Outlook,不包含.exe扩展名或路径
UPDATE
尝试列出计算机中的所有进程,查找quartus_pgm进程名称.
foreach (var process in Process.GetProcesses())
{
Console.WriteLine(process.ProcessName);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13404 次 |
| 最近记录: |