CServiceModule::Start

WinMainルーチンは、登録と登録解除としてだけでなくとアンインストールのインストールの両方を処理します。サービスを実行すると、 WinMain CServiceModule::Startを呼び出す。

CServiceModule::Startは、各サービスのスタートアップ関数にマップするSERVICE_TABLE_ENTRY構造体の配列を設定します。この配列は、Win32 API 関数には、渡される StartServiceCtrlDispatcher。理論的には、1 つの exe ファイルが複数のサービスを処理できるし、アレイは複数のSERVICE_TABLE_ENTRY構造かもしれない。現在、ただし、ATL によって生成されたサービスの 1 つだけ EXE につきサービスをサポートします。したがって、配列は、サービス名とスタートアップ関数_ServiceNameを含む 1 つのエントリがあります。_ServiceName非静的メンバー関数、 ServiceNameを呼び出すCServiceModuleの静的メンバー関数です。

特価;StartServiceCtrlDispatcher失敗、サービス コントロール マネージャー (SCM) に接続するプログラムがサービスとして実行されていないことを意味します。この場合、プログラムは、ローカル サーバーとして実行できるように、プログラムCServiceModule::Runが直接呼び出されます。ローカル サーバーとしてのプログラムの実行の詳細については、デバッグのヒントを参照してください。(&N)。

Index