7

システムでいくつかのインスタンスで実行されているサービスがあります。DISPLAY_NAMEサービスからサービスを見つける必要があります。試してみましServiceBase.ServiceNameたが、(おそらく) プロジェクト インストーラーからサービスの名前が返されますが、これは少なくともこの場合は役に立ちません。

このサービスはinstallutil、パラメーターを使用してインストールされます/name=

編集

Imran Balouch の回答に基づく回避策があります。インストーラーで名前を読み取り、レジストリ サブキーMe.Context.Parameters("name")に書き込みImagePath、サービスの Environment.GetCommandLineArgs で読み取ります。

4

2 に答える 2

6

Windows サービス プロジェクトに追加ProjectInstallerしましたか? はいの場合は、ProjectInstaller でServiceInstallerサービスに追加し、その ServiceInstaller でサービスの表示名を指定できます。そのサービスインストーラーを選択し、プロパティでそのDisplay Name またはInitializeComponentを設定するProjectInstaller.Designer.csProjectInstaller.Designer.vb、表示名を次のように指定できます。

this.yourServiceInstaller.DisplayName = "Service Display Name";
于 2012-06-12T12:01:28.697 に答える