コマンドラインアプリケーションをサービスとして起動する

コマンドラインアプリケーションをサービスとして起動する

exe プログラムがあり、WinNT システムで新しいサービスを作成したいと考えています。このプログラムは、小さなコマンド ライン ftpserver です。

このコマンドを試しました:

sc create testFtp binPath="c:\ftpdmin.exe" start=auto

これはサービスの作成には機能しますが、起動しようとするとタイムアウトが発生します。おそらく、このコマンドラインは実際にはデーモンではないためです。

このエラーを回避し、コマンドライン アプリケーションをバックグラウンドで起動する方法はありますか?

答え1

サービスの起動に失敗しました(報告エラー 1053) 実行可能ファイルは実際の Windows サービスではないため、サービス開始要求に適切に応答できません。

「サービス ラッパー」、つまり開始/停止サービス呼び出しをインターセプトし、アプリケーションで適切なアクションを実行できる仲介ユーティリティを使用する必要があります。Microsoft の無料 (古い) Srvany基本的な機能は果たしますが、他にも無料および商用のオプションがあります。

関連情報