8

答えはとてもシンプルだと確信していますが、ここにあります。

TopShelf を使用してサービスをインストールしていますが、コマンド ラインから正常にインストールして実行できます。

MyExecutable.Daemon インストール MyExecutable.Daemon 開始

これは問題ありませんが、サービス内にある必要があり、そうではなかったので試してみました。

sc create "MyExecutable.Daemon" binPath= "C:\'Program Files (x86)'\MyExecutable.Daemon.exe" DisplayName= "MyExecutable.Daemon" start= auto

しかし得た

Set-Content : A positional parameter cannot be found that accepts argument 'binpath='.
At line:1 char:1
+ sc create MyExecutable.Daemon binpath= "C:\'Program Files (x86)'\...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidArgument: (:) [Set-Content], ParameterBindingException
+ FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetContentCommand

だから私はここで立ち往生しています。ここで何が欠けていますか?

4

2 に答える 2

2

あなたがすべきですMyExecutable.Daemon install start。以前に PowerShell プロンプトから成功したと思いますが、確認する必要があると思います。それでもうまくいかない場合は、いずれかのログ プラグインでログを有効にして、ログ ファイルを提供する必要があります。scTopshelf サービスのインストールには使用しないでください。それは失敗します。

于 2013-09-19T13:57:06.327 に答える