Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Quando il servizio viene diretto, _tWinMain chiama CAtlServiceModuleT::WinMain, che a sua volta chiama CAtlServiceModuleT::Start.
CAtlServiceModuleT::Start installa una matrice di strutture SERVICE_TABLE_ENTRY che eseguono il mapping di ogni servizio alla funzione di avvio.Questa matrice viene quindi passata alla funzione API Win32, StartServiceCtrlDispatcher.In teoria, un ESEGUIBILE può gestire i servizi e maggiore della matrice di strutture più SERVICE_TABLE_ENTRY.Attualmente, tuttavia, supporta di servizio ATL- generati solo un servizio per il file EXE.Pertanto, la matrice contiene una sola voce che contiene il nome del servizio e _ServiceMain come funzione di avvio._ServiceMain è una funzione membro static CAtlServiceModuleT che chiama la funzione membro non static, ServiceMain.
[!NOTA]
L'omissione StartServiceCtrlDispatcher di connettersi all'amministratore (SCM) del controllo del servizio che significa che il programma non viene eseguito come servizio.In questo caso, il programma chiama direttamente CAtlServiceModuleT::Run in modo da poter eseguire il programma come server locale.Per ulteriori informazioni su come eseguire il programma come server locale, vedere suggerimenti di debug.