実行中のシステム上のすべての Windows サービスのインストール場所を取得できる Windows サービスを開発しています。レジストリから場所を取得しようとしましたが、そこにある名前は C# オブジェクトが返すものと一致しません。ガイドラインはありますか?
質問する
1675 次
3 に答える
2
ServiceControllerを使用して、インストールされている各サービスを検索し、レジストリでパスを検索する傾向があります。
foreach (ServiceController c in ServiceController.GetServices())
{
Console.WriteLine(c.DisplayName + " " + c.ServiceName);
}
実際、グーグルで検索したところ、非常によく似たソリューションを見つけました。
于 2012-06-27T06:08:06.487 に答える
0
すべてのWindowsサービスの情報を見つけるだけでよい場合は、Windowsサービスを開発しないでください。WMI(Windows Management Instrumentation)を使用する単純なソフトウェアを作成するだけです。WMIとサービスのリンクからアイデアが得られます。この例はVBスクリプトで記述されていますが、.NETでも同様のことができます。
于 2012-06-27T05:34:49.157 に答える
-3
まずあなたの考えが間違っています。異なる OS でのアクセスの問題につながります。Program files にインストールし、サービスとして登録する必要があります。
PSほとんどのWindowsサービスはSystem32フォルダーから実行されます
于 2012-06-27T05:18:27.630 に答える