History

win32: cleanup include

grischka committed 16 years ago

Commit b0abcfd1 parent 52991428 files · +57 −485Browse files

Unified · Split

8 files
  1. win32/include/_mingw.h +46 −47
  2. win32/include/malloc.h +3 −1
  3. win32/include/sys/stat.h +2 −0
  4. win32/include/sys/timeb.h +2 −0
  5. win32/include/sys/types.h +2 −0
  6. win32/include/sys/utime.h +2 −0
  7. win32/include/unistd.h +0 −40
  8. win32/include/winapi/winsvc.h +0 −397
win32/include/_mingw.h+46−47
@@ -19,109 +19,108 @@ · 18 unmodified lines
19#define __MINGW_H19#define __MINGW_H
20 20
21#include <stddef.h>21#include <stddef.h>
22#include <stdarg.h>
22 23
23#define __int64 long long
24#define __int32 long
25#define __int16 short
26#define __int8 char24#define __int8 char
25#define __int16 short
26#define __int32 int
27#define __int64 long long
27 28
28#define __cdecl __attribute__((__cdecl__))29#define __cdecl __attribute__((__cdecl__))
29#define __declspec(x) __attribute__((x))30#define __declspec(x) __attribute__((x))
30#define __fastcall31#define __unaligned __attribute__((packed))
32#define __fastcall __attribute__((fastcall))
31 33
32// #define __MINGW_IMPORT extern __declspec(dllimport)34// #define __MINGW_IMPORT extern __declspec(dllimport)
33
34#undef _MSVCRT_35#undef _MSVCRT_
35#undef __MINGW_IMPORT36#undef __MINGW_IMPORT
36
37#define _CRTIMP extern
38#define __CRT_INLINE extern __inline__
39#define __MINGW_NOTHROW
40#define __MINGW_ATTRIB_NORETURN37#define __MINGW_ATTRIB_NORETURN
38#define __MINGW_ATTRIB_CONST
41#define __MINGW_ATTRIB_DEPRECATED39#define __MINGW_ATTRIB_DEPRECATED
40#define __MINGW_ATTRIB_MALLOC
41#define __MINGW_ATTRIB_PURE
42#define __MINGW_ATTRIB_NONNULL(arg)
43#define __MINGW_NOTHROW
42#define __GNUC_VA_LIST44#define __GNUC_VA_LIST
43 45
44#define _CONST_RETURN46#define _CRTIMP extern
47#define __CRT_INLINE extern __inline__
48
45#define _CRT_ALIGN(x) __attribute__((aligned(x)))49#define _CRT_ALIGN(x) __attribute__((aligned(x)))
46#define DECLSPEC_ALIGN(x) __attribute__((aligned(x)))50#define DECLSPEC_ALIGN(x) __attribute__((aligned(x)))
51#define _CRT_PACKING 8
52#define __CRT_UNALIGNED
53#define _CONST_RETURN
47 54
48#define __CRT_STRINGIZE(_Value) #_Value55#define __CRT_STRINGIZE(_Value) #_Value
49#define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value)56#define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value)
50
51#define __CRT_WIDE(_String) L ## _String57#define __CRT_WIDE(_String) L ## _String
52#define _CRT_WIDE(_String) __CRT_WIDE(_String)58#define _CRT_WIDE(_String) __CRT_WIDE(_String)
53 59
54#ifdef _WIN6460#ifdef _WIN64
55 61# define _INTEGRAL_MAX_BITS 64
56typedef __int64 intptr_t;62typedef __int64 intptr_t;
63typedef __int64 ptrdiff_t;
57typedef unsigned __int64 uintptr_t;64typedef unsigned __int64 uintptr_t;
58#define __stdcall65# define __stdcall
59#define _AMD64_ 166# define _AMD64_ 1
60#define __x86_64 167# define __x86_64 1
61#define USE_MINGW_SETJMP_TWO_ARGS68# define USE_MINGW_SETJMP_TWO_ARGS
62#define mingw_getsp tinyc_getbp69# define mingw_getsp tinyc_getbp
63
64#else70#else
65 71# define _INTEGRAL_MAX_BITS 32
66typedef __int32 intptr_t;72typedef __int32 intptr_t;
73typedef __int32 ptrdiff_t;
67typedef unsigned __int32 uintptr_t;74typedef unsigned __int32 uintptr_t;
68#define __stdcall __attribute__((__stdcall__))75# define __stdcall __attribute__((__stdcall__))
69#define _X86_ 176# define _X86_ 1
70#define WIN32 177# define WIN32 1
71 78# define _USE_32BIT_TIME_T
72#endif79#endif
73 80#define _UINTPTR_T_DEFINED
74#define _INTEGRAL_MAX_BITS 6481#define _INTPTR_T_DEFINED
75#define _CRT_PACKING 882#define _PTRDIFF_T_DEFINED
76 83
77typedef long __time32_t;84typedef long __time32_t;
78#define _TIME32_T_DEFINED85#define _TIME32_T_DEFINED
79typedef __int64 __time64_t;86typedef __int64 __time64_t;
80#define _TIME64_T_DEFINED87#define _TIME64_T_DEFINED
81
82typedef unsigned long size_t;
83#define _SIZE_T_DEFINED
84typedef long ssize_t;
85#define _SSIZE_T_DEFINED
86
87#ifdef _USE_32BIT_TIME_T88#ifdef _USE_32BIT_TIME_T
88#ifdef _WIN64
89#error You cannot use 32-bit time_t (_USE_32BIT_TIME_T) with _WIN64
90#endif
91typedef __time32_t time_t;89typedef __time32_t time_t;
90#define _TIME_T_DEFINED
92#else91#else
93typedef __time64_t time_t;92typedef __time64_t time_t;
94#endif
95#define _TIME_T_DEFINED93#define _TIME_T_DEFINED
94#endif
95
96typedef unsigned long size_t;
97#define _SIZE_T_DEFINED
98typedef long ssize_t;
99#define _SSIZE_T_DEFINED
96 100
97#define _WCTYPE_T_DEFINED
98typedef unsigned int wint_t;101typedef unsigned int wint_t;
99typedef unsigned short wctype_t;102typedef unsigned short wctype_t;
103#define _WCTYPE_T_DEFINED
104typedef unsigned short wchar_t;
105#define _WCHAR_T_DEFINED
100 106
101#define _ERRCODE_DEFINED
102typedef int errno_t;107typedef int errno_t;
108#define _ERRCODE_DEFINED
103 109
104typedef struct threadlocaleinfostruct *pthreadlocinfo;110typedef struct threadlocaleinfostruct *pthreadlocinfo;
105typedef struct threadmbcinfostruct *pthreadmbcinfo;111typedef struct threadmbcinfostruct *pthreadmbcinfo;
106typedef struct localeinfo_struct _locale_tstruct,*_locale_t;112typedef struct localeinfo_struct _locale_tstruct,*_locale_t;
107 113
108/* for winapi */114/* for winapi */
109#define _ANONYMOUS_UNION
110#define _ANONYMOUS_STRUCT
111#define DECLSPEC_NORETURN
112#define WIN32_LEAN_AND_MEAN115#define WIN32_LEAN_AND_MEAN
113#define DECLARE_STDCALL_P(type) __stdcall type
114#define NOSERVICE 1116#define NOSERVICE 1
115#define NOMCX 1117#define NOMCX 1
116#define NOIME 1118#define NOIME 1
117#ifndef WINVER119#ifndef WINVER
118#define WINVER 0x0502120# define WINVER 0x0502
119#endif121#endif
120#ifndef _WIN32_WINNT122#ifndef _WIN32_WINNT
121#define _WIN32_WINNT 0x502123# define _WIN32_WINNT 0x502
122#endif124#endif
123 125
124/* get va_list */
125#include <stdarg.h>
126
127#endif /* __MINGW_H */126#endif /* __MINGW_H */
win32/include/malloc.h+3−1
@@ -148,7 +148,9 @@ extern "C" { · 147 unmodified lines
148#ifdef __GNUC__148#ifdef __GNUC__
149#define alloca(x) __builtin_alloca((x))149#define alloca(x) __builtin_alloca((x))
150#else150#else
151//gr #define alloca _alloca151#ifndef __TINYC__ //gr
152#define alloca _alloca
153#endif
152#endif154#endif
153#endif155#endif
154 156
win32/include/sys/stat.h+2−0
@@ -25,6 +25,7 @@ extern "C" { · 24 unmodified lines
25 25
26#include <sys/types.h>26#include <sys/types.h>
27 27
28#ifndef __TINYC__ //gr
28#ifdef _USE_32BIT_TIME_T29#ifdef _USE_32BIT_TIME_T
29#ifdef _WIN6430#ifdef _WIN64
30#undef _USE_32BIT_TIME_T31#undef _USE_32BIT_TIME_T
@@ -34,6 +35,7 @@ extern "C" { · 3 unmodified lines
34#define _USE_32BIT_TIME_T35#define _USE_32BIT_TIME_T
35#endif36#endif
36#endif37#endif
38#endif
37 39
38#ifndef _TIME32_T_DEFINED40#ifndef _TIME32_T_DEFINED
39 typedef long __time32_t;41 typedef long __time32_t;
win32/include/sys/timeb.h+2−0
@@ -22,6 +22,7 @@ extern "C" { · 21 unmodified lines
22#define _CRTIMP __declspec(dllimport)22#define _CRTIMP __declspec(dllimport)
23#endif23#endif
24 24
25#ifndef __TINYC__ //gr
25#ifdef _USE_32BIT_TIME_T26#ifdef _USE_32BIT_TIME_T
26#ifdef _WIN6427#ifdef _WIN64
27#undef _USE_32BIT_TIME_T28#undef _USE_32BIT_TIME_T
@@ -31,6 +32,7 @@ extern "C" { · 3 unmodified lines
31#define _USE_32BIT_TIME_T32#define _USE_32BIT_TIME_T
32#endif33#endif
33#endif34#endif
35#endif
34 36
35#ifndef _TIME32_T_DEFINED37#ifndef _TIME32_T_DEFINED
36 typedef long __time32_t;38 typedef long __time32_t;
win32/include/sys/types.h+2−0
@@ -12,6 +12,7 @@ · 11 unmodified lines
12 12
13#include <_mingw.h>13#include <_mingw.h>
14 14
15#ifndef __TINYC__ //gr
15#ifdef _USE_32BIT_TIME_T16#ifdef _USE_32BIT_TIME_T
16#ifdef _WIN6417#ifdef _WIN64
17#undef _USE_32BIT_TIME_T18#undef _USE_32BIT_TIME_T
@@ -21,6 +22,7 @@ · 3 unmodified lines
21#define _USE_32BIT_TIME_T22#define _USE_32BIT_TIME_T
22#endif23#endif
23#endif24#endif
25#endif
24 26
25#ifndef _TIME32_T_DEFINED27#ifndef _TIME32_T_DEFINED
26#define _TIME32_T_DEFINED28#define _TIME32_T_DEFINED
win32/include/sys/utime.h+2−0
@@ -27,6 +27,7 @@ extern "C" { · 26 unmodified lines
27#define _WCHAR_T_DEFINED27#define _WCHAR_T_DEFINED
28#endif28#endif
29 29
30#ifndef __TINYC__ //gr
30#ifdef _USE_32BIT_TIME_T31#ifdef _USE_32BIT_TIME_T
31#ifdef _WIN6432#ifdef _WIN64
32#undef _USE_32BIT_TIME_T33#undef _USE_32BIT_TIME_T
@@ -36,6 +37,7 @@ extern "C" { · 3 unmodified lines
36#define _USE_32BIT_TIME_T37#define _USE_32BIT_TIME_T
37#endif38#endif
38#endif39#endif
40#endif
39 41
40#ifndef _TIME32_T_DEFINED42#ifndef _TIME32_T_DEFINED
41#define _TIME32_T_DEFINED43#define _TIME32_T_DEFINED
win32/include/unistd.h+0−40
@@ -1,40 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6/*
7 * This file is part of the Mingw32 package.
8 *
9 * unistd.h maps (roughly) to io.h
10 */
11
12#ifndef __STRICT_ANSI__
13
14#include <io.h>
15#include <process.h>
16
17#define __UNISTD_GETOPT__
18#include <getopt.h>
19#undef __UNISTD_GETOPT__
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25#ifndef FTRUNCATE_DEFINED
26#define FTRUNCATE_DEFINED
27/* This is defined as a real library function to allow autoconf
28 to verify its existence. */
29int ftruncate(int, off_t);
30__CRT_INLINE int ftruncate(int __fd, off_t __length)
31{
32 return _chsize (__fd, __length);
33}
34#endif
35
36#ifdef __cplusplus
37}
38#endif
39
40#endif
win32/include/winapi/winsvc.h+0−397
@@ -1,397 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6#ifndef _WINSVC_
7#define _WINSVC_
8
9#ifndef WINADVAPI
10#define WINADVAPI DECLSPEC_IMPORT
11#endif
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17#define SERVICES_ACTIVE_DATABASEW L"ServicesActive"
18#define SERVICES_FAILED_DATABASEW L"ServicesFailed"
19
20#define SERVICES_ACTIVE_DATABASEA "ServicesActive"
21#define SERVICES_FAILED_DATABASEA "ServicesFailed"
22
23#define SC_GROUP_IDENTIFIERW L'+'
24#define SC_GROUP_IDENTIFIERA '+'
25
26#ifdef UNICODE
27#define SERVICES_ACTIVE_DATABASE SERVICES_ACTIVE_DATABASEW
28#define SERVICES_FAILED_DATABASE SERVICES_FAILED_DATABASEW
29
30#define SC_GROUP_IDENTIFIER SC_GROUP_IDENTIFIERW
31#else
32#define SERVICES_ACTIVE_DATABASE SERVICES_ACTIVE_DATABASEA
33#define SERVICES_FAILED_DATABASE SERVICES_FAILED_DATABASEA
34
35#define SC_GROUP_IDENTIFIER SC_GROUP_IDENTIFIERA
36#endif
37
38#define SERVICE_NO_CHANGE 0xffffffff
39
40#define SERVICE_ACTIVE 0x00000001
41#define SERVICE_INACTIVE 0x00000002
42#define SERVICE_STATE_ALL (SERVICE_ACTIVE | SERVICE_INACTIVE)
43
44#define SERVICE_CONTROL_STOP 0x00000001
45#define SERVICE_CONTROL_PAUSE 0x00000002
46#define SERVICE_CONTROL_CONTINUE 0x00000003
47#define SERVICE_CONTROL_INTERROGATE 0x00000004
48#define SERVICE_CONTROL_SHUTDOWN 0x00000005
49#define SERVICE_CONTROL_PARAMCHANGE 0x00000006
50#define SERVICE_CONTROL_NETBINDADD 0x00000007
51#define SERVICE_CONTROL_NETBINDREMOVE 0x00000008
52#define SERVICE_CONTROL_NETBINDENABLE 0x00000009
53#define SERVICE_CONTROL_NETBINDDISABLE 0x0000000A
54#define SERVICE_CONTROL_DEVICEEVENT 0x0000000B
55#define SERVICE_CONTROL_HARDWAREPROFILECHANGE 0x0000000C
56#define SERVICE_CONTROL_POWEREVENT 0x0000000D
57#define SERVICE_CONTROL_SESSIONCHANGE 0x0000000E
58
59#define SERVICE_STOPPED 0x00000001
60#define SERVICE_START_PENDING 0x00000002
61#define SERVICE_STOP_PENDING 0x00000003
62#define SERVICE_RUNNING 0x00000004
63#define SERVICE_CONTINUE_PENDING 0x00000005
64#define SERVICE_PAUSE_PENDING 0x00000006
65#define SERVICE_PAUSED 0x00000007
66
67#define SERVICE_ACCEPT_STOP 0x00000001
68#define SERVICE_ACCEPT_PAUSE_CONTINUE 0x00000002
69#define SERVICE_ACCEPT_SHUTDOWN 0x00000004
70#define SERVICE_ACCEPT_PARAMCHANGE 0x00000008
71#define SERVICE_ACCEPT_NETBINDCHANGE 0x00000010
72#define SERVICE_ACCEPT_HARDWAREPROFILECHANGE 0x00000020
73#define SERVICE_ACCEPT_POWEREVENT 0x00000040
74#define SERVICE_ACCEPT_SESSIONCHANGE 0x00000080
75
76#define SC_MANAGER_CONNECT 0x0001
77#define SC_MANAGER_CREATE_SERVICE 0x0002
78#define SC_MANAGER_ENUMERATE_SERVICE 0x0004
79#define SC_MANAGER_LOCK 0x0008
80#define SC_MANAGER_QUERY_LOCK_STATUS 0x0010
81#define SC_MANAGER_MODIFY_BOOT_CONFIG 0x0020
82
83#define SC_MANAGER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SC_MANAGER_CONNECT | SC_MANAGER_CREATE_SERVICE | SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_LOCK | SC_MANAGER_QUERY_LOCK_STATUS | SC_MANAGER_MODIFY_BOOT_CONFIG)
84
85#define SERVICE_QUERY_CONFIG 0x0001
86#define SERVICE_CHANGE_CONFIG 0x0002
87#define SERVICE_QUERY_STATUS 0x0004
88#define SERVICE_ENUMERATE_DEPENDENTS 0x0008
89#define SERVICE_START 0x0010
90#define SERVICE_STOP 0x0020
91#define SERVICE_PAUSE_CONTINUE 0x0040
92#define SERVICE_INTERROGATE 0x0080
93#define SERVICE_USER_DEFINED_CONTROL 0x0100
94
95#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)
96
97#define SERVICE_RUNS_IN_SYSTEM_PROCESS 0x00000001
98
99#define SERVICE_CONFIG_DESCRIPTION 1
100#define SERVICE_CONFIG_FAILURE_ACTIONS 2
101
102 typedef struct _SERVICE_DESCRIPTIONA {
103 LPSTR lpDescription;
104 } SERVICE_DESCRIPTIONA,*LPSERVICE_DESCRIPTIONA;
105
106 typedef struct _SERVICE_DESCRIPTIONW {
107 LPWSTR lpDescription;
108 } SERVICE_DESCRIPTIONW,*LPSERVICE_DESCRIPTIONW;
109
110#ifdef UNICODE
111 typedef SERVICE_DESCRIPTIONW SERVICE_DESCRIPTION;
112 typedef LPSERVICE_DESCRIPTIONW LPSERVICE_DESCRIPTION;
113#else
114 typedef SERVICE_DESCRIPTIONA SERVICE_DESCRIPTION;
115 typedef LPSERVICE_DESCRIPTIONA LPSERVICE_DESCRIPTION;
116#endif
117
118 typedef enum _SC_ACTION_TYPE {
119 SC_ACTION_NONE = 0,SC_ACTION_RESTART = 1,SC_ACTION_REBOOT = 2,SC_ACTION_RUN_COMMAND = 3
120 } SC_ACTION_TYPE;
121
122 typedef struct _SC_ACTION {
123 SC_ACTION_TYPE Type;
124 DWORD Delay;
125 } SC_ACTION,*LPSC_ACTION;
126
127 typedef struct _SERVICE_FAILURE_ACTIONSA {
128 DWORD dwResetPeriod;
129 LPSTR lpRebootMsg;
130 LPSTR lpCommand;
131 DWORD cActions;
132 SC_ACTION *lpsaActions;
133 } SERVICE_FAILURE_ACTIONSA,*LPSERVICE_FAILURE_ACTIONSA;
134
135 typedef struct _SERVICE_FAILURE_ACTIONSW {
136 DWORD dwResetPeriod;
137 LPWSTR lpRebootMsg;
138 LPWSTR lpCommand;
139 DWORD cActions;
140 SC_ACTION *lpsaActions;
141 } SERVICE_FAILURE_ACTIONSW,*LPSERVICE_FAILURE_ACTIONSW;
142
143#ifdef UNICODE
144 typedef SERVICE_FAILURE_ACTIONSW SERVICE_FAILURE_ACTIONS;
145 typedef LPSERVICE_FAILURE_ACTIONSW LPSERVICE_FAILURE_ACTIONS;
146#else
147 typedef SERVICE_FAILURE_ACTIONSA SERVICE_FAILURE_ACTIONS;
148 typedef LPSERVICE_FAILURE_ACTIONSA LPSERVICE_FAILURE_ACTIONS;
149#endif
150
151 DECLARE_HANDLE(SC_HANDLE);
152 typedef SC_HANDLE *LPSC_HANDLE;
153
154 DECLARE_HANDLE(SERVICE_STATUS_HANDLE);
155
156 typedef enum _SC_STATUS_TYPE {
157 SC_STATUS_PROCESS_INFO = 0
158 } SC_STATUS_TYPE;
159
160 typedef enum _SC_ENUM_TYPE {
161 SC_ENUM_PROCESS_INFO = 0
162 } SC_ENUM_TYPE;
163
164 typedef struct _SERVICE_STATUS {
165 DWORD dwServiceType;
166 DWORD dwCurrentState;
167 DWORD dwControlsAccepted;
168 DWORD dwWin32ExitCode;
169 DWORD dwServiceSpecificExitCode;
170 DWORD dwCheckPoint;
171 DWORD dwWaitHint;
172 } SERVICE_STATUS,*LPSERVICE_STATUS;
173
174 typedef struct _SERVICE_STATUS_PROCESS {
175 DWORD dwServiceType;
176 DWORD dwCurrentState;
177 DWORD dwControlsAccepted;
178 DWORD dwWin32ExitCode;
179 DWORD dwServiceSpecificExitCode;
180 DWORD dwCheckPoint;
181 DWORD dwWaitHint;
182 DWORD dwProcessId;
183 DWORD dwServiceFlags;
184 } SERVICE_STATUS_PROCESS,*LPSERVICE_STATUS_PROCESS;
185
186 typedef struct _ENUM_SERVICE_STATUSA {
187 LPSTR lpServiceName;
188 LPSTR lpDisplayName;
189 SERVICE_STATUS ServiceStatus;
190 } ENUM_SERVICE_STATUSA,*LPENUM_SERVICE_STATUSA;
191
192 typedef struct _ENUM_SERVICE_STATUSW {
193 LPWSTR lpServiceName;
194 LPWSTR lpDisplayName;
195 SERVICE_STATUS ServiceStatus;
196 } ENUM_SERVICE_STATUSW,*LPENUM_SERVICE_STATUSW;
197
198#ifdef UNICODE
199 typedef ENUM_SERVICE_STATUSW ENUM_SERVICE_STATUS;
200 typedef LPENUM_SERVICE_STATUSW LPENUM_SERVICE_STATUS;
201#else
202 typedef ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS;
203 typedef LPENUM_SERVICE_STATUSA LPENUM_SERVICE_STATUS;
204#endif
205
206 typedef struct _ENUM_SERVICE_STATUS_PROCESSA {
207 LPSTR lpServiceName;
208 LPSTR lpDisplayName;
209 SERVICE_STATUS_PROCESS ServiceStatusProcess;
210 } ENUM_SERVICE_STATUS_PROCESSA,*LPENUM_SERVICE_STATUS_PROCESSA;
211
212 typedef struct _ENUM_SERVICE_STATUS_PROCESSW {
213 LPWSTR lpServiceName;
214 LPWSTR lpDisplayName;
215 SERVICE_STATUS_PROCESS ServiceStatusProcess;
216 } ENUM_SERVICE_STATUS_PROCESSW,*LPENUM_SERVICE_STATUS_PROCESSW;
217
218#ifdef UNICODE
219 typedef ENUM_SERVICE_STATUS_PROCESSW ENUM_SERVICE_STATUS_PROCESS;
220 typedef LPENUM_SERVICE_STATUS_PROCESSW LPENUM_SERVICE_STATUS_PROCESS;
221#else
222 typedef ENUM_SERVICE_STATUS_PROCESSA ENUM_SERVICE_STATUS_PROCESS;
223 typedef LPENUM_SERVICE_STATUS_PROCESSA LPENUM_SERVICE_STATUS_PROCESS;
224#endif
225
226 typedef LPVOID SC_LOCK;
227
228 typedef struct _QUERY_SERVICE_LOCK_STATUSA {
229 DWORD fIsLocked;
230 LPSTR lpLockOwner;
231 DWORD dwLockDuration;
232 } QUERY_SERVICE_LOCK_STATUSA,*LPQUERY_SERVICE_LOCK_STATUSA;
233
234 typedef struct _QUERY_SERVICE_LOCK_STATUSW {
235 DWORD fIsLocked;
236 LPWSTR lpLockOwner;
237 DWORD dwLockDuration;
238 } QUERY_SERVICE_LOCK_STATUSW,*LPQUERY_SERVICE_LOCK_STATUSW;
239
240#ifdef UNICODE
241 typedef QUERY_SERVICE_LOCK_STATUSW QUERY_SERVICE_LOCK_STATUS;
242 typedef LPQUERY_SERVICE_LOCK_STATUSW LPQUERY_SERVICE_LOCK_STATUS;
243#else
244 typedef QUERY_SERVICE_LOCK_STATUSA QUERY_SERVICE_LOCK_STATUS;
245 typedef LPQUERY_SERVICE_LOCK_STATUSA LPQUERY_SERVICE_LOCK_STATUS;
246#endif
247
248 typedef struct _QUERY_SERVICE_CONFIGA {
249 DWORD dwServiceType;
250 DWORD dwStartType;
251 DWORD dwErrorControl;
252 LPSTR lpBinaryPathName;
253 LPSTR lpLoadOrderGroup;
254 DWORD dwTagId;
255 LPSTR lpDependencies;
256 LPSTR lpServiceStartName;
257 LPSTR lpDisplayName;
258 } QUERY_SERVICE_CONFIGA,*LPQUERY_SERVICE_CONFIGA;
259
260 typedef struct _QUERY_SERVICE_CONFIGW {
261 DWORD dwServiceType;
262 DWORD dwStartType;
263 DWORD dwErrorControl;
264 LPWSTR lpBinaryPathName;
265 LPWSTR lpLoadOrderGroup;
266 DWORD dwTagId;
267 LPWSTR lpDependencies;
268 LPWSTR lpServiceStartName;
269 LPWSTR lpDisplayName;
270 } QUERY_SERVICE_CONFIGW,*LPQUERY_SERVICE_CONFIGW;
271
272#ifdef UNICODE
273 typedef QUERY_SERVICE_CONFIGW QUERY_SERVICE_CONFIG;
274 typedef LPQUERY_SERVICE_CONFIGW LPQUERY_SERVICE_CONFIG;
275#else
276 typedef QUERY_SERVICE_CONFIGA QUERY_SERVICE_CONFIG;
277 typedef LPQUERY_SERVICE_CONFIGA LPQUERY_SERVICE_CONFIG;
278#endif
279
280 typedef VOID (WINAPI *LPSERVICE_MAIN_FUNCTIONW)(DWORD dwNumServicesArgs,LPWSTR *lpServiceArgVectors);
281 typedef VOID (WINAPI *LPSERVICE_MAIN_FUNCTIONA)(DWORD dwNumServicesArgs,LPSTR *lpServiceArgVectors);
282
283#ifdef UNICODE
284#define LPSERVICE_MAIN_FUNCTION LPSERVICE_MAIN_FUNCTIONW
285#else
286#define LPSERVICE_MAIN_FUNCTION LPSERVICE_MAIN_FUNCTIONA
287#endif
288
289 typedef struct _SERVICE_TABLE_ENTRYA {
290 LPSTR lpServiceName;
291 LPSERVICE_MAIN_FUNCTIONA lpServiceProc;
292 } SERVICE_TABLE_ENTRYA,*LPSERVICE_TABLE_ENTRYA;
293
294 typedef struct _SERVICE_TABLE_ENTRYW {
295 LPWSTR lpServiceName;
296 LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
297 } SERVICE_TABLE_ENTRYW,*LPSERVICE_TABLE_ENTRYW;
298
299#ifdef UNICODE
300 typedef SERVICE_TABLE_ENTRYW SERVICE_TABLE_ENTRY;
301 typedef LPSERVICE_TABLE_ENTRYW LPSERVICE_TABLE_ENTRY;
302#else
303 typedef SERVICE_TABLE_ENTRYA SERVICE_TABLE_ENTRY;
304 typedef LPSERVICE_TABLE_ENTRYA LPSERVICE_TABLE_ENTRY;
305#endif
306
307 typedef VOID (WINAPI *LPHANDLER_FUNCTION)(DWORD dwControl);
308 typedef DWORD (WINAPI *LPHANDLER_FUNCTION_EX)(DWORD dwControl,DWORD dwEventType,LPVOID lpEventData,LPVOID lpContext);
309
310#ifdef UNICODE
311#define ChangeServiceConfig ChangeServiceConfigW
312#define ChangeServiceConfig2 ChangeServiceConfig2W
313#define CreateService CreateServiceW
314#define EnumDependentServices EnumDependentServicesW
315#define EnumServicesStatus EnumServicesStatusW
316#define EnumServicesStatusEx EnumServicesStatusExW
317#define GetServiceKeyName GetServiceKeyNameW
318#define GetServiceDisplayName GetServiceDisplayNameW
319#define OpenSCManager OpenSCManagerW
320#define OpenService OpenServiceW
321#define QueryServiceConfig QueryServiceConfigW
322#define QueryServiceConfig2 QueryServiceConfig2W
323#define QueryServiceLockStatus QueryServiceLockStatusW
324#define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerW
325#define RegisterServiceCtrlHandlerEx RegisterServiceCtrlHandlerExW
326#define StartServiceCtrlDispatcher StartServiceCtrlDispatcherW
327#define StartService StartServiceW
328#else
329#define ChangeServiceConfig ChangeServiceConfigA
330#define ChangeServiceConfig2 ChangeServiceConfig2A
331#define CreateService CreateServiceA
332#define EnumDependentServices EnumDependentServicesA
333#define EnumServicesStatus EnumServicesStatusA
334#define EnumServicesStatusEx EnumServicesStatusExA
335#define GetServiceKeyName GetServiceKeyNameA
336#define GetServiceDisplayName GetServiceDisplayNameA
337#define OpenSCManager OpenSCManagerA
338#define OpenService OpenServiceA
339#define QueryServiceConfig QueryServiceConfigA
340#define QueryServiceConfig2 QueryServiceConfig2A
341#define QueryServiceLockStatus QueryServiceLockStatusA
342#define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerA
343#define RegisterServiceCtrlHandlerEx RegisterServiceCtrlHandlerExA
344#define StartServiceCtrlDispatcher StartServiceCtrlDispatcherA
345#define StartService StartServiceA
346#endif
347
348 WINADVAPI WINBOOL WINAPI ChangeServiceConfigA(SC_HANDLE hService,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCSTR lpBinaryPathName,LPCSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCSTR lpDependencies,LPCSTR lpServiceStartName,LPCSTR lpPassword,LPCSTR lpDisplayName);
349 WINADVAPI WINBOOL WINAPI ChangeServiceConfigW(SC_HANDLE hService,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCWSTR lpBinaryPathName,LPCWSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCWSTR lpDependencies,LPCWSTR lpServiceStartName,LPCWSTR lpPassword,LPCWSTR lpDisplayName);
350 WINADVAPI WINBOOL WINAPI ChangeServiceConfig2A(SC_HANDLE hService,DWORD dwInfoLevel,LPVOID lpInfo);
351 WINADVAPI WINBOOL WINAPI ChangeServiceConfig2W(SC_HANDLE hService,DWORD dwInfoLevel,LPVOID lpInfo);
352 WINADVAPI WINBOOL WINAPI CloseServiceHandle(SC_HANDLE hSCObject);
353 WINADVAPI WINBOOL WINAPI ControlService(SC_HANDLE hService,DWORD dwControl,LPSERVICE_STATUS lpServiceStatus);
354 WINADVAPI SC_HANDLE WINAPI CreateServiceA(SC_HANDLE hSCManager,LPCSTR lpServiceName,LPCSTR lpDisplayName,DWORD dwDesiredAccess,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCSTR lpBinaryPathName,LPCSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCSTR lpDependencies,LPCSTR lpServiceStartName,LPCSTR lpPassword);
355 WINADVAPI SC_HANDLE WINAPI CreateServiceW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,LPCWSTR lpDisplayName,DWORD dwDesiredAccess,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCWSTR lpBinaryPathName,LPCWSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCWSTR lpDependencies,LPCWSTR lpServiceStartName,LPCWSTR lpPassword);
356 WINADVAPI WINBOOL WINAPI DeleteService(SC_HANDLE hService);
357 WINADVAPI WINBOOL WINAPI EnumDependentServicesA(SC_HANDLE hService,DWORD dwServiceState,LPENUM_SERVICE_STATUSA lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned);
358 WINADVAPI WINBOOL WINAPI EnumDependentServicesW(SC_HANDLE hService,DWORD dwServiceState,LPENUM_SERVICE_STATUSW lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned);
359 WINADVAPI WINBOOL WINAPI EnumServicesStatusA(SC_HANDLE hSCManager,DWORD dwServiceType,DWORD dwServiceState,LPENUM_SERVICE_STATUSA lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle);
360 WINADVAPI WINBOOL WINAPI EnumServicesStatusW(SC_HANDLE hSCManager,DWORD dwServiceType,DWORD dwServiceState,LPENUM_SERVICE_STATUSW lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle);
361 WINADVAPI WINBOOL WINAPI EnumServicesStatusExA(SC_HANDLE hSCManager,SC_ENUM_TYPE InfoLevel,DWORD dwServiceType,DWORD dwServiceState,LPBYTE lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle,LPCSTR pszGroupName);
362 WINADVAPI WINBOOL WINAPI EnumServicesStatusExW(SC_HANDLE hSCManager,SC_ENUM_TYPE InfoLevel,DWORD dwServiceType,DWORD dwServiceState,LPBYTE lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle,LPCWSTR pszGroupName);
363 WINADVAPI WINBOOL WINAPI GetServiceKeyNameA(SC_HANDLE hSCManager,LPCSTR lpDisplayName,LPSTR lpServiceName,LPDWORD lpcchBuffer);
364 WINADVAPI WINBOOL WINAPI GetServiceKeyNameW(SC_HANDLE hSCManager,LPCWSTR lpDisplayName,LPWSTR lpServiceName,LPDWORD lpcchBuffer);
365 WINADVAPI WINBOOL WINAPI GetServiceDisplayNameA(SC_HANDLE hSCManager,LPCSTR lpServiceName,LPSTR lpDisplayName,LPDWORD lpcchBuffer);
366 WINADVAPI WINBOOL WINAPI GetServiceDisplayNameW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,LPWSTR lpDisplayName,LPDWORD lpcchBuffer);
367 WINADVAPI SC_LOCK WINAPI LockServiceDatabase(SC_HANDLE hSCManager);
368 WINADVAPI WINBOOL WINAPI NotifyBootConfigStatus(WINBOOL BootAcceptable);
369 WINADVAPI SC_HANDLE WINAPI OpenSCManagerA(LPCSTR lpMachineName,LPCSTR lpDatabaseName,DWORD dwDesiredAccess);
370 WINADVAPI SC_HANDLE WINAPI OpenSCManagerW(LPCWSTR lpMachineName,LPCWSTR lpDatabaseName,DWORD dwDesiredAccess);
371 WINADVAPI SC_HANDLE WINAPI OpenServiceA(SC_HANDLE hSCManager,LPCSTR lpServiceName,DWORD dwDesiredAccess);
372 WINADVAPI SC_HANDLE WINAPI OpenServiceW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,DWORD dwDesiredAccess);
373 WINADVAPI WINBOOL WINAPI QueryServiceConfigA(SC_HANDLE hService,LPQUERY_SERVICE_CONFIGA lpServiceConfig,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
374 WINADVAPI WINBOOL WINAPI QueryServiceConfigW(SC_HANDLE hService,LPQUERY_SERVICE_CONFIGW lpServiceConfig,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
375 WINADVAPI WINBOOL WINAPI QueryServiceConfig2A(SC_HANDLE hService,DWORD dwInfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
376 WINADVAPI WINBOOL WINAPI QueryServiceConfig2W(SC_HANDLE hService,DWORD dwInfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
377 WINADVAPI WINBOOL WINAPI QueryServiceLockStatusA(SC_HANDLE hSCManager,LPQUERY_SERVICE_LOCK_STATUSA lpLockStatus,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
378 WINADVAPI WINBOOL WINAPI QueryServiceLockStatusW(SC_HANDLE hSCManager,LPQUERY_SERVICE_LOCK_STATUSW lpLockStatus,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
379 WINADVAPI WINBOOL WINAPI QueryServiceObjectSecurity(SC_HANDLE hService,SECURITY_INFORMATION dwSecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
380 WINADVAPI WINBOOL WINAPI QueryServiceStatus(SC_HANDLE hService,LPSERVICE_STATUS lpServiceStatus);
381 WINADVAPI WINBOOL WINAPI QueryServiceStatusEx(SC_HANDLE hService,SC_STATUS_TYPE InfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
382 WINADVAPI SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerA(LPCSTR lpServiceName,LPHANDLER_FUNCTION lpHandlerProc);
383 WINADVAPI SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerW(LPCWSTR lpServiceName,LPHANDLER_FUNCTION lpHandlerProc);
384 WINADVAPI SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExA(LPCSTR lpServiceName,LPHANDLER_FUNCTION_EX lpHandlerProc,LPVOID lpContext);
385 WINADVAPI SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExW(LPCWSTR lpServiceName,LPHANDLER_FUNCTION_EX lpHandlerProc,LPVOID lpContext);
386 WINADVAPI WINBOOL WINAPI SetServiceObjectSecurity(SC_HANDLE hService,SECURITY_INFORMATION dwSecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor);
387 WINADVAPI WINBOOL WINAPI SetServiceStatus(SERVICE_STATUS_HANDLE hServiceStatus,LPSERVICE_STATUS lpServiceStatus);
388 WINADVAPI WINBOOL WINAPI StartServiceCtrlDispatcherA(CONST SERVICE_TABLE_ENTRYA *lpServiceStartTable);
389 WINADVAPI WINBOOL WINAPI StartServiceCtrlDispatcherW(CONST SERVICE_TABLE_ENTRYW *lpServiceStartTable);
390 WINADVAPI WINBOOL WINAPI StartServiceA(SC_HANDLE hService,DWORD dwNumServiceArgs,LPCSTR *lpServiceArgVectors);
391 WINADVAPI WINBOOL WINAPI StartServiceW(SC_HANDLE hService,DWORD dwNumServiceArgs,LPCWSTR *lpServiceArgVectors);
392 WINADVAPI WINBOOL WINAPI UnlockServiceDatabase(SC_LOCK ScLock);
393
394#ifdef __cplusplus
395}
396#endif
397#endif

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t