int ret;\r
unsigned long error;\r
SERVICE_STATUS service_status;\r
- if (control == 0) {\r
+ if (control == NSSM_SERVICE_CONTROL_START) {\r
ret = StartService(service_handle, (unsigned long) argc, (const TCHAR **) argv);\r
error = GetLastError();\r
CloseHandle(service_handle);\r
TCHAR *service_control_text(unsigned long control) {\r
switch (control) {\r
/* HACK: there is no SERVICE_CONTROL_START constant */\r
- case 0: return _T("START");\r
+ case NSSM_SERVICE_CONTROL_START: return _T("START");\r
case SERVICE_CONTROL_STOP: return _T("STOP");\r
case SERVICE_CONTROL_SHUTDOWN: return _T("SHUTDOWN");\r
case SERVICE_CONTROL_PAUSE: return _T("PAUSE");\r
}\r
}\r
\r
+TCHAR *service_status_text(unsigned long status) {\r
+ switch (status) {\r
+ case SERVICE_STOPPED: return _T("SERVICE_STOPPED");\r
+ case SERVICE_START_PENDING: return _T("SERVICE_START_PENDING");\r
+ case SERVICE_STOP_PENDING: return _T("SERVICE_STOP_PENDING");\r
+ case SERVICE_RUNNING: return _T("SERVICE_RUNNING");\r
+ case SERVICE_CONTINUE_PENDING: return _T("SERVICE_CONTINUE_PENDING");\r
+ case SERVICE_PAUSE_PENDING: return _T("SERVICE_PAUSE_PENDING");\r
+ case SERVICE_PAUSED: return _T("SERVICE_PAUSED");\r
+ default: return 0;\r
+ }\r
+}\r
+\r
void log_service_control(TCHAR *service_name, unsigned long control, bool handled) {\r
TCHAR *text = service_control_text(control);\r
unsigned long event;\r