在.NET中是否有办法获取进行调用的程序的进程ID(或仅Process
)?
Process.GetCurrentProcess()
获取当前有效的Process
,即用户正在使用的Process
。我需要我自己的应用程序的GetCurrentProcess()
,这个应用程序在我调用时可能不活跃。
我可以在Window.Activated
上调用{{1}}并将其存储在私有字段中,但是如果应用程序在后台打开,则无法绝对保证(我相信)该事件将会触发。< / p>
答案 0 :(得分:1)
你错了.. GetCurrentProcess返回:
与运行调用应用程序的进程资源关联的新Process组件。
它(不一定)返回与当前活动窗口关联的进程。
当文档引用“活动”进程时,这意味着当前正在执行的进程,即调用进程。活动窗口可能属于也可能不属于活动进程,因为当然可以在不拥有前台窗口或任何窗口的情况下执行进程。