サービスアプリケーションのデバッグ
サービス アプリケーション への移動
サービスアプリケーションのデバッグは,実行中にそのプロセスにアタッチする(つまり,まずサービスを起動してから,デバッガにアタッチする)ことによって行えます。サービスアプリケーションのプロセスにアタッチするには,[実行 > プロセスにアタッチ]を選択してダイアログを表示し,目的のサービスアプリケーションを選択します。
この方法を使った場合,権利が不十分であるために失敗することがあります。その場合は,次のようにサービスコントロールマネージャ(SCM)を使ってデバッガを操作することができます。
デバッグ方法:
- まず,次のレジストリ位置に「Image File Execution Options」という名前のキーを作成します。 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
- 作成したサービスと同じ名前(MYSERV.EXE など)のサブキーを作成します。このサブキーに,Debugger という名前の REG_SZ 型の値を追加します。文字列値として bds.exe までのフルパスを使用してください。
- [サービス]コントロールパネルアプレットで目的のサービスを選択し,[スタートアップ]をクリックして,[デスクトップとの対話をサービスに許可]をチェックします。
Windows NT システムでは,サービスアプリケーションをデバッグする方法がもう 1 つあります。ただし,この方法には多少注意が必要です。それは,短時間のインターバルで操作する必要があるからです。
Windows NT:
- まず,デバッガで目的のサービスアプリケーションを開始します。読み込みが完了するまで数秒待ちます。
- この後,コントロールパネルまたは次のコマンドラインですぐにサービスを開始させます。 start MyServ
サービスが開始されないとアプリケーションが終了してしまうため,すぐに(アプリケーションの起動後 15~30 秒以内)にサービスを起動する必要があります。