C#では、Windowsサーバー上の実行中のサービスのリストをどのように照会しますか?

C#では、Windowsサーバー上の実行中のサービスのリストをどのように照会しますか? photo 2 Info

C#では、Windowsサーバー上の実行中のサービスのリストをどのように照会しますか?

タグ:

質問

リモートマシン上の特定のユーザーとして実行されているサービスのリストを照会し、それぞれの健康を確認したいと思います。私はカスタムコンソールを構築しています。

ベストアンサー

ServiceControllerメソッドを使用するには、この前の質問に実装されている偽装を使用してソリューションをチェックアウトします。 .Net 2.0 ServiceController.GetServices()

FWIW、明示的なホスト、ユーザー名、パスワードを持つC#/ WMIの方法は次のとおりです。

C#では、Windowsサーバー上の実行中のサービスのリストをどのように照会しますか? photo 1

using System.Management;

static void EnumServices(string host, string username, string password)
{
string ns = @”rootcimv2″;
string query = “select * from Win32_Service”;

ConnectionOptions options = new ConnectionOptions();
if (!string.IsNullOrEmpty(username))
{
options.Username = username;
options.Password = password;
}

ManagementScope scope =
new ManagementScope(string.Format(@”{0}{1}”, host, ns), options);
scope.Connect();

C#では、Windowsサーバー上の実行中のサービスのリストをどのように照会しますか? photo 0

ManagementObjectSearcher searcher =
new ManagementObjectSearcher(scope, new ObjectQuery(query));
ManagementObjectCollection retObjectCollection = searcher.Get();
foreach (ManagementObject mo in retObjectCollection)
{
Console.WriteLine(mo.GetText(TextFormat.Mof));
}
}




source
実行中のWindowsサービスにC#コンソールアプリケーションをどのように添付できますか?
どのようにWindowsサービスからLinux上でスクリプトを実行するには?
どのようにC#で別の実行中のアプリケーションで変数を照会するには?
サーバー上のWindowsサービスは、ユーザーがログインせずに実行されません
WindowsでPythonスクリプトをサービスとしてどのように実行しますか?
どのようにWindows上でセロリを実行するには?
Windows 2019サーバー上でLinuxコンテナを実行中にエラーが発生しました
Windowsサービスとして実行中のTomcatロギング
どのようにサーバー上でJavaプログラムを実行するには?
サービスとしてWindows上でRedisを実行する
Rating