DWORD dwResumeCount;
DWORD dwRefCount;
- CLIENT_HANDLE hClient;
SERVICE_STATUS Status;
DWORD dwStartType;
DWORD dwErrorControl;
REGSAM samDesired,
PHKEY phKey);
-DWORD ScmCreateServiceKey(LPWSTR lpServiceName,
+DWORD ScmCreateServiceKey(LPCWSTR lpServiceName,
REGSAM samDesired,
PHKEY phKey);
LPWSTR lpValueName,
LPWSTR *lpValue);
+DWORD
+ScmReadDependencies(HKEY hServiceKey,
+ LPWSTR *lpDependencies,
+ DWORD *lpdwDependenciesLength);
+
/* database.c */
DWORD argc,
LPWSTR *argv);
-PSERVICE ScmGetServiceEntryByName(LPWSTR lpServiceName);
-PSERVICE ScmGetServiceEntryByDisplayName(LPWSTR lpDisplayName);
+PSERVICE ScmGetServiceEntryByName(LPCWSTR lpServiceName);
+PSERVICE ScmGetServiceEntryByDisplayName(LPCWSTR lpDisplayName);
PSERVICE ScmGetServiceEntryByResumeCount(DWORD dwResumeCount);
-PSERVICE ScmGetServiceEntryByClientHandle(ULONG ThreadId);
-DWORD ScmCreateNewServiceRecord(LPWSTR lpServiceName,
+DWORD ScmCreateNewServiceRecord(LPCWSTR lpServiceName,
PSERVICE *lpServiceRecord);
VOID ScmDeleteServiceRecord(PSERVICE lpService);
DWORD ScmMarkServiceForDelete(PSERVICE pService);
DWORD dwControl,
LPSERVICE_STATUS lpServiceStatus);
+BOOL ScmLockDatabaseExclusive(VOID);
+BOOL ScmLockDatabaseShared(VOID);
+VOID ScmUnlockDatabase(VOID);
+
+
/* driver.c */
DWORD ScmLoadDriver(PSERVICE lpService);
DWORD ScmCreateGroupList(VOID);
DWORD ScmSetServiceGroup(PSERVICE lpService,
- LPWSTR lpGroupName);
+ LPCWSTR lpGroupName);
/* rpcserver.c */