.NET在C#中获取我的应用程序的进程ID

时间:2015-03-30 19:45:03

标签: c#

在.NET中是否有办法获取进行调用的程序的进程ID(或仅Process)?

Process.GetCurrentProcess()获取当前有效的Process,即用户正在使用的Process。我需要我自己的应用程序的GetCurrentProcess(),这个应用程序在我调用时可能不活跃。

我可以在Window.Activated上调用{{1}}并将其存储在私有字段中,但是如果应用程序在后台打开,则无法绝对保证(我相信)该事件将会触发。< / p>

1 个答案:

答案 0 :(得分:1)

你错了.. GetCurrentProcess返回:

  

与运行调用应用程序的进程资源关联的新Process组件。

它(不一定)返回与当前活动窗口关联的进程。

当文档引用“活动”进程时,这意味着当前正在执行的进程,即调用进程。活动窗口可能属于也可能不属于活动进程,因为当然可以在不拥有前台窗口或任何窗口的情况下执行进程。