37 status.dwCurrentState = dwCurrentState;
39 status.dwControlsAccepted = 0;
44 status.dwWin32ExitCode = 0;
45 status.dwServiceSpecificExitCode = 0;
47 status.dwWaitHint = dwWaitHint;
50 ERR(
"failed to set service status\n");
62 TRACE(
"shutting down service\n");
67 FIXME(
"ignoring handle service ctrl %x\n",
ctrl);
108 static const WCHAR qmgr_nameW[] = {
'B',
'I',
'T',
'S',0};
114 ERR(
"failed to create stop_event\n");
126 ERR(
"failed starting service thread\n");
141 ERR(
"Failed starting file transfer thread\n");
151 TRACE(
"service stopped\n");
static SERVICE_STATUS_HANDLE(WINAPI *pRegisterServiceCtrlHandlerExA)(LPCSTR
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void WINAPI ServiceMain(DWORD argc, LPSTR *argv)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
HRESULT WINAPI CoRegisterClassObject(REFCLSID rclsid, LPUNKNOWN pUnk, DWORD dwClsContext, DWORD flags, LPDWORD lpdwRegister)
HRESULT WINAPI DECLSPEC_HOTPATCH CoInitializeEx(LPVOID lpReserved, DWORD dwCoInit)
void WINAPI DECLSPEC_HOTPATCH CoUninitialize(void)
HRESULT WINAPI CoInitializeSecurity(PSECURITY_DESCRIPTOR pSecDesc, LONG cAuthSvc, SOLE_AUTHENTICATION_SERVICE *asAuthSvc, void *pReserved1, DWORD dwAuthnLevel, DWORD dwImpLevel, void *pReserved2, DWORD dwCapabilities, void *pReserved3)
DWORD WINAPI fileTransfer(void *param)
BackgroundCopyManagerImpl globalMgr
static BOOL StartCount(void)
static SERVICE_STATUS_HANDLE status_handle
static VOID UpdateStatus(DWORD dwCurrentState, DWORD dwWin32ExitCode, DWORD dwWaitHint)
static DWORD WINAPI ServiceHandler(DWORD ctrl, DWORD event_type, LPVOID event_data, LPVOID context)
ClassFactoryImpl BITS_ClassFactory
#define RPC_C_AUTHN_LEVEL_NONE
#define RPC_C_IMP_LEVEL_IMPERSONATE
SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExW(LPCWSTR lpServiceName, LPHANDLER_FUNCTION_EX lpHandlerProc, LPVOID lpContext)
BOOL WINAPI SetServiceStatus(SERVICE_STATUS_HANDLE hServiceStatus, LPSERVICE_STATUS lpServiceStatus)
IClassFactory IClassFactory_iface
DWORD WINAPI WaitForSingleObject(IN HANDLE hHandle, IN DWORD dwMilliseconds)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventW(IN LPSECURITY_ATTRIBUTES lpEventAttributes OPTIONAL, IN BOOL bManualReset, IN BOOL bInitialState, IN LPCWSTR lpName OPTIONAL)
BOOL WINAPI DECLSPEC_HOTPATCH SetEvent(IN HANDLE hEvent)
DWORD WINAPI GetLastError(void)
#define SERVICE_ACCEPT_STOP
#define SERVICE_STOP_PENDING
#define SERVICE_CONTROL_SHUTDOWN
#define SERVICE_START_PENDING
#define SERVICE_ACCEPT_PAUSE_CONTINUE
#define SERVICE_CONTROL_STOP
#define SERVICE_ACCEPT_SHUTDOWN
#define SERVICE_WIN32_OWN_PROCESS