2

インストール中に、ServiceInstall および ServiceControl タグを使用してサービスをインストールしています。しかし、私のサービスは実行されていません。「サービスを開始するのに十分な権限があることを確認してください」というエラー メッセージが表示されます。しかし、私は管理者グループにいます。Wix ver3.0を使用しています。

コードスニペットはこちら、

<File Id='myexe' Name='myexe.exe' DiskId='1'
        Source='myexe.exe' Vital='yes'>
</File>

<ServiceInstall Id='myService' DisplayName='MySampleService' 
                Name='MySampleService' 
                ErrorControl='normal' Start='auto' 
                Type='ownProcess' Vital='yes' />

     <ServiceControl Id="StartService"
                  Name="MySampleService" Start="install" Wait="yes" />
     <ServiceControl Id="StopService" Name="MySampleService"
                  Stop="both" Wait="yes" Remove="uninstall" />

私を助けてください。

4

4 に答える 4

2

グローバル アセンブリ キャッシュ GAC にインストールされているコンポーネントに応じて .NET サービスを開始しようとしないでください。

于 2012-09-26T14:04:25.943 に答える
2

これは、サービスが何らかの理由でインストールまたは開始に失敗した場合に発生する一般的なエラーです (そうするように指示している場合)。とてもイライラします。デバッグする唯一の方法は、物事が最終的に機能するまで依存関係をゆっくりと削除することです。多くの場合、サービスにはコード (GAC のアセンブリ?) が必要ですが、後で完全に構成する必要があります。

私は通常、Services.msc を見てデバッグし、エラー メッセージが表示されている間にサービスを開始しようとします。これは通常、Windows インストーラーよりも優れたエラー メッセージを提供します。

于 2009-03-13T01:19:13.673 に答える
0

Window Eventlog を調べて問題を特定することもできます。問題がバイナリの欠落である場合は、Dependsを使用して何が欠落しているかを調べることができます。

于 2009-08-19T14:11:03.663 に答える
0

util:User 要素を使用してみてください

例えば:

<util:User Id="myServiceUser" Name="[USERNAME]" LogonAsService="yes" UpdateIfExists="yes" CreateUser="no"
                   FailIfExists="no" />
于 2012-03-05T11:29:37.557 に答える