diff options
author | Robert Collins <rbtcollins@hotmail.com> | 2001-12-16 21:57:36 +0000 |
---|---|---|
committer | Robert Collins <rbtcollins@hotmail.com> | 2001-12-16 21:57:36 +0000 |
commit | 4706b72837a79ebb2fc2453f0500c1ea780e3149 (patch) | |
tree | 3e5318f3fb06249f1188cc64f15138312e3e9c31 /winsup/w32api/include/winsvc.h | |
parent | 990d6d89b61f5a20a2bf0fc71f428a39a7ed1cd5 (diff) | |
download | cygnal-4706b72837a79ebb2fc2453f0500c1ea780e3149.tar.gz cygnal-4706b72837a79ebb2fc2453f0500c1ea780e3149.tar.bz2 cygnal-4706b72837a79ebb2fc2453f0500c1ea780e3149.zip |
2001-12-17 Guido Serassio <serassio@libero.it>
* include/winsvc.h: Add ChangeServiceConfig2() &
QueryServiceConfig2() definition
Diffstat (limited to 'winsup/w32api/include/winsvc.h')
-rw-r--r-- | winsup/w32api/include/winsvc.h | 49 |
1 files changed, 48 insertions, 1 deletions
diff --git a/winsup/w32api/include/winsvc.h b/winsup/w32api/include/winsvc.h index 11b136145..b3d1503ed 100644 --- a/winsup/w32api/include/winsvc.h +++ b/winsup/w32api/include/winsvc.h @@ -45,7 +45,8 @@ extern "C" { #define SERVICE_INTERROGATE 128 #define SERVICE_USER_DEFINED_CONTROL 256 #define SERVICE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SERVICE_QUERY_CONFIG|SERVICE_CHANGE_CONFIG|SERVICE_QUERY_STATUS|SERVICE_ENUMERATE_DEPENDENTS|SERVICE_START|SERVICE_STOP|SERVICE_PAUSE_CONTINUE|SERVICE_INTERROGATE|SERVICE_USER_DEFINED_CONTROL) - +#define SERVICE_CONFIG_DESCRIPTION 1 +#define SERVICE_CONFIG_FAILURE_ACTIONS 2 typedef struct _SERVICE_STATUS { DWORD dwServiceType; @@ -113,9 +114,41 @@ typedef SC_HANDLE *LPSC_HANDLE; typedef PVOID SC_LOCK; typedef DWORD SERVICE_STATUS_HANDLE; typedef VOID(WINAPI *LPHANDLER_FUNCTION)(DWORD); +typedef struct _SERVICE_DESCRIPTIONA { + LPSTR lpDescription; +} SERVICE_DESCRIPTIONA,*LPSERVICE_DESCRIPTIONA; +typedef struct _SERVICE_DESCRIPTIONW { + LPWSTR lpDescription; +} SERVICE_DESCRIPTIONW,*LPSERVICE_DESCRIPTIONW; +typedef enum _SC_ACTION_TYPE { + SC_ACTION_NONE = 0, + SC_ACTION_RESTART = 1, + SC_ACTION_REBOOT = 2, + SC_ACTION_RUN_COMMAND = 3 +} SC_ACTION_TYPE; +typedef struct _SC_ACTION { + SC_ACTION_TYPE Type; + DWORD Delay; +} SC_ACTION,*LPSC_ACTION; +typedef struct _SERVICE_FAILURE_ACTIONSA { + DWORD dwResetPeriod; + LPSTR lpRebootMsg; + LPSTR lpCommand; + DWORD cActions; + SC_ACTION * lpsaActions; +} SERVICE_FAILURE_ACTIONSA,*LPSERVICE_FAILURE_ACTIONSA; +typedef struct _SERVICE_FAILURE_ACTIONSW { + DWORD dwResetPeriod; + LPWSTR lpRebootMsg; + LPWSTR lpCommand; + DWORD cActions; + SC_ACTION * lpsaActions; +} SERVICE_FAILURE_ACTIONSW,*LPSERVICE_FAILURE_ACTIONSW; BOOL WINAPI ChangeServiceConfigA(SC_HANDLE,DWORD,DWORD,DWORD,LPCSTR,LPCSTR,LPDWORD,LPCSTR,LPCSTR,LPCSTR,LPCSTR); BOOL WINAPI ChangeServiceConfigW(SC_HANDLE,DWORD,DWORD,DWORD,LPCWSTR,LPCWSTR,LPDWORD,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); +BOOL WINAPI ChangeServiceConfig2A(SC_HANDLE,DWORD,LPVOID); +BOOL WINAPI ChangeServiceConfig2W(SC_HANDLE,DWORD,LPVOID); BOOL WINAPI CloseServiceHandle(SC_HANDLE); BOOL WINAPI ControlService(SC_HANDLE,DWORD,LPSERVICE_STATUS); SC_HANDLE WINAPI CreateServiceA(SC_HANDLE,LPCSTR,LPCSTR,DWORD,DWORD,DWORD,DWORD,LPCSTR,LPCSTR,PDWORD,LPCSTR,LPCSTR,LPCSTR); @@ -137,6 +170,8 @@ SC_HANDLE WINAPI OpenServiceA(SC_HANDLE,LPCSTR,DWORD); SC_HANDLE WINAPI OpenServiceW(SC_HANDLE,LPCWSTR,DWORD); BOOL WINAPI QueryServiceConfigA(SC_HANDLE,LPQUERY_SERVICE_CONFIGA,DWORD,PDWORD); BOOL WINAPI QueryServiceConfigW(SC_HANDLE,LPQUERY_SERVICE_CONFIGW,DWORD,PDWORD); +BOOL WINAPI QueryServiceConfig2A(SC_HANDLE,DWORD,LPBYTE,DWORD,LPDWORD); +BOOL WINAPI QueryServiceConfig2W(SC_HANDLE,DWORD,LPBYTE,DWORD,LPDWORD); BOOL WINAPI QueryServiceLockStatusA(SC_HANDLE,LPQUERY_SERVICE_LOCK_STATUSA,DWORD,PDWORD); BOOL WINAPI QueryServiceLockStatusW(SC_HANDLE,LPQUERY_SERVICE_LOCK_STATUSW,DWORD,PDWORD); BOOL WINAPI QueryServiceObjectSecurity(SC_HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD); @@ -157,10 +192,15 @@ typedef QUERY_SERVICE_CONFIGW QUERY_SERVICE_CONFIG,*LPQUERY_SERVICE_CONFIG; typedef QUERY_SERVICE_LOCK_STATUSW QUERY_SERVICE_LOCK_STATUS,*LPQUERY_SERVICE_LOCK_STATUS; typedef SERVICE_TABLE_ENTRYW SERVICE_TABLE_ENTRY,*LPSERVICE_TABLE_ENTRY; typedef LPSERVICE_MAIN_FUNCTIONW LPSERVICE_MAIN_FUNCTION; +typedef SERVICE_DESCRIPTIONW SERVICE_DESCRIPTION; +typedef LPSERVICE_DESCRIPTIONW LPSERVICE_DESCRIPTION; +typedef SERVICE_FAILURE_ACTIONSW SERVICE_FAILURE_ACTIONS; +typedef LPSERVICE_FAILURE_ACTIONSW LPSERVICE_FAILURE_ACTIONS; #define SERVICES_ACTIVE_DATABASE SERVICES_ACTIVE_DATABASEW #define SERVICES_FAILED_DATABASE SERVICES_FAILED_DATABASEW #define SC_GROUP_IDENTIFIER SC_GROUP_IDENTIFIERW #define ChangeServiceConfig ChangeServiceConfigW +#define ChangeServiceConfig2 ChangeServiceConfig2W #define CreateService CreateServiceW #define EnumDependentServices EnumDependentServicesW #define EnumServicesStatus EnumServicesStatusW @@ -169,6 +209,7 @@ typedef LPSERVICE_MAIN_FUNCTIONW LPSERVICE_MAIN_FUNCTION; #define OpenSCManager OpenSCManagerW #define OpenService OpenServiceW #define QueryServiceConfig QueryServiceConfigW +#define QueryServiceConfig2 QueryServiceConfig2W #define QueryServiceLockStatus QueryServiceLockStatusW #define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerW #define StartService StartServiceW @@ -179,10 +220,15 @@ typedef QUERY_SERVICE_CONFIGA QUERY_SERVICE_CONFIG,*LPQUERY_SERVICE_CONFIG; typedef QUERY_SERVICE_LOCK_STATUSA QUERY_SERVICE_LOCK_STATUS,*LPQUERY_SERVICE_LOCK_STATUS; typedef SERVICE_TABLE_ENTRYA SERVICE_TABLE_ENTRY,*LPSERVICE_TABLE_ENTRY; typedef LPSERVICE_MAIN_FUNCTIONA LPSERVICE_MAIN_FUNCTION; +typedef SERVICE_DESCRIPTIONA SERVICE_DESCRIPTION; +typedef LPSERVICE_DESCRIPTIONA LPSERVICE_DESCRIPTION; +typedef SERVICE_FAILURE_ACTIONSA SERVICE_FAILURE_ACTIONS; +typedef LPSERVICE_FAILURE_ACTIONSA LPSERVICE_FAILURE_ACTIONS; #define SERVICES_ACTIVE_DATABASE SERVICES_ACTIVE_DATABASEA #define SERVICES_FAILED_DATABASE SERVICES_FAILED_DATABASEA #define SC_GROUP_IDENTIFIER SC_GROUP_IDENTIFIERA #define ChangeServiceConfig ChangeServiceConfigA +#define ChangeServiceConfig2 ChangeServiceConfig2A #define CreateService CreateServiceA #define EnumDependentServices EnumDependentServicesA #define EnumServicesStatus EnumServicesStatusA @@ -191,6 +237,7 @@ typedef LPSERVICE_MAIN_FUNCTIONA LPSERVICE_MAIN_FUNCTION; #define OpenSCManager OpenSCManagerA #define OpenService OpenServiceA #define QueryServiceConfig QueryServiceConfigA +#define QueryServiceConfig2 QueryServiceConfig2A #define QueryServiceLockStatus QueryServiceLockStatusA #define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerA #define StartService StartServiceA |