2016-06-30 1 views
-1

Ich beginne mehrere Instanzen mitWie Windows-Dienstname zur Laufzeit in einem C# Dienst abgerufen werden?

sc <server> [command] [service name] <option1> <option2>... 

Weil ich den Dienstnamen zur Laufzeit ohne Erfolg

public static string getServiceName(int pid = 0)  
    { 
     string result = ""; 

     System.Management.ManagementObjectSearcher mos = new System.Management.ManagementObjectSearcher("root\\CIMV2", string.Format("SELECT * FROM Win32_Service where ProcessId={0}", pid)); 

     System.Management.ManagementObjectCollection moc = mos.Get(); 
     foreach (System.Management.ManagementObject mo in moc) 
     { 
      result = Convert.ToString(mo["Name"]); 
     } 

     return result; 
    } 

    getServiceName(System.Diagnostics.Process.GetCurrentProcess().Id) 

wissen muss ich versuchte.

Antwort

-2

Wie wäre es mit etwas wie Process.GetCurrentProcess().

+0

Der Code in der Frage nennt diese Methode bereits, also was genau schlagen Sie vor, anders zu machen? –

+0

Process.GetCurrentProcess(). ProcessName – tjhazel

+0

So ist die Process.GetCurrentProcess(). ProcessName der Windows-Dienstname? –

Verwandte Themen