11

バッチファイルを使用してWindowsサービスをインストールしようとしています。これを「installservice.bat」と呼びましょう。ファイル内には、次のコマンドがあります。

C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ InstallUtil.exe-i"。\MyService.exe"
    一時停止

バッチファイル(Vistaで管理者として実行)を実行すると、次のようになります。

インストールの初期化中に例外が発生しました:
System.IO.FileNotFoundException:ファイルまたはアセンブリを読み込めませんでした'file:/// C:\ Win
dows \ system32 \MyService.exe'またはその依存関係の1つ。システムはfできません
指定されたファイルを示します。

実際のサービスはC:\ Services\MyService.exeにあります。「。\MyService.exe」の部分を正しく機能させるにはどうすればよいですか?

4

3 に答える 3

10

このエラーのために他の誰かがここに来た場合に備えて...InstallUtil.exeを実行するときに、サービスへのパスにスペースが含まれている場合は、引用符で囲みます。 はい、これは明らかですが、そうでない場合に発生するエラーはそうではありません。

間違い...

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe C:\Users\joeblow\Documents\Visual Studio 2010\Projects\WindowsService1\WindowsService1\bin\Debug\WindowsService1.exe

右...

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "C:\Users\joeblow\Documents\Visual Studio 2010\Projects\WindowsService1\WindowsService1\bin\Debug\WindowsService1.exe"
于 2012-03-09T18:06:45.413 に答える
3

InstallUtilにフルパスをフィードしないのはなぜですか?

于 2009-08-14T08:01:27.007 に答える
0

batファイルのMyService.exeフォルダーをコピーして実行すると、エラーは発生しません。

于 2011-10-14T11:06:33.267 に答える