0

バッチ ファイルを使用して起動パラメーターを使用して Windows サービスをインストールしようとしています。

インスタンス名を取得するためにインストーラーに渡されるサービス名があります。また、サービスの起動パラメータを設定したいです。引数をインストーラーに渡すと、問題はありません。起動パラメータの設定でエラーが発生します。

コードスニペット:

  set serviceName=FSER

    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe  /servicename="%serviceName%"  "%UserProfile%\AppData\Local\SERVER\%serviceName%\tser.exe "%serviceName%" " /logfile=install.log
4

2 に答える 2

2

i サービス インストーラー「Assemblypath」にパラメーターを追加して問題を解決しました。

   protected override void OnBeforeInstall(IDictionary savedState)
        {                
                string parameter = "YOUR COMMAND LINE PARAMETER VALUE GOES HERE";
                var assemblyPath = Context.Parameters["assemblypath"];
                assemblyPath += @""" "" " + parameter + "";
                Context.Parameters["assemblypath"] = assemblyPath;
                base.OnBeforeInstall(savedState);
        }
于 2013-10-21T07:04:52.047 に答える
0

引用符の問題のある使用? バックスラッシュで内側の引用符をエスケープしてみてください。

"\"myExeFile.exe\" \"myParameter\""

InstallUtil についてはよくわかりませんが、失敗し、InstallUtil が必要です。InstallUtil を使用してパラメーターなしでサービスをインストールし、sc.exe を使用して binPath のパラメーターを含めてサービスを再構成します。

于 2013-10-16T11:52:41.193 に答える