1#ifndef NT_SERVC_INCLUDED
2#define NT_SERVC_INCLUDED
51 long Init(LPCSTR szInternName,
void *ServiceThread);
57 BOOL
Install(
int startType, LPCSTR szInternName, LPCSTR szDisplayName,
58 LPCSTR szFullPath, LPCSTR szAccountName =
nullptr,
59 LPCSTR szPassword =
nullptr);
109 BOOL
SetStatus(DWORD dwCurrentState, DWORD dwWin32ExitCode,
110 DWORD dwServiceSpecificExitCode, DWORD dwCheckPoint,
Definition: nt_servc.h:23
void SetExitEvent(void)
Definition: nt_servc.cc:184
long Init(LPCSTR szInternName, void *ServiceThread, void(*fpReqAppShutdownCb)()) noexcept
LPDWORD lpdwTagID
Definition: nt_servc.h:36
int nStartTimeOut
Definition: nt_servc.h:41
BOOL Remove(LPCSTR szInternName)
THREAD_FC fpServiceThread
Definition: nt_servc.h:104
HANDLE hExitEvent
Definition: nt_servc.h:99
int nStopTimeOut
Definition: nt_servc.h:42
DWORD dwServiceType
Definition: nt_servc.h:31
LPTSTR * my_argv
Definition: nt_servc.h:48
void SetSlowStarting(unsigned long timeout)
Sets a timeout after which SCM will abort service startup if SetRunning() was not called or the timeo...
BOOL Install(int startType, LPCSTR szInternName, LPCSTR szDisplayName, LPCSTR szFullPath, LPCSTR szAccountName=nullptr, LPCSTR szPassword=nullptr)
DWORD dwErrorControl
Definition: nt_servc.h:33
HANDLE hShutdownEvent
Definition: nt_servc.h:49
BOOL bRunning
Definition: nt_servc.h:102
SERVICE_STATUS_HANDLE hServiceStatusHandle
Definition: nt_servc.h:100
int nError
Definition: nt_servc.h:50
LPSTR szLoadOrderGroup
Definition: nt_servc.h:35
DWORD my_argc
Definition: nt_servc.h:47
BOOL IsService(LPCSTR ServiceName)
static void ServiceCtrlHandler(DWORD ctrlCode)
LPSTR szDependencies
Definition: nt_servc.h:37
LPSTR ServiceName
Definition: nt_servc.h:98
HANDLE hThreadHandle
Definition: nt_servc.h:103
BOOL SetStatus(DWORD dwCurrentState, DWORD dwWin32ExitCode, DWORD dwServiceSpecificExitCode, DWORD dwCheckPoint, DWORD dwWaitHint)
DWORD dwDesiredAccess
Definition: nt_servc.h:30
DWORD dwState
Definition: nt_servc.h:51
BOOL bPause
Definition: nt_servc.h:101
int nPauseTimeOut
Definition: nt_servc.h:43
BOOL got_service_option(char **argv, char *service_option)
int nResumeTimeOut
Definition: nt_servc.h:44
void SetShutdownEvent(HANDLE hEvent)
Definition: nt_servc.h:54
static void ServiceMain(DWORD argc, LPTSTR *argv)
DWORD dwStartType
Definition: nt_servc.h:32
BOOL SeekStatus(LPCSTR szInternName, int OperationType)
static bool timeout(bool(*wait_condition)())
Timeout function.
Definition: log0meb.cc:498
void(* THREAD_FC)(void *)
Definition: nt_servc.h:21
#define HANDLE
Definition: violite.h:159