我有一个通过窗口类名称和窗口名称查找进程的函数,但有时用户正在更改窗口名称,而我的函数什么也不做。
有没有其他方法可以找到这个过程?
您可以使用System.Diagnostics.Process
类来查找进程,然后您可以使用 WindowName、Handle、Module 等查找。
var process = System.Diagnostics.Process.GetProcessesByName("MyProcess").FirstOrDefault();
var process = System.Diagnostics.Process.GetProcesses().FirstOrDefault(p => p.Modules[0].ModuleName == "MyModule");
var process = Process.GetProcesses().FirstOrDefault(p => p.MainWindowTitle == "NotePad");
if (process != null)
{
SetWindowPos(process.MainWindowHandle);
}
等等。