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

标签 c#

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

Process.GetCurrentProcess() 获取当前事件的 Process,即用户当时正在使用的进程。我需要我自己的应用程序的 Process,它在我调用它时可能未激活。

我可以在 Window.Activated 上调用 GetCurrentProcess() 并将其存储在私有(private)字段中,但没有绝对保证(我相信)该事件会触发如果应用程序在后台打开。

最佳答案

你错了.. GetCurrentProcess返回:

A new Process component associated with the process resource that is running the calling application.

它不会(必然)返回与当前事件窗口关联的进程。

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

关于c# - .NET 在 C# 中获取我的应用程序的进程 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29354906/

相关文章:

c# - 从数据表或数据库表生成类

c# - 在 C# 中使用 SqlCommand Prepare 的优点和缺点?

c# - 为用户创建头像上传表单

c# - CheckedListBox.SelectedItems.Count = 1?

c# - Lucene.NET 4.8 搜索不返回结果

c# - 如何从JSON格式的DataSet中提取DataTable

c# - 如何将选定的文本转换为 RichEditBox 中的超链接

c# - 使用 ValueInjecter 从 ExpandoObject 注入(inject)

c# - MonoTouch 上的 DateFormat 解析

c# - 如何在 Visual Studio 2019 中打开监 window 口