J'ai écrit Windows Service dans VC++ pour monter des lecteurs au redémarrage du système. Maintenant, lorsque je redémarre le système, à l'arrêt du système, je veux déclencher mon événement d'arrêt de service qui ne se déclenche pas.Comment faire pour déclencher l'événement Arrêt du service Windows au redémarrage du système?
J'ai défini les propriétés du service Windows comme étant automatiques mais cela ne fonctionne pas. Lorsque je clique manuellement sur l'événement d'arrêt du bouton d'arrêt, je suis renvoyé.
Toute aide est appréciée. Mon code ressemble à:
void WINAPI ServiceCtrlHandler(DWORD Opcode)
{
switch(Opcode)
{
case SERVICE_CONTROL_PAUSE:
m_ServiceStatus.dwCurrentState = SERVICE_PAUSED;
break;
case SERVICE_CONTROL_CONTINUE:
m_ServiceStatus.dwCurrentState = SERVICE_RUNNING;
break;
case SERVICE_CONTROL_STOP:
m_ServiceStatus.dwWin32ExitCode = 0;
m_ServiceStatus.dwCurrentState = SERVICE_STOPPED;
m_ServiceStatus.dwCheckPoint = 0;
m_ServiceStatus.dwWaitHint = 0;
Disconnect() ;// This method i want to get called on system shot down automatically.
SetServiceStatus (m_ServiceStatusHandle,&m_ServiceStatus);
bRunning=false;
break;
case SERVICE_CONTROL_INTERROGATE:
break;
}
return;
}