{
DWORD ThreadId;
UNICODE_STRING ServiceName;
- LPSERVICE_MAIN_FUNCTION MainFunction;
+ LPSERVICE_MAIN_FUNCTIONW MainFunction;
LPHANDLER_FUNCTION HandlerFunction;
SERVICE_STATUS ServiceStatus;
} ACTIVE_SERVICE, *PACTIVE_SERVICE;
DWORD WINAPI
ScServiceMainStub(LPVOID Context)
{
- LPSERVICE_MAIN_FUNCTION lpServiceProc = (LPSERVICE_MAIN_FUNCTION)Context;
+ LPSERVICE_MAIN_FUNCTIONW lpServiceProc = (LPSERVICE_MAIN_FUNCTIONW)Context;
/* FIXME: Send argc and argv (from command line) as arguments */
/**********************************************************************
* RegisterServiceCtrlHandlerA
+ *
+ * @implemented
*/
SERVICE_STATUS_HANDLE STDCALL
RegisterServiceCtrlHandlerA(LPCSTR lpServiceName,
/**********************************************************************
* RegisterServiceCtrlHandlerW
+ *
+ * @implemented
*/
SERVICE_STATUS_HANDLE STDCALL
RegisterServiceCtrlHandlerW(LPCWSTR lpServiceName,
/**********************************************************************
* SetServiceBits
+ *
+ * @unimplemented
*/
BOOL STDCALL
SetServiceBits(SERVICE_STATUS_HANDLE hServiceStatus,
/**********************************************************************
* SetServiceObjectSecurity
+ *
+ * @unimplemented
*/
WINBOOL STDCALL
SetServiceObjectSecurity(SC_HANDLE hService,
/**********************************************************************
* SetServiceStatus
+ *
+ * @implemented
*/
BOOL STDCALL
SetServiceStatus(SERVICE_STATUS_HANDLE hServiceStatus,
/**********************************************************************
* StartServiceCtrlDispatcherA
+ *
+ * @unimplemented
*/
BOOL STDCALL
StartServiceCtrlDispatcherA(LPSERVICE_TABLE_ENTRYA lpServiceStartTable)
{
+ // FIXME how to deal with diffs between ANSI/UNICODE
+#if 0
LPSERVICE_TABLE_ENTRYW ServiceStartTableW;
ANSI_STRING ServiceNameA;
UNICODE_STRING ServiceNameW;
RtlFreeHeap(RtlGetProcessHeap(), 0, ServiceStartTableW);
return b;
+#else
+ UNIMPLEMENTED;
+ return 0;
+#endif
}
/**********************************************************************
* StartServiceCtrlDispatcherW
+ *
+ * @unimplemented
*/
BOOL STDCALL
StartServiceCtrlDispatcherW(LPSERVICE_TABLE_ENTRYW lpServiceStartTable)
HANDLE hPipe;
DWORD dwError;
- DPRINT1("StartServiceCtrlDispatcherW() called\n");
+ DPRINT("StartServiceCtrlDispatcherW() called\n");
i = 0;
while (lpServiceStartTable[i].lpServiceProc != NULL)