Maison >développement back-end >C++ >Comment puis-je obtenir le propriétaire d'un processus en C# à l'aide de WMI ?
Obtenir le propriétaire du processus en C#
Un contrôle précis et une gestion de la sécurité nécessitent un accès aux informations sur le propriétaire du processus. Cet article décrit une méthode pour obtenir le propriétaire d’un processus à l’aide de Windows Management Instrumentation (WMI).
Tout d'abord, vous devez citer System.Management.dll
. Cela vous permettra d'utiliser le framework WMI.
Obtenir le propriétaire par ID de processus
L'extrait de code suivant obtient le propriétaire d'un processus en fonction de son ID de processus :
<code class="language-csharp">public string GetProcessOwner(int processId) { string query = "Select * From Win32_Process Where ProcessID = " + processId; ManagementObjectSearcher searcher = new ManagementObjectSearcher(query); ManagementObjectCollection processList = searcher.Get(); foreach (ManagementObject obj in processList) { string[] argList = new string[] { string.Empty, string.Empty }; int returnVal = Convert.ToInt32(obj.InvokeMethod("GetOwner", argList)); if (returnVal == 0) { // 返回 DOMAIN\user 格式 return argList[1] + "\" + argList[0]; } } return "NO OWNER"; }</code>
Obtenir le propriétaire par nom de processus
Pour obtenir le propriétaire par nom de processus, vous pouvez utiliser l'extrait de code suivant :
<code class="language-csharp">public string GetProcessOwner(string processName) { string query = "Select * from Win32_Process Where Name = \"" + processName + "\""; ManagementObjectSearcher searcher = new ManagementObjectSearcher(query); ManagementObjectCollection processList = searcher.Get(); foreach (ManagementObject obj in processList) { string[] argList = new string[] { string.Empty, string.Empty }; int returnVal = Convert.ToInt32(obj.InvokeMethod("GetOwner", argList)); if (returnVal == 0) { // 返回 DOMAIN\user 格式 string owner = argList[1] + "\" + argList[0]; return owner; } } return "NO OWNER"; }</code>
En utilisant WMI, vous pouvez déterminer efficacement le propriétaire d'un processus, gagnant ainsi en flexibilité et en sécurité dans la gestion des ressources système.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!