【发布时间】:2013-03-14 08:38:51
【问题描述】:
我有一个通过窗口类名称和窗口名称查找进程的函数,但有时用户正在更改窗口名称,而我的函数什么也不做。
还有其他方法可以找到进程吗?
【问题讨论】:
标签: c# process system.diagnostics
我有一个通过窗口类名称和窗口名称查找进程的函数,但有时用户正在更改窗口名称,而我的函数什么也不做。
还有其他方法可以找到进程吗?
【问题讨论】:
标签: c# process system.diagnostics
您可以使用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);
}
等等
【讨论】: