-1
私は成功せずC#サービスでランタイムにWindowsサービス名を取得するには?
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)
を試してみました、実行時にサービス名を知っておく必要がありますので、私は
sc <server> [command] [service name] <option1> <option2>...
で複数のインスタンスを開始しています。
問題のコードは既にそのメソッドを呼び出しています。だから、別のやり方をしているのはどういうことですか? –
Process.GetCurrentProcess()。ProcessName – tjhazel
Process.GetCurrentProcess()。ProcessNameはWindowsサービス名ですか? –