Fonction de CAtlServiceModuleT::Start
Lorsque le service est dirigée, _tWinMain appelle CAtlServiceModuleT::WinMain, qui appelle ensuite CAtlServiceModuleT::Start.
CAtlServiceModuleT::Start d'un tableau de structures de SERVICE_TABLE_ENTRY qui mappent chaque service à sa fonction de démarrage.Ce tableau est ensuite passée à la fonction de l'API Win32, StartServiceCtrlDispatcher.En théorie, un EXÉCUTABLE peut gérer plusieurs services et tableau peut avoir plusieurs structures de SERVICE_TABLE_ENTRY .Actuellement, toutefois, prend en charge après-vente ATL générés un seul service par EXE.Par conséquent, le tableau a une entrée unique qui contient le nom du service et _ServiceMain lorsque la fonction de démarrage._ServiceMain est une fonction membre statique d' CAtlServiceModuleT qui appelle la fonction membre non statique, ServiceMain.
[!REMARQUE]
Le manque de StartServiceCtrlDispatcher de se connecter au gestionnaire de contrôle des services (SCM) signifie peut-être que le programme ne s'exécute pas comme un service.Dans ce cas, le programme appelle CAtlServiceModuleT::Run directement afin que le programme puisse fonctionner comme un serveur local.Pour plus d'informations sur l'exécution du programme en tant que serveur local, consultez conseils de débogage.