首頁 > 後端開發 > C++ > 如何使用 WMI 在 C# 中尋找進程的擁有者?

如何使用 WMI 在 C# 中尋找進程的擁有者?

Linda Hamilton
發布: 2025-01-17 11:46:12
原創
373 人瀏覽過

How to Find the Owner of a Process in C# Using WMI?

透過 WMI 在 C# 中檢索進程所有權資訊

C# Process 類別不直接揭示進程所有權。 但是,我們可以利用 Windows Management Instrumentation (WMI) 來取得此關鍵細節。 請記住在您的專案中加入對 System.Management.dll 的引用。

使用進程 ID 識別擁有者

此方法根據給定的 ID 檢索進程擁有者:

<code class="language-csharp">public string GetProcessOwner(int processId)
{
    string query = $"Select * From Win32_Process Where ProcessID = {processId}";
    using (var searcher = new ManagementObjectSearcher(query))
    {
        using (var processList = searcher.Get())
        {
            foreach (ManagementObject obj in processList)
            {
                string[] ownerInfo = new string[2];
                int result = Convert.ToInt32(obj.InvokeMethod("GetOwner", ownerInfo));
                if (result == 0)
                {
                    return $"{ownerInfo[1]}\{ownerInfo[0]}"; // DOMAIN\user format
                }
            }
        }
    }
    return "NO OWNER";
}</code>
登入後複製

使用進程名稱識別擁有者

此替代方案使用進程名稱來尋找擁有者:

<code class="language-csharp">public string GetProcessOwner(string processName)
{
    string query = $"Select * from Win32_Process Where Name = '{processName}'";
    using (var searcher = new ManagementObjectSearcher(query))
    {
        using (var processList = searcher.Get())
        {
            foreach (ManagementObject obj in processList)
            {
                string[] ownerInfo = new string[2];
                int result = Convert.ToInt32(obj.InvokeMethod("GetOwner", ownerInfo));
                if (result == 0)
                {
                    return $"{ownerInfo[1]}\{ownerInfo[0]}"; // DOMAIN\user format
                }
            }
        }
    }
    return "NO OWNER";
}</code>
登入後複製

這些函數提供了一種強大的方法來確定進程所有權,為系統管理和安全分析提供了寶貴的見解。 使用 using 語句可確保正確的資源處置。

以上是如何使用 WMI 在 C# 中尋找進程的擁有者?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板