Udostępnij za pośrednictwem


Funkcja CAtlServiceModuleT::ServiceMain

Menedżer sterowania usługami (SCM) wywołuje ServiceMain podczas otwierania aplikacji usługi w Panelu sterowania wybierz usługę i kliknij przycisk Start.

Po SCM wywołuje ServiceMain, usługa musi dawać SCM funkcji obsługi.Ta funkcja umożliwia SCM uzyskania stanu usługi i przekazać konkretne instrukcje (na przykład wstrzymanie lub zatrzymanie).SCM pobiera tej funkcji, gdy usługa przechodzi _Handler funkcji Win32 API RegisterServiceCtrlHandler.(_Handler funkcja wywołuje funkcję członka niestatycznego członka statycznego Obsługa.)

Podczas uruchamiania usługi również informują SCM jej bieżącego stanu.Robi to, przekazując SERVICE_START_PENDING funkcji Win32 API SetServiceStatus.

ServiceMainnastępnie wywołuje CAtlExeModuleT::InitializeCom, który wywołuje funkcję interfejsu Win32 API funkcja CoInitializeEx.Domyślnie InitializeCom przekazuje COINIT_MULTITHREADED flagi funkcji.Ta flaga wskazuje, że program ma być serwer bezwątkowe.

Teraz CAtlServiceModuleT::Run nazywa się wykonywanie pracy głównego usługi.Uruchom kontynuuje wykonywanie, dopóki nie zostanie zatrzymana.

Zobacz też

Informacje

Usługi ATL

CAtlServiceModuleT::ServiceMain