[SC]
[reactos.git] / reactos / base / applications / sc / sc.h
index a0969af..4a611c3 100644 (file)
 
 #define SCDBG
 
+typedef struct
+{
+    LPCTSTR lpServiceName;
+    LPCTSTR lpDisplayName;
+    DWORD dwServiceType;
+    DWORD dwStartType;
+    DWORD dwErrorControl;
+    LPCTSTR lpBinaryPathName;
+    LPCTSTR lpLoadOrderGroup;
+    DWORD dwTagId;
+    LPCTSTR lpDependencies;
+    LPCTSTR lpServiceStartName;
+    LPCTSTR lpPassword;
+
+    BOOL bTagId;
+} SERVICE_CREATE_INFO, *LPSERVICE_CREATE_INFO;
+
+
 /* control functions */
 BOOL Start(LPCTSTR ServiceName, LPCTSTR *ServiceArgs, INT ArgCount);
 BOOL Create(LPCTSTR *ServiceArgs, INT ArgCount);
@@ -22,6 +40,7 @@ LPSERVICE_STATUS_PROCESS QueryService(LPCTSTR ServiceName);
 BOOL SdShow(LPCTSTR ServiceName);
 BOOL SdSet(LPCTSTR ServiceName, LPCTSTR SecurityDescriptor);
 BOOL QueryConfig(LPCTSTR ServiceName);
+BOOL SetConfig(LPCTSTR *ServiceArgs, INT ArgCount);
 BOOL QueryDescription(LPCTSTR ServiceName);
 BOOL SetDescription(LPCTSTR ServiceName, LPCTSTR Description);
 BOOL QueryFailure(LPCTSTR ServiceName);
@@ -30,6 +49,14 @@ BOOL QueryFailure(LPCTSTR ServiceName);
 VOID PrintService(LPCTSTR ServiceName, LPSERVICE_STATUS_PROCESS pStatus, BOOL bExtended);
 VOID ReportLastError(VOID);
 
+/* misc.c */
+BOOL
+ParseCreateConfigArguments(
+    LPCTSTR *ServiceArgs,
+    INT ArgCount,
+    BOOL bChangeService,
+    OUT LPSERVICE_CREATE_INFO lpServiceInfo);
+
 /* usage functions */
 VOID MainUsage(VOID);
 VOID StartUsage(VOID);
@@ -37,8 +64,6 @@ VOID PauseUsage(VOID);
 VOID InterrogateUsage(VOID);
 VOID ContinueUsage(VOID);
 VOID StopUsage(VOID);
-VOID ConfigUsage(VOID);
-VOID DescriptionUsage(VOID);
 VOID DeleteUsage(VOID);
 VOID CreateUsage(VOID);
 VOID ControlUsage(VOID);
@@ -48,5 +73,6 @@ VOID QueryConfigUsage(VOID);
 VOID QueryDescriptionUsage(VOID);
 VOID QueryFailureUsage(VOID);
 VOID SetDescriptionUsage(VOID);
+VOID SetConfigUsage(VOID);
 
 #endif /* _SC_PCH_ */