* include/shobjidl.h (_mingw.h): Include.
* include/shlwapi.h: Ditto.
* include/snmp.h: Ditto.
* include/specstrings.h: Ditto.
* include/sql.h: Ditto.
* include/sqlext.h: Ditto.
* include/sqltypes.h: Ditto.
* include/sqlucode.h: Ditto.
* include/sspi.h: Ditto.
* include/stm.h: Ditto.
* include/strings.h: Ditto.
* include/strmif.h: Ditto.
* include/subauth.h: Ditto.
* include/svcguid.h: Ditto.
* include/tchar.h: Ditto.
* include/tlhelp32.h: Ditto.
* include/tmschema.h: Ditto.
* include/unistd.h: Ditto.
* include/unknwn.h: Ditto.
* include/userenv.h: Ditto.
* include/usp10.h: Ditto.
* include/utime.h: Ditto.
* include/uxtheme.h: Ditto.
* include/values.h: Ditto.
* include/vfw.h: Ditto.
* include/vidcap.h: Ditto.
* include/vmr9.h: Ditto.
* include/vptype.h: Ditto.
* include/wtypes.h: Ditto.
* include/winable.h: Ditto.
* include/winbase.h: Ditto.
* include/winber.h: Ditto.
* include/wincon.h: Ditto.
* include/wincrypt.h: Ditto.
* include/windef.h: Ditto.
* include/windns.h: Ditto.
* include/windows.h: Ditto.
* include/windowsx.h: Ditto.
* include/winerror.h: Ditto.
* include/wingdi.h: Ditto.
* include/wininet.h: Ditto.
* include/winioctl.h: Ditto.
* include/winldap.h: Ditto.
* include/winnetwk.h: Ditto.
* include/winnls.h: Ditto.
* include/winnt.h: Ditto.
* include/winperf.h: Ditto.
* include/winreg.h: Ditto.
* include/winresrc.h: Ditto.
* include/winsnmp.h: Ditto.
* include/winsock.h: Ditto.
* include/winsock2.h: Ditto.
* include/winspool.h: Ditto.
* include/winsvc.h: Ditto.
* include/winuser.h: Ditto.
* include/winver.h: Ditto.
* include/ws2spi.h: Ditto.
* include/ws2tcpip.h: Ditto.
* include/wsahelp.h: Ditto.
* include/wsipx.h: Ditto.
* include/wsnetbs.h: Ditto.
* include/wtsapi32.h: Ditto.
* include/xprtdefs.h: Ditto.
* include/zmouse.h: Ditto.
* include/signal.h (_mingw.h): Remove comment and move to top of file.
* include/stdint.h: Ditto.
* include/stdio.h: Ditto.
* include/stdlib.h: Ditto.
* include/string.h: Ditto.
* include/time.h: Ditto.
* include/wchar.h: Ditto.
* include/wctype.h: Ditto.
* include/shlwapi.h (UNICODE): Use __AW() macro for mapping
non-specific symbols.
* include/sspi.h: Ditto.
* include/userenv.h: Ditto.
* include/vfw.h: Ditto.
* include/winbase.h: Ditto.
* include/wincon.h: Ditto.
* include/wincrypt.h: Ditto.
* include/windns.h: Ditto.
* include/wingdi.h: Ditto.
* include/wininet.h: Ditto.
* include/winldap.h: Ditto.
* include/winnetwk.h: Ditto.
* include/winnls.h: Ditto.
* include/winreg.h: Ditto.
* include/winsock2.h: Ditto.
* include/winspool.h: Ditto.
* include/winsvc.h: Ditto.
* include/winuser.h: Ditto.
* include/winver.h: Ditto.
* include/ws2tcpip.h: Ditto.
* include/stm.h (_WIN32_WINNT): Use MACRO constant for comparison
instead of integer and move filters to the end of the file.
* include/userenv.h: Ditto.
* include/winbase.h: Ditto.
* include/wincon.h: Ditto.
* include/wincrypt.h: Ditto.
* include/wingdi.h: Ditto.
* include/winnls.h: Ditto.
* include/winnt.h: Ditto.
* include/winreg.h: Ditto.
* include/winspool.h: Ditto.
* include/winuser.h: Ditto.
* include/ws2tcpip.h: Ditto.
* include/shlwapi.h (_OBJC_NO_COM): Move filters to the end of the file.
* include/stdlib.h (_UWIN): Remove filter since we assume only GCC.
* include/string.h: Ditto.
* include/stdio.h (__GNUC__): Remove filter since we assume only GCC.
* include/stdio.h (__MSVCRT_VERSION__): Remove needless filter.
* include/stdlib.h: Ditto.
* include/string.h: Ditto.
* include/tchar.h: Ditto.
* include/time.h: Ditto.
* include/wchar.h: Ditto.
* include/wctype.h: Ditto.
* include/winbase.h (_WIN32_WINDOWS): Use _WIN32_WINNT instead.
* include/wingdi.h: Ditto.
* include/winuser.h: Ditto.
* include/wincrypt.h (WINVER): Use _WIN32_WINNT instead.
* include/wingdi.h: Ditto.
* include/winnls.h: Ditto.
* include/winreg.h: Ditto.
* include/winuser.h: Dittol
* include/_mingw.h (__TEST_SQL_NOUNICODEMAP): Use to determine if
UNICODE should be considered.
(_ODBCINST_H): Changed to use __TEST_SQL_NOUNICODEMAP.
* include/odbcinst.h (__TEST_SQL_NOUNICODEMAP): Define before including
_mingw.h.
* include/sqlucode.h: Ditto.
* include/time.h (time_t): Logic fix for filters.
* (__time64_t): Remove the __STRICT_ANSI__ guard.
* include/winable.h: This file is deprecated by Microsoft due to
winuser.h containing all of the functionality of winable.h; therefore
issue a warning and include winuser.h.
* include/windows.h (Win32_Winsock): Remove filter logic and warning.
(winsock2.h): Do not include as doing so is not Microsoft compatible.
To use winsock2.h you need to include it instead of windows.h.
(__USE_W32_SOCKETS): Add a comment that it is __CYGWIN__ specific.
* include/winsock.h (_WIN32_WINNT_WIN95): Give a warning if winsock.h
is included for Windows versions greater than WIN95.
* include/winuser.h (MB_SERVICE_NOTIFICATION): We assume WIN95 or
greater so define based on this assumption.
(MB_SERVICE_NOTIFICATION_NT3X): Ditto.
(SM_CMETRICS): Ditto.
(MOUSEEVENTF_WHEEL): Ditto.
(ENDSESSION_LOGOFF): Ditto.
* TODO: Add entries.
+2012-09-18 Earnie Boyd <earnie@users.sourceforge.net>
+
+ Redo the filters based on assumptions discussed in mingw-dvlpr list.
+
+ * include/shobjidl.h (_mingw.h): Include.
+ * include/shlwapi.h: Ditto.
+ * include/snmp.h: Ditto.
+ * include/specstrings.h: Ditto.
+ * include/sql.h: Ditto.
+ * include/sqlext.h: Ditto.
+ * include/sqltypes.h: Ditto.
+ * include/sqlucode.h: Ditto.
+ * include/sspi.h: Ditto.
+ * include/stm.h: Ditto.
+ * include/strings.h: Ditto.
+ * include/strmif.h: Ditto.
+ * include/subauth.h: Ditto.
+ * include/svcguid.h: Ditto.
+ * include/tchar.h: Ditto.
+ * include/tlhelp32.h: Ditto.
+ * include/tmschema.h: Ditto.
+ * include/unistd.h: Ditto.
+ * include/unknwn.h: Ditto.
+ * include/userenv.h: Ditto.
+ * include/usp10.h: Ditto.
+ * include/utime.h: Ditto.
+ * include/uxtheme.h: Ditto.
+ * include/values.h: Ditto.
+ * include/vfw.h: Ditto.
+ * include/vidcap.h: Ditto.
+ * include/vmr9.h: Ditto.
+ * include/vptype.h: Ditto.
+ * include/wtypes.h: Ditto.
+ * include/winable.h: Ditto.
+ * include/winbase.h: Ditto.
+ * include/winber.h: Ditto.
+ * include/wincon.h: Ditto.
+ * include/wincrypt.h: Ditto.
+ * include/windef.h: Ditto.
+ * include/windns.h: Ditto.
+ * include/windows.h: Ditto.
+ * include/windowsx.h: Ditto.
+ * include/winerror.h: Ditto.
+ * include/wingdi.h: Ditto.
+ * include/wininet.h: Ditto.
+ * include/winioctl.h: Ditto.
+ * include/winldap.h: Ditto.
+ * include/winnetwk.h: Ditto.
+ * include/winnls.h: Ditto.
+ * include/winnt.h: Ditto.
+ * include/winperf.h: Ditto.
+ * include/winreg.h: Ditto.
+ * include/winresrc.h: Ditto.
+ * include/winsnmp.h: Ditto.
+ * include/winsock.h: Ditto.
+ * include/winsock2.h: Ditto.
+ * include/winspool.h: Ditto.
+ * include/winsvc.h: Ditto.
+ * include/winuser.h: Ditto.
+ * include/winver.h: Ditto.
+ * include/ws2spi.h: Ditto.
+ * include/ws2tcpip.h: Ditto.
+ * include/wsahelp.h: Ditto.
+ * include/wsipx.h: Ditto.
+ * include/wsnetbs.h: Ditto.
+ * include/wtsapi32.h: Ditto.
+ * include/xprtdefs.h: Ditto.
+ * include/zmouse.h: Ditto.
+
+ * include/signal.h (_mingw.h): Remove comment and move to top of file.
+ * include/stdint.h: Ditto.
+ * include/stdio.h: Ditto.
+ * include/stdlib.h: Ditto.
+ * include/string.h: Ditto.
+ * include/time.h: Ditto.
+ * include/wchar.h: Ditto.
+ * include/wctype.h: Ditto.
+
+ * include/shlwapi.h (UNICODE): Use __AW() macro for mapping
+ non-specific symbols.
+ * include/sspi.h: Ditto.
+ * include/userenv.h: Ditto.
+ * include/vfw.h: Ditto.
+ * include/winbase.h: Ditto.
+ * include/wincon.h: Ditto.
+ * include/wincrypt.h: Ditto.
+ * include/windns.h: Ditto.
+ * include/wingdi.h: Ditto.
+ * include/wininet.h: Ditto.
+ * include/winldap.h: Ditto.
+ * include/winnetwk.h: Ditto.
+ * include/winnls.h: Ditto.
+ * include/winreg.h: Ditto.
+ * include/winsock2.h: Ditto.
+ * include/winspool.h: Ditto.
+ * include/winsvc.h: Ditto.
+ * include/winuser.h: Ditto.
+ * include/winver.h: Ditto.
+ * include/ws2tcpip.h: Ditto.
+
+ * include/stm.h (_WIN32_WINNT): Use MACRO constant for comparison
+ instead of integer and move filters to the end of the file.
+ * include/userenv.h: Ditto.
+ * include/winbase.h: Ditto.
+ * include/wincon.h: Ditto.
+ * include/wincrypt.h: Ditto.
+ * include/wingdi.h: Ditto.
+ * include/winnls.h: Ditto.
+ * include/winnt.h: Ditto.
+ * include/winreg.h: Ditto.
+ * include/winspool.h: Ditto.
+ * include/winuser.h: Ditto.
+ * include/ws2tcpip.h: Ditto.
+
+ * include/shlwapi.h (_OBJC_NO_COM): Move filters to the end of the file.
+
+ * include/stdlib.h (_UWIN): Remove filter since we assume only GCC.
+ * include/string.h: Ditto.
+
+ * include/stdio.h (__GNUC__): Remove filter since we assume only GCC.
+
+ * include/stdio.h (__MSVCRT_VERSION__): Remove needless filter.
+ * include/stdlib.h: Ditto.
+ * include/string.h: Ditto.
+ * include/tchar.h: Ditto.
+ * include/time.h: Ditto.
+ * include/wchar.h: Ditto.
+ * include/wctype.h: Ditto.
+
+ * include/winbase.h (_WIN32_WINDOWS): Use _WIN32_WINNT instead.
+ * include/wingdi.h: Ditto.
+ * include/winuser.h: Ditto.
+
+ * include/wincrypt.h (WINVER): Use _WIN32_WINNT instead.
+ * include/wingdi.h: Ditto.
+ * include/winnls.h: Ditto.
+ * include/winreg.h: Ditto.
+ * include/winuser.h: Dittol
+
+ * include/_mingw.h (__TEST_SQL_NOUNICODEMAP): Use to determine if
+ UNICODE should be considered.
+ (_ODBCINST_H): Changed to use __TEST_SQL_NOUNICODEMAP.
+ * include/odbcinst.h (__TEST_SQL_NOUNICODEMAP): Define before including
+ _mingw.h.
+ * include/sqlucode.h: Ditto.
+
+ * include/time.h (time_t): Logic fix for filters.
+ * (__time64_t): Remove the __STRICT_ANSI__ guard.
+
+ * include/winable.h: This file is deprecated by Microsoft due to
+ winuser.h containing all of the functionality of winable.h; therefore
+ issue a warning and include winuser.h.
+
+ * include/windows.h (Win32_Winsock): Remove filter logic and warning.
+ (winsock2.h): Do not include as doing so is not Microsoft compatible.
+ To use winsock2.h you need to include it instead of windows.h.
+ (__USE_W32_SOCKETS): Add a comment that it is __CYGWIN__ specific.
+
+ * include/winsock.h (_WIN32_WINNT_WIN95): Give a warning if winsock.h
+ is included for Windows versions greater than WIN95.
+
+ * include/winuser.h (MB_SERVICE_NOTIFICATION): We assume WIN95 or
+ greater so define based on this assumption.
+ (MB_SERVICE_NOTIFICATION_NT3X): Ditto.
+ (SM_CMETRICS): Ditto.
+ (MOUSEEVENTF_WHEEL): Ditto.
+ (ENDSESSION_LOGOFF): Ditto.
+
+ * TODO: Add entries.
+
2012-09-13 Earnie Boyd <earnie@users.sourceforge.net>
Redo the filters based on assumptions discussed in mingw-dvlpr list.
** setupapi.h - _SETUPAPI_VER???, USE_SP_DRVINFO_DATA_V1
** shldisp.h - COBJMACROS
** shlobj.h - COBJMACROS, _FIX_ENABLEMODELESS_CONFLICT
+** shlwapi.h - _OBJC_NO_COM
+** sql.h - ODBCVER
+** sqlext.h - ODBCVER, ODBC_STD
+** sqltypes.h - ODBCVER
+** stdio.h - _POSIX_SOURCE, __NO_ISOCEXT, __USE_MINGW_ANSI_STDIO, _MT,
+ __USE_MINGW_FSEEK, __NO_INLINE__
+** stdlib.h - __NO_ISOCEXT, __NO_INLINE__
+** tchar.h - wmain, wWinMain, _wenviron and __wargv - implmentation?
+** time.h - _USE_32BIT_TIME_T
+ _time32(), etc - should these always be defined?
+** unistd.h - __NO_ISOCEXT
+** unknwn.h - COM_NO_WINDOWS_H, CINTERFACE, COBJMACROS
+** values.h - ?? is it needed?
+** varargs.h - ?? can it be removed?
+** vfw.h - _OBJC_NO_COM, OFN_READONLY
+** vmr9.h - VMR9VideoStreamInfo, VMR9AlphaBitmap, VMR9PresentationInfo,
+ VMR9AllocationInfo
+** wtypes.h - NONAMELESSUNION
+** wchar.h - __NO_ISOCEXT, _USE_32BIT_TIME_T - Make sure the time structures
+ are defined correctly.
+** winbase.h - __W32API_USE_DLLIMPORT__, UNDER_CE, _WIN32_CE
+ EXECUTION_STATE - should be defined in WinNT.
+ Check the UNICODE mapping.
+** wincrypt.h - CERT_CHAIN_PARA_HAS_EXTRA_FIELDS
+** windef.h - WINVER, _WIN32_WINNT - remove default settings due to sdkddkver.h.
+ _NO_W32_PSEUDO_MODIFIERS, NOMINMAX, NONAMELESSUNION, NO_STRICT
+** windows.h - __USE_W32_SOCKETS, __OBJC__
+ wincrypt.h, winefs.h, winscard.h (need to add with NOCRYPT guard)
+** wingdi.h - _WIN32_CE, __W32API_USE_DLLIMPORT__
+** winnls.h - __W32API_USE_DLLIMPORT__
+ Commented out symbols for VISTA.
+** winnt.h: FIXME
+ Move target maps to separate file.
+ __TEXT() move definition to _mingw.h and get rid of __STR() in
+ mingw.h.
+** winsock2.h: _GNU_H_WINDOWS32_SOCKETS, __W32API_USE_DLLIMPORT__
+** winuser.h: __W32API_USE_DLLIMPORT__
+** ws2tcpip.h: GetNameInfoW - Add declaration.
+** wspiapi.h: Add file.
*/
#define __AW__(AW, AW_) AW ## AW_
#if ( \
- (!defined(_ODBCINST_H) && defined(UNICODE)) || \
- (!defined(_ODBCINST_H) && defined(_UNICODE)) || \
- defined(FORCE_UNICODE) \
- (defined _ODBCINST_H && !defined(SQL_NOUNICODEMAP) && defined(UNICODE)) \
+ (!defined(__TEST_SQL_NOUNICODEMAP) && defined(UNICODE)) || \
+ (!defined(__TEST_SQL_NOUNICODEMAP) && defined(_UNICODE)) || \
+ defined(FORCE_UNICODE) || \
+ (defined(__TEST_SQL_NOUNICODEMAP) && !defined(SQL_NOUNICODEMAP) && (defined(UNICODE) || defined(_UNICODE))) \
)
#define __AW(AW) __AW__(AW, W)
#define __STR(AW) __AW__(L, AW)
#ifndef _ODBCINST_H
#define _ODBCINST_H
#pragma GCC system_header
+#define __TEST_SQL_NOUNICODEMAP
#include <_mingw.h>
#include <sql.h>
#ifndef _SHLWAPI_H
#define _SHLWAPI_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
WINSHLWAPI LPWSTR WINAPI StrRChrW(LPCWSTR,LPCWSTR,WCHAR);
WINSHLWAPI LPSTR WINAPI StrRChrIA(LPCSTR,LPCSTR,WORD);
WINSHLWAPI LPWSTR WINAPI StrRChrIW(LPCWSTR,LPCWSTR,WCHAR);
-#ifndef _OBJC_NO_COM
-WINSHLWAPI HRESULT WINAPI StrRetToBufA(LPSTRRET,LPCITEMIDLIST,LPSTR,UINT);
-WINSHLWAPI HRESULT WINAPI StrRetToBufW(LPSTRRET,LPCITEMIDLIST,LPWSTR,UINT);
-WINSHLWAPI HRESULT WINAPI StrRetToStrA(LPSTRRET,LPCITEMIDLIST,LPSTR*);
-WINSHLWAPI HRESULT WINAPI StrRetToStrW(LPSTRRET,LPCITEMIDLIST,LPWSTR*);
-#endif
+
WINSHLWAPI LPSTR WINAPI StrRStrIA(LPCSTR,LPCSTR,LPCSTR);
WINSHLWAPI LPWSTR WINAPI StrRStrIW(LPCWSTR,LPCWSTR,LPCWSTR);
WINSHLWAPI int WINAPI StrSpnA(LPCSTR,LPCSTR);
WINSHLWAPI void WINAPI PathUnquoteSpacesA(LPSTR);
WINSHLWAPI void WINAPI PathUnquoteSpacesW(LPWSTR);
WINSHLWAPI HRESULT WINAPI SHAutoComplete(HWND,DWORD);
-#ifndef _OBJC_NO_COM
-WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileA(LPCSTR,DWORD,struct IStream**);
-WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileW(LPCWSTR,DWORD,struct IStream**);
-WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2A(HKEY,LPCSTR,LPCSTR,DWORD);
-WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2W(HKEY,LPCWSTR,LPCWSTR,DWORD);
-WINSHLWAPI struct IStream* WINAPI SHOpenRegStreamA(HKEY,LPCSTR,LPCSTR,DWORD);
-WINSHLWAPI struct IStream* WINAPI SHOpenRegStreamW(HKEY,LPCWSTR,LPCWSTR,DWORD);
-#endif
+
WINSHLWAPI BOOL WINAPI SHCreateThread(LPTHREAD_START_ROUTINE,void*,DWORD,LPTHREAD_START_ROUTINE);
WINSHLWAPI DWORD WINAPI SHCopyKeyA(HKEY,LPCSTR,HKEY,DWORD);
WINSHLWAPI DWORD WINAPI SHCopyKeyW(HKEY,LPCWSTR,HKEY,DWORD);
WINSHLWAPI DWORD WINAPI SHQueryInfoKeyW(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
WINSHLWAPI DWORD WINAPI SHQueryValueExA(HKEY,LPCSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
WINSHLWAPI DWORD WINAPI SHQueryValueExW(HKEY,LPCWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
-#ifndef _OBJC_NO_COM
-WINSHLWAPI HRESULT WINAPI SHGetThreadRef(IUnknown**);
-WINSHLWAPI HRESULT WINAPI SHSetThreadRef(IUnknown*);
-WINSHLWAPI BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*);
-#endif
+
WINSHLWAPI DWORD WINAPI SHEnumValueA(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
WINSHLWAPI DWORD WINAPI SHEnumValueW(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
WINSHLWAPI DWORD WINAPI SHGetValueA(HKEY,LPCSTR,LPCSTR,LPDWORD,LPVOID,LPDWORD);
HRESULT WINAPI DllInstall(BOOL,LPCWSTR);
-#ifdef UNICODE
-#define ChrCmpI ChrCmpIW
-#define IntlStrEqN IntlStrEqNW
-#define IntlStrEqNI IntlStrEqNIW
-#define IntlStrEqWorker IntlStrEqWorkerW
-#define SHStrDup SHStrDupW
-#define StrCat StrCatW
-#define StrCatBuff StrCatBuffW
-#define StrChr StrChrW
-#define StrChrI StrChrIW
-#define StrCmp StrCmpW
-#define StrCmpI StrCmpIW
-#define StrCmpNI StrCmpNIW
-#define StrCmpN StrCmpNW
-#define StrCpyN StrCpyNW
-#define StrCpy StrCpyW
-#define StrCSpnI StrCSpnIW
-#define StrCSpn StrCSpnW
-#define StrDup StrDupW
-#define StrFormatByteSize StrFormatByteSizeW
-#define StrFormatKBSize StrFormatKBSizeW
+#define ChrCmpI __AW(ChrCmpI)
+#define IntlStrEqN __AW(IntlStrEqN)
+#define IntlStrEqNI __AW(IntlStrEqNI)
+#define IntlStrEqWorker __AW(IntlStrEqWorker)
+#define SHStrDup __AW(SHStrDup)
+#define StrCat __AW(StrCat)
+#define StrCatBuff __AW(StrCatBuff)
+#define StrChr __AW(StrChr)
+#define StrChrI __AW(StrChrI)
+#define StrCmp __AW(StrCmp)
+#define StrCmpI __AW(StrCmpI)
+#define StrCmpNI __AW(StrCmpNI)
+#define StrCmpN __AW(StrCmpN)
+#define StrCpyN __AW(StrCpyN)
+#define StrCpy __AW(StrCpy)
+#define StrCSpnI __AW(StrCSpnI)
+#define StrCSpn __AW(StrCSpn)
+#define StrDup __AW(StrDup)
+#define StrFormatByteSize __AW(StrFormatByteSize)
+#define StrFormatKBSize __AW(StrFormatKBSize)
#define StrFromTimeInterval StrFromTimeIntervalW
#define StrIsIntlEqual StrIsIntlEqualW
-#define StrNCat StrNCatW
-#define StrPBrk StrPBrkW
-#define StrRChr StrRChrW
-#define StrRChrI StrRChrIW
-#ifndef _OBJC_NO_COM
-#define StrRetToBuf StrRetToBufW
-#define StrRetToStr StrRetToStrW
-#endif
-#define StrRStrI StrRStrIW
-#define StrSpn StrSpnW
-#define StrStrI StrStrIW
-#define StrStr StrStrW
-#define StrToInt StrToIntW
-#define StrToIntEx StrToIntExW
-#define StrTrim StrTrimW
-#define PathAddBackslash PathAddBackslashW
-#define PathAddExtension PathAddExtensionW
-#define PathAppend PathAppendW
-#define PathBuildRoot PathBuildRootW
-#define PathCanonicalize PathCanonicalizeW
-#define PathCombine PathCombineW
-#define PathCommonPrefix PathCommonPrefixW
-#define PathCompactPath PathCompactPathW
-#define PathCompactPathEx PathCompactPathExW
-#define PathCreateFromUrl PathCreateFromUrlW
-#define PathFileExists PathFileExistsW
-#define PathFindExtension PathFindExtensionW
-#define PathFindFileName PathFindFileNameW
+#define StrNCat __AW(StrNCat)
+#define StrPBrk __AW(StrPBrk)
+#define StrRChr __AW(StrRChr)
+#define StrRChrI __AW(StrRChrI)
+
+#define StrRStrI __AW(StrRStrI)
+#define StrSpn __AW(StrSpn)
+#define StrStrI __AW(StrStrI)
+#define StrStr __AW(StrStr)
+#define StrToInt __AW(StrToInt)
+#define StrToIntEx __AW(StrToIntEx)
+#define StrTrim __AW(StrTrim)
+#define PathAddBackslash __AW(PathAddBackslash)
+#define PathAddExtension __AW(PathAddExtension)
+#define PathAppend __AW(PathAppend)
+#define PathBuildRoot __AW(PathBuildRoot)
+#define PathCanonicalize __AW(PathCanonicalize)
+#define PathCombine __AW(PathCombine)
+#define PathCommonPrefix __AW(PathCommonPrefix)
+#define PathCompactPath __AW(PathCompactPath)
+#define PathCompactPathEx __AW(PathCompactPathEx)
+#define PathCreateFromUrl __AW(PathCreateFromUrl)
+#define PathFileExists __AW(PathFileExists)
+#define PathFindExtension __AW(PathFindExtension)
+#define PathFindFileName __AW(PathFindFileName)
#define PathFindNextComponent PathFindNextComponentW
-#define PathFindOnPath PathFindOnPathW
-#define PathFindSuffixArray PathFindSuffixArrayW
-#define PathGetArgs PathGetArgsW
-#define PathGetCharType PathGetCharTypeW
-#define PathGetDriveNumber PathGetDriveNumberW
-#define PathIsContentType PathIsContentTypeW
-#define PathIsDirectoryEmpty PathIsDirectoryEmptyW
-#define PathIsDirectory PathIsDirectoryW
-#define PathIsFileSpec PathIsFileSpecW
-#define PathIsLFNFileSpec PathIsLFNFileSpecW
-#define PathIsNetworkPath PathIsNetworkPathW
-#define PathIsPrefix PathIsPrefixW
-#define PathIsRelative PathIsRelativeW
-#define PathIsRoot PathIsRootW
-#define PathIsSameRoot PathIsSameRootW
-#define PathIsSystemFolder PathIsSystemFolderW
-#define PathIsUNCServerShare PathIsUNCServerShareW
-#define PathIsUNCServer PathIsUNCServerW
-#define PathIsUNC PathIsUNCW
-#define PathIsURL PathIsURLW
-#define PathMakePretty PathMakePrettyW
-#define PathMakeSystemFolder PathMakeSystemFolderW
-#define PathMatchSpec PathMatchSpecW
-#define PathParseIconLocation PathParseIconLocationW
-#define PathQuoteSpaces PathQuoteSpacesW
-#define PathRelativePathTo PathRelativePathToW
-#define PathRemoveArgs PathRemoveArgsW
-#define PathRemoveBackslash PathRemoveBackslashW
-#define PathRemoveBlanks PathRemoveBlanksW
-#define PathRemoveExtension PathRemoveExtensionW
-#define PathRemoveFileSpec PathRemoveFileSpecW
-#define PathRenameExtension PathRenameExtensionW
-#define PathSearchAndQualify PathSearchAndQualifyW
-#define PathSetDlgItemPath PathSetDlgItemPathW
-#define PathSkipRoot PathSkipRootW
-#define PathStripPath PathStripPathW
-#define PathStripToRoot PathStripToRootW
-#define PathUndecorate PathUndecorateW
-#define PathUnExpandEnvStrings PathUnExpandEnvStringsW
-#define PathUnmakeSystemFolder PathUnmakeSystemFolderW
-#define PathUnquoteSpaces PathUnquoteSpacesW
-#ifndef _OBJC_NO_COM
-#define SHCreateStreamOnFile SHCreateStreamOnFileW
-#define SHOpenRegStream SHOpenRegStreamW
-#define SHOpenRegStream2 SHOpenRegStream2W
-#endif
-#define SHCopyKey SHCopyKeyW
-#define SHDeleteEmptyKey SHDeleteEmptyKeyW
-#define SHDeleteKey SHDeleteKeyW
-#define SHEnumKeyEx SHEnumKeyExW
-#define SHQueryInfoKey SHRegQueryInfoKeyW
-#define SHQueryValueEx SHQueryValueExW
-#define SHEnumValue SHEnumValueW
-#define SHGetValue SHGetValueW
-#define SHSetValue SHSetValueW
-#define SHDeleteValue SHDeleteValueW
-#define AssocQueryKey AssocQueryKeyW
-#define AssocQueryStringByKey AssocQueryStringByKeyW
-#define AssocQueryString AssocQueryStringW
-#define UrlApplyScheme UrlApplySchemeW
-#define UrlCanonicalize UrlCanonicalizeW
-#define UrlCombine UrlCombineW
-#define UrlCompare UrlCompareW
-#define UrlCreateFromPath UrlCreateFromPathW
-#define UrlEscape UrlEscapeW
-#define UrlGetLocation UrlGetLocationW
-#define UrlGetPart UrlGetPartW
-#define UrlHash UrlHashW
-#define UrlIs UrlIsW
-#define UrlIsFileUrl UrlIsFileUrlW
-#define UrlIsNoHistory UrlIsNoHistoryW
-#define UrlIsOpaque UrlIsOpaqueW
-#define UrlUnescape UrlUnescapeW
-#define UrlUnescapeInPlace UrlUnescapeInPlaceW
-#define SHRegCreateUSKey SHRegCreateUSKeyW
-#define SHRegDeleteEmptyUSKey SHRegDeleteEmptyUSKeyW
-#define SHRegDeleteUSValue SHRegDeleteUSValueW
-#define SHRegEnumUSKey SHRegEnumUSKeyW
-#define SHRegEnumUSValue SHRegEnumUSValueW
-#define SHRegGetBoolUSValue SHRegGetBoolUSValueW
-#define SHRegGetPath SHRegGetPathW
-#define SHRegGetUSValue SHRegGetUSValueW
-#define SHRegOpenUSKey SHRegOpenUSKeyW
-#define SHRegQueryInfoUSKey SHRegQueryInfoUSKeyW
-#define SHRegQueryUSValue SHRegQueryUSValueW
-#define SHRegSetPath SHRegSetPathW
-#define SHRegSetUSValue SHRegSetUSValueW
-#define SHRegWriteUSValue SHRegWriteUSValueW
-#define wnsprintf wnsprintfW
-#define wvnsprintf wvnsprintfW
-#else /* UNICODE */
-#define ChrCmpI ChrCmpIA
-#define IntlStrEqN IntlStrEqNA
-#define IntlStrEqNI IntlStrEqNIA
-#define IntlStrEqWorker IntlStrEqWorkerA
-#define SHStrDup SHStrDupA
-#define StrCat lstrcatA
-#define StrCatBuff StrCatBuffA
-#define StrChr StrChrA
-#define StrChrI StrChrIA
-#define StrCmp lstrcmpA
-#define StrCmpI lstrcmpiA
-#define StrCmpNI StrCmpNIA
-#define StrCmpN StrCmpNA
-#define StrCpyN lstrcpynA
-#define StrCpy lstrcpyA
-#define StrCSpnI StrCSpnIA
-#define StrCSpn StrCSpnA
-#define StrDup StrDupA
-#define StrFormatByteSize StrFormatByteSizeA
-#define StrFormatKBSize StrFormatKBSizeA
-#define StrFromTimeInterval StrFromTimeIntervalA
-#define StrIsIntlEqual StrIsIntlEqualA
-#define StrNCat StrNCatA
-#define StrPBrk StrPBrkA
-#define StrRChr StrRChrA
-#define StrRChrI StrRChrIA
-#ifndef _OBJC_NO_COM
-#define StrRetToBuf StrRetToBufA
-#define StrRetToStr StrRetToStrA
-#endif
-#define StrRStrI StrRStrIA
-#define StrSpn StrSpnA
-#define StrStrI StrStrIA
-#define StrStr StrStrA
-#define StrToInt StrToIntA
-#define StrToIntEx StrToIntExA
-#define StrTrim StrTrimA
-#define PathAddBackslash PathAddBackslashA
-#define PathAddExtension PathAddExtensionA
-#define PathAppend PathAppendA
-#define PathBuildRoot PathBuildRootA
-#define PathCanonicalize PathCanonicalizeA
-#define PathCombine PathCombineA
-#define PathCommonPrefix PathCommonPrefixA
-#define PathCompactPath PathCompactPathA
-#define PathCompactPathEx PathCompactPathExA
-#define PathCreateFromUrl PathCreateFromUrlA
-#define PathFileExists PathFileExistsA
-#define PathFindExtension PathFindExtensionA
-#define PathFindFileName PathFindFileNameA
-#define PathFindNextComponent PathFindNextComponentA
-#define PathFindOnPath PathFindOnPathA
-#define PathFindSuffixArray PathFindSuffixArrayA
-#define PathGetArgs PathGetArgsA
-#define PathGetCharType PathGetCharTypeA
-#define PathGetDriveNumber PathGetDriveNumberA
-#define PathIsContentType PathIsContentTypeA
-#define PathIsDirectoryEmpty PathIsDirectoryEmptyA
-#define PathIsDirectory PathIsDirectoryA
-#define PathIsFileSpec PathIsFileSpecA
-#define PathIsLFNFileSpec PathIsLFNFileSpecA
-#define PathIsNetworkPath PathIsNetworkPathA
-#define PathIsPrefix PathIsPrefixA
-#define PathIsRelative PathIsRelativeA
-#define PathIsRoot PathIsRootA
-#define PathIsSameRoot PathIsSameRootA
-#define PathIsSystemFolder PathIsSystemFolderA
-#define PathIsUNCServerShare PathIsUNCServerShareA
-#define PathIsUNCServer PathIsUNCServerA
-#define PathIsUNC PathIsUNCA
-#define PathIsURL PathIsURLA
-#define PathMakePretty PathMakePrettyA
-#define PathMakeSystemFolder PathMakeSystemFolderA
-#define PathMatchSpec PathMatchSpecA
-#define PathParseIconLocation PathParseIconLocationA
-#define PathQuoteSpaces PathQuoteSpacesA
-#define PathRelativePathTo PathRelativePathToA
-#define PathRemoveArgs PathRemoveArgsA
-#define PathRemoveBackslash PathRemoveBackslashA
-#define PathRemoveBlanks PathRemoveBlanksA
-#define PathRemoveExtension PathRemoveExtensionA
-#define PathRemoveFileSpec PathRemoveFileSpecA
-#define PathRenameExtension PathRenameExtensionA
-#define PathSearchAndQualify PathSearchAndQualifyA
-#define PathSetDlgItemPath PathSetDlgItemPathA
-#define PathSkipRoot PathSkipRootA
-#define PathStripPath PathStripPathA
-#define PathStripToRoot PathStripToRootA
-#define PathUndecorate PathUndecorateA
-#define PathUnExpandEnvStrings PathUnExpandEnvStringsA
-#define PathUnmakeSystemFolder PathUnmakeSystemFolderA
-#define PathUnquoteSpaces PathUnquoteSpacesA
-#ifndef _OBJC_NO_COM
-#define SHCreateStreamOnFile SHCreateStreamOnFileA
-#define SHOpenRegStream SHOpenRegStreamA
-#define SHOpenRegStream2 SHOpenRegStream2A
-#endif
-#define SHCopyKey SHCopyKeyA
-#define SHDeleteEmptyKey SHDeleteEmptyKeyA
-#define SHDeleteKey SHDeleteKeyA
-#define SHEnumKeyEx SHEnumKeyExA
-#define SHQueryInfoKey SHRegQueryInfoKeyA
-#define SHQueryValueEx SHQueryValueExA
-#define SHEnumValue SHEnumValueA
-#define SHGetValue SHGetValueA
-#define SHSetValue SHSetValueA
-#define SHDeleteValue SHDeleteValueA
-#define AssocQueryKey AssocQueryKeyA
-#define AssocQueryStringByKey AssocQueryStringByKeyA
-#define AssocQueryString AssocQueryStringA
-#define UrlApplyScheme UrlApplySchemeA
-#define UrlCanonicalize UrlCanonicalizeA
-#define UrlCombine UrlCombineA
-#define UrlCompare UrlCompareA
-#define UrlCreateFromPath UrlCreateFromPathA
-#define UrlEscape UrlEscapeA
-#define UrlGetLocation UrlGetLocationA
-#define UrlGetPart UrlGetPartA
-#define UrlHash UrlHashA
-#define UrlIs UrlIsA
-#define UrlIsFileUrl UrlIsFileUrl
-#define UrlIsNoHistory UrlIsNoHistoryA
-#define UrlIsOpaque UrlIsOpaqueA
-#define UrlUnescape UrlUnescapeA
-#define UrlUnescapeInPlace UrlUnescapeInPlaceA
-#define SHRegCreateUSKey SHRegCreateUSKeyA
-#define SHRegDeleteEmptyUSKey SHRegDeleteEmptyUSKeyA
-#define SHRegDeleteUSValue SHRegDeleteUSValueA
-#define SHRegEnumUSKey SHRegEnumUSKeyA
-#define SHRegEnumUSValue SHRegEnumUSValueA
-#define SHRegGetBoolUSValue SHRegGetBoolUSValueA
-#define SHRegGetPath SHRegGetPathA
-#define SHRegGetUSValue SHRegGetUSValueA
-#define SHRegOpenUSKey SHRegOpenUSKeyA
-#define SHRegQueryInfoUSKey SHRegQueryInfoUSKeyA
-#define SHRegQueryUSValue SHRegQueryUSValueA
-#define SHRegSetPath SHRegSetPathA
-#define SHRegSetUSValue SHRegSetUSValueA
-#define SHRegWriteUSValue SHRegWriteUSValueA
-#define wnsprintf wnsprintfA
-#define wvnsprintf wvnsprintfA
-#endif /* UNICODE */
+#define PathFindOnPath __AW(PathFindOnPath)
+#define PathFindSuffixArray __AW(PathFindSuffixArray)
+#define PathGetArgs __AW(PathGetArgs)
+#define PathGetCharType __AW(PathGetCharType)
+#define PathGetDriveNumber __AW(PathGetDriveNumber)
+#define PathIsContentType __AW(PathIsContentType)
+#define PathIsDirectoryEmpty __AW(PathIsDirectoryEmpty)
+#define PathIsDirectory __AW(PathIsDirectory)
+#define PathIsFileSpec __AW(PathIsFileSpec)
+#define PathIsLFNFileSpec __AW(PathIsLFNFileSpec)
+#define PathIsNetworkPath __AW(PathIsNetworkPath)
+#define PathIsPrefix __AW(PathIsPrefix)
+#define PathIsRelative __AW(PathIsRelative)
+#define PathIsRoot __AW(PathIsRoot)
+#define PathIsSameRoot __AW(PathIsSameRoot)
+#define PathIsSystemFolder __AW(PathIsSystemFolder)
+#define PathIsUNCServerShare __AW(PathIsUNCServerShare)
+#define PathIsUNCServer __AW(PathIsUNCServer)
+#define PathIsUNC __AW(PathIsUNC)
+#define PathIsURL __AW(PathIsURL)
+#define PathMakePretty __AW(PathMakePretty)
+#define PathMakeSystemFolder __AW(PathMakeSystemFolder)
+#define PathMatchSpec __AW(PathMatchSpec)
+#define PathParseIconLocation __AW(PathParseIconLocation)
+#define PathQuoteSpaces __AW(PathQuoteSpaces)
+#define PathRelativePathTo __AW(PathRelativePathTo)
+#define PathRemoveArgs __AW(PathRemoveArgs)
+#define PathRemoveBackslash __AW(PathRemoveBackslash)
+#define PathRemoveBlanks __AW(PathRemoveBlanks)
+#define PathRemoveExtension __AW(PathRemoveExtension)
+#define PathRemoveFileSpec __AW(PathRemoveFileSpec)
+#define PathRenameExtension __AW(PathRenameExtension)
+#define PathSearchAndQualify __AW(PathSearchAndQualify)
+#define PathSetDlgItemPath __AW(PathSetDlgItemPath)
+#define PathSkipRoot __AW(PathSkipRoot)
+#define PathStripPath __AW(PathStripPath)
+#define PathStripToRoot __AW(PathStripToRoot)
+#define PathUndecorate __AW(PathUndecorate)
+#define PathUnExpandEnvStrings __AW(PathUnExpandEnvStrings)
+#define PathUnmakeSystemFolder __AW(PathUnmakeSystemFolder)
+#define PathUnquoteSpaces __AW(PathUnquoteSpaces)
+
+#define SHCopyKey __AW(SHCopyKey)
+#define SHDeleteEmptyKey __AW(SHDeleteEmptyKey)
+#define SHDeleteKey __AW(SHDeleteKey)
+#define SHEnumKeyEx __AW(SHEnumKeyEx)
+#define SHQueryInfoKey __AW(SHRegQueryInfoKey)
+#define SHQueryValueEx __AW(SHQueryValueEx)
+#define SHEnumValue __AW(SHEnumValue)
+#define SHGetValue __AW(SHGetValue)
+#define SHSetValue __AW(SHSetValue)
+#define SHDeleteValue __AW(SHDeleteValue)
+#define AssocQueryKey __AW(AssocQueryKey)
+#define AssocQueryStringByKey __AW(AssocQueryStringByKey)
+#define AssocQueryString __AW(AssocQueryString)
+#define UrlApplyScheme __AW(UrlApplyScheme)
+#define UrlCanonicalize __AW(UrlCanonicalize)
+#define UrlCombine __AW(UrlCombine)
+#define UrlCompare __AW(UrlCompare)
+#define UrlCreateFromPath __AW(UrlCreateFromPath)
+#define UrlEscape __AW(UrlEscape)
+#define UrlGetLocation __AW(UrlGetLocation)
+#define UrlGetPart __AW(UrlGetPart)
+#define UrlHash __AW(UrlHash)
+#define UrlIs __AW(UrlIs)
+#define UrlIsFileUrl __AW(UrlIsFileUrl)
+#define UrlIsNoHistory __AW(UrlIsNoHistory)
+#define UrlIsOpaque __AW(UrlIsOpaque)
+#define UrlUnescape __AW(UrlUnescape)
+#define UrlUnescapeInPlace __AW(UrlUnescapeInPlace)
+#define SHRegCreateUSKey __AW(SHRegCreateUSKey)
+#define SHRegDeleteEmptyUSKey __AW(SHRegDeleteEmptyUSKey)
+#define SHRegDeleteUSValue __AW(SHRegDeleteUSValue)
+#define SHRegEnumUSKey __AW(SHRegEnumUSKey)
+#define SHRegEnumUSValue __AW(SHRegEnumUSValue)
+#define SHRegGetBoolUSValue __AW(SHRegGetBoolUSValue)
+#define SHRegGetPath __AW(SHRegGetPath)
+#define SHRegGetUSValue __AW(SHRegGetUSValue)
+#define SHRegOpenUSKey __AW(SHRegOpenUSKey)
+#define SHRegQueryInfoUSKey __AW(SHRegQueryInfoUSKey)
+#define SHRegQueryUSValue __AW(SHRegQueryUSValue)
+#define SHRegSetPath __AW(SHRegSetPath)
+#define SHRegSetUSValue __AW(SHRegSetUSValue)
+#define SHRegWriteUSValue __AW(SHRegWriteUSValue)
+#define wnsprintf __AW(wnsprintf)
+#define wvnsprintf __AW(wvnsprintf)
#define StrToLong StrToInt
+#ifndef _OBJC_NO_COM
+WINSHLWAPI HRESULT WINAPI StrRetToBufA(LPSTRRET,LPCITEMIDLIST,LPSTR,UINT);
+WINSHLWAPI HRESULT WINAPI StrRetToBufW(LPSTRRET,LPCITEMIDLIST,LPWSTR,UINT);
+WINSHLWAPI HRESULT WINAPI StrRetToStrA(LPSTRRET,LPCITEMIDLIST,LPSTR*);
+WINSHLWAPI HRESULT WINAPI StrRetToStrW(LPSTRRET,LPCITEMIDLIST,LPWSTR*);
+WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileA(LPCSTR,DWORD,struct IStream**);
+WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileW(LPCWSTR,DWORD,struct IStream**);
+WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2A(HKEY,LPCSTR,LPCSTR,DWORD);
+WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2W(HKEY,LPCWSTR,LPCWSTR,DWORD);
+WINSHLWAPI struct IStream* WINAPI SHOpenRegStreamA(HKEY,LPCSTR,LPCSTR,DWORD);
+WINSHLWAPI struct IStream* WINAPI SHOpenRegStreamW(HKEY,LPCWSTR,LPCWSTR,DWORD);
+WINSHLWAPI HRESULT WINAPI SHGetThreadRef(IUnknown**);
+WINSHLWAPI HRESULT WINAPI SHSetThreadRef(IUnknown*);
+WINSHLWAPI BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*);
+#define StrRetToBuf __AW(StrRetToBuf)
+#define StrRetToStr __AW(StrRetToStr)
+#define SHCreateStreamOnFile __AW(SHCreateStreamOnFile)
+#define SHOpenRegStream __AW(SHOpenRegStream)
+#define SHOpenRegStream2 __AW(SHOpenRegStream2)
+#endif /* !_OBJC_NO_COM */
+
#endif /* !RC_INVOKED */
#ifdef __cplusplus
}
#endif
+
#endif /* ! defined _SHLWAPI_H */
#ifndef _SHLOBJIDL_H
#define _SHLOBJIDL_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
typedef ITaskbarList3 *LPTASKBARLIST3;
#pragma pack(pop)
+
#ifdef __cplusplus
}
#endif
-
#endif /* _SHLOBJIDL_H */
#ifndef _SIGNAL_H
#define _SIGNAL_H
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
/*
#endif
#endif /* Not RC_INVOKED */
+
#endif /* Not _SIGNAL_H */
#ifndef _SNMP_H
#define _SNMP_H
#pragma GCC system_header
+#include <_mingw.h>
#include <windows.h>
#include <pshpack4.h>
#define DEFAULT_SNMP_PORT_IPX 36879
#define DEFAULT_SNMPTRAP_PORT_UDP 162
#define DEFAULT_SNMPTRAP_PORT_IPX 36880
+
#ifndef _SNMP_ASN_DEFINED
#define _SNMP_ASN_DEFINED
#define ASN_UNIVERSAL 0x00
#define SNMP_PDU_TRAP (ASN_CONTEXT | ASN_CONSTRUCTOR | 7)
#define SNMP_PDU_REPORT (ASN_CONTEXT | ASN_CONSTRUCTOR | 8)
#endif /* _SNMP_ASN_DEFINED */
+
#define ASN_INTEGER (ASN_UNIVERSAL | ASN_PRIMITIVE | 2)
#define ASN_BITS (ASN_UNIVERSAL | ASN_PRIMITIVE | 3)
#define ASN_OCTETSTRING (ASN_UNIVERSAL | ASN_PRIMITIVE | 4)
#ifndef _SPECSTRINGS_H
#define _SPECSTRINGS_H
#pragma GCC system_header
+#include <_mingw.h>
/* These are built from primitives in Microsoft's Standard Annotation Language.
Search for "Header Annotation" on MSDN site for their MS-specific meanings */
#define __out_ecount_part_opt(size,length)
#define __out_opt
-
#endif /*_SPECSTRINGS_H */
#ifndef _SQL_H
#define _SQL_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#ifndef ODBCVER
#define ODBCVER 0x0351
#endif
+
#include <sqltypes.h>
#define SQL_ACCESSIBLE_PROCEDURES 20
#define SQL_ACCESSIBLE_TABLES 19
#define SQL_UNKNOWN_TYPE 0
#define SQL_USER_NAME 47
#define SQL_VARCHAR 12
+
#if (ODBCVER >= 0x0200)
#define SQL_AT_ADD_COLUMN 1
#define SQL_AT_DROP_COLUMN 2
#endif /* ODBCVER >= 0x0200 */
+
#if (ODBCVER >= 0x0201)
#define SQL_OJ_LEFT 1
#define SQL_OJ_RIGHT 2
#define SQL_OJ_INNER 32
#define SQL_OJ_ALL_COMPARISON_OPS 64
#endif /* ODBCVER >= 0x0201 */
+
#if (ODBCVER >= 0x0300)
#define SQL_AM_CONNECTION 1
#define SQL_AM_NONE 0
SQLRETURN SQL_API SQLStatistics(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLUSMALLINT,SQLUSMALLINT);
SQLRETURN SQL_API SQLTables(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT);
SQLRETURN SQL_API SQLDataSources(SQLHENV,SQLUSMALLINT,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*);
+
#if (ODBCVER >= 0x0300)
SQLRETURN SQL_API SQLAllocHandle(SQLSMALLINT,SQLHANDLE,SQLHANDLE*);
SQLRETURN SQL_API SQLBindParam(SQLHSTMT,SQLUSMALLINT,SQLSMALLINT,SQLSMALLINT,SQLULEN,SQLSMALLINT,SQLPOINTER,SQLLEN*);
SQLRETURN SQL_API SQLSetEnvAttr(SQLHENV,SQLINTEGER,SQLPOINTER,SQLINTEGER);
SQLRETURN SQL_API SQLSetStmtAttr(SQLHSTMT,SQLINTEGER,SQLPOINTER,SQLINTEGER);
#endif /* (ODBCVER >= 0x0300) */
+
#endif /* ndef RC_INVOKED */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _SQLEXT_H
#define _SQLEXT_H
#pragma GCC system_header
+#include <_mingw.h>
#include <sql.h>
+
#ifdef __cplusplus
extern "C" {
#endif
+
#define SQL_SPEC_MAJOR 3
#define SQL_SPEC_MINOR 51
#define SQL_SPEC_STRING "03.51"
#define SQL_INTERVAL_HOUR_TO_MINUTE (-90)
#define SQL_INTERVAL_HOUR_TO_SECOND (-91)
#define SQL_INTERVAL_MINUTE_TO_SECOND (-92)
+
#else
#define SQL_NO_DATA_FOUND SQL_NO_DATA
#define SQL_CODE_YEAR 1
#define SQL_UNICODE_VARCHAR (-96)
#define SQL_UNICODE_LONGVARCHAR (-97)
#define SQL_UNICODE_CHAR SQL_UNICODE
+
#else
#define SQL_UNICODE SQL_WCHAR
#define SQL_UNICODE_VARCHAR SQL_WVARCHAR
#define SQL_US_UNION SQL_U_UNION
#define SQL_US_UNION_ALL SQL_U_UNION_ALL
#endif /* ODBCVER >= 0x300 */
+
#if (ODBCVER >= 0x0350)
#define SQL_DESC_ROWVER 35
#define SQL_GUID (-11)
#define SQL_C_GUID SQL_GUID
+
#ifdef ODBC_STD
#define SQLAllocHandle SQLAllocHandleStd
#define SQLAllocEnv(p) SQLAllocHandleStd(SQL_HANDLE_ENV,SQL_NULL_HANDLE,p)
#define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND
#define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND
#endif /* ODBC_STD */
+
#endif /* ODBCVER >= 0x0350 */
+
#if (ODBCVER >= 0x0351)
#define SQL_ATTR_ANSI_APP 115
#define SQL_AA_TRUE 1L
RETCODE SQL_API TraceCloseLogFile(void);
VOID SQL_API TraceReturn(RETCODE,RETCODE);
DWORD SQL_API TraceVersion(void);
+
#if (ODBCVER >= 0x0300)
SQLRETURN SQL_API SQLBulkOperations(SQLHSTMT,SQLSMALLINT);
SQLRETURN SQL_API SQLAllocHandleStd( SQLSMALLINT,SQLHANDLE,SQLHANDLE*);
#endif
+
#endif /* ndef RC_INVOKED */
+
#include <sqlucode.h>
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _SQLTYPES_H
#define _SQLTYPES_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define SQL_API __stdcall
+
#ifndef RC_INVOKED
#define __need_wchar_t
#include <stddef.h>
+
typedef signed char SCHAR;
typedef long SDWORD;
typedef short SWORD;
typedef SCHAR SQLSCHAR;
typedef SDWORD SQLINTEGER;
typedef SWORD SQLSMALLINT;
+
#ifndef __WIN64
typedef UDWORD SQLUINTEGER;
#endif
+
typedef UWORD SQLUSMALLINT;
typedef PVOID SQLPOINTER;
+
#if (ODBCVER >= 0x0300)
typedef void* SQLHANDLE;
typedef SQLHANDLE SQLHENV;
typedef SQLHANDLE SQLHDBC;
typedef SQLHANDLE SQLHSTMT;
typedef SQLHANDLE SQLHDESC;
+
#else
typedef void* SQLHENV;
typedef void* SQLHDBC;
typedef void* SQLHSTMT;
#endif
+
typedef SQLSMALLINT SQLRETURN;
typedef HWND SQLHWND;
typedef ULONG BOOKMARK;
+
#ifdef _WIN64
typedef INT64 SQLLEN;
typedef INT64 SQLROWOFFSET;
typedef UINT64 SQLULEN;
typedef UINT64 SQLTRANSID;
typedef unsigned long SQLSETPOSIROW;
+
#else
#define SQLLEN SQLINTEGER
#define SQLROWOFFSET SQLINTEGER
#define SQLTRANSID DWORD
#define SQLSETPOSIROW SQLUSMALLINT
#endif
+
typedef wchar_t SQLWCHAR;
+
+/* Cannot use __AW(). */
#ifdef UNICODE
typedef SQLWCHAR SQLTCHAR;
#else
typedef SQLCHAR SQLTCHAR;
#endif /* UNICODE */
+
#if (ODBCVER >= 0x0300)
typedef unsigned char SQLDATE;
typedef unsigned char SQLDECIMAL;
SQLUSMALLINT second;
SQLUINTEGER fraction;
} TIMESTAMP_STRUCT;
+
#if (ODBCVER >= 0x0300)
typedef DATE_STRUCT SQL_DATE_STRUCT;
typedef TIME_STRUCT SQL_TIME_STRUCT;
SQLCHAR val[SQL_MAX_NUMERIC_LEN];
} SQL_NUMERIC_STRUCT;
#endif /* ODBCVER >= 0x0300 */
+
#if (ODBCVER >= 0x0350)
#ifdef _GUID_DEFINED
BYTE Data4[ 8 ];
} SQLGUID;
#endif /* GUID_DEFINED */
+
#endif /* ODBCVER >= 0x0350 */
+
#endif /* RC_INVOKED */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _SQLUCODE_H
#define _SQLUCODE_H
#pragma GCC system_header
+#define __TEST_SQL_NOUNICODEMAP
+#include <_mingw.h>
#include <sqlext.h>
+
#ifdef __cplusplus
extern "C" {
#endif
+
#define SQL_WCHAR (-8)
#define SQL_WVARCHAR (-9)
#define SQL_WLONGVARCHAR (-10)
#define SQL_C_WCHAR SQL_WCHAR
#define SQL_SQLSTATE_SIZEW 10
+
+/* Cannot use __AW(). */
#ifdef UNICODE
#define SQL_C_TCHAR SQL_C_WCHAR
#else
#define SQL_C_TCHAR SQL_C_CHAR
#endif
+
#ifndef RC_INVOKED
SQLRETURN SQL_API SQLBrowseConnectA(SQLHDBC,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLSMALLINT*);
SQLRETURN SQL_API SQLBrowseConnectW(SQLHDBC,SQLWCHAR*,SQLSMALLINT,SQLWCHAR*,SQLSMALLINT,SQLSMALLINT*);
SQLRETURN SQL_API SQLTablePrivilegesW(SQLHSTMT,SQLWCHAR*,SQLSMALLINT,SQLWCHAR*,SQLSMALLINT,SQLWCHAR*,SQLSMALLINT );
SQLRETURN SQL_API SQLTablesA(SQLHSTMT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT);
SQLRETURN SQL_API SQLTablesW(SQLHSTMT,SQLWCHAR*,SQLSMALLINT,SQLWCHAR*,SQLSMALLINT,SQLWCHAR*,SQLSMALLINT,SQLWCHAR*,SQLSMALLINT);
+
#if (ODBCVER >= 0x0300)
SQLRETURN SQL_API SQLGetDescFieldA(SQLHDESC,SQLSMALLINT,SQLSMALLINT,SQLPOINTER,SQLINTEGER,SQLINTEGER*);
SQLRETURN SQL_API SQLGetDescFieldW(SQLHDESC,SQLSMALLINT,SQLSMALLINT,SQLPOINTER,SQLINTEGER,SQLINTEGER*);
#define SQLTablePrivileges SQLTablePrivilegesW
#define SQLTables SQLTablesW
#endif /* UNICODE && ! SQL_NOUNICODEMAP */
+
#endif /* RC_INVOKED */
+
#ifdef __cplusplus
}
#endif /* __cplusplus*/
+
#endif /* ndef _SQLUCODE_H */
#ifndef _SSPI_H
#define _SSPI_H
#pragma GCC system_header
+#include <_mingw.h>
#include <ntsecapi.h>
SECURITY_STATUS WINAPI QueryContextAttributesW(PCtxtHandle,ULONG,PVOID);
SECURITY_STATUS WINAPI QueryCredentialsAttributesA(PCredHandle,ULONG,PVOID);
SECURITY_STATUS WINAPI QueryCredentialsAttributesW(PCredHandle,ULONG,PVOID);
-#if (_WIN32_WINNT >= 0x0500)
-SECURITY_STATUS WINAPI QuerySecurityContextToken(PCtxtHandle,HANDLE*);
-#endif
+
SECURITY_STATUS WINAPI DecryptMessage(PCtxtHandle,PSecBufferDesc,ULONG,PULONG);
SECURITY_STATUS WINAPI EncryptMessage(PCtxtHandle,ULONG,PSecBufferDesc,ULONG);
SECURITY_STATUS WINAPI DeleteSecurityContext(PCtxtHandle);
PSecurityFunctionTableA WINAPI InitSecurityInterfaceA(VOID);
PSecurityFunctionTableW WINAPI InitSecurityInterfaceW(VOID);
-#ifdef UNICODE
-#define UNISP_NAME UNISP_NAME_W
-#define SecPkgInfo SecPkgInfoW
-#define PSecPkgInfo PSecPkgInfoW
-#define SecPkgCredentials_Names SecPkgCredentials_NamesW
-#define PSecPkgCredentials_Names PSecPkgCredentials_NamesW
-#define SecPkgContext_Authority SecPkgContext_AuthorityW
-#define PSecPkgContext_Authority PSecPkgContext_AuthorityW
-#define SecPkgContext_KeyInfo SecPkgContext_KeyInfoW
-#define PSecPkgContext_KeyInfo PSecPkgContext_KeyInfoW
-#define SecPkgContext_Names SecPkgContext_NamesW
-#define PSecPkgContext_Names PSecPkgContext_NamesW
-#define SecurityFunctionTable SecurityFunctionTableW
-#define PSecurityFunctionTable PSecurityFunctionTableW
-#define AcquireCredentialsHandle AcquireCredentialsHandleW
-#define EnumerateSecurityPackages EnumerateSecurityPackagesW
-#define InitializeSecurityContext InitializeSecurityContextW
-#define QueryContextAttributes QueryContextAttributesW
-#define QueryCredentialsAttributes QueryCredentialsAttributesW
-#define QuerySecurityPackageInfo QuerySecurityPackageInfoW
-#define ApplyControlToken ApplyControlTokenW
-#define ENUMERATE_SECURITY_PACKAGES_FN ENUMERATE_SECURITY_PACKAGES_FN_W
-#define QUERY_CREDENTIALS_ATTRIBUTES_FN QUERY_CREDENTIALS_ATTRIBUTES_FN_W
-#define ACQUIRE_CREDENTIALS_HANDLE_FN ACQUIRE_CREDENTIALS_HANDLE_FN_W
-#define INITIALIZE_SECURITY_CONTEXT_FN INITIALIZE_SECURITY_CONTEXT_FN_W
-#define APPLY_CONTROL_TOKEN_FN APPLY_CONTROL_TOKEN_FN_W
-#define QUERY_CONTEXT_ATTRIBUTES_FN QUERY_CONTEXT_ATTRIBUTES_FN_W
-#define QUERY_SECURITY_PACKAGE_INFO_FN QUERY_SECURITY_PACKAGE_INFO_FN_W
-#define INIT_SECURITY_INTERFACE INIT_SECURITY_INTERFACE_W
-#else
-#define UNISP_NAME UNISP_NAME_A
-#define SecPkgInfo SecPkgInfoA
-#define PSecPkgInfo PSecPkgInfoA
-#define SecPkgCredentials_Names SecPkgCredentials_NamesA
-#define PSecPkgCredentials_Names PSecPkgCredentials_NamesA
-#define SecPkgContext_Authority SecPkgContext_AuthorityA
-#define PSecPkgContext_Authority PSecPkgContext_AuthorityA
-#define SecPkgContext_KeyInfo SecPkgContext_KeyInfoA
-#define PSecPkgContext_KeyInfo PSecPkgContext_KeyInfoA
-#define SecPkgContext_Names SecPkgContext_NamesA
-#define PSecPkgContext_Names PSecPkgContext_NamesA
-#define SecurityFunctionTable SecurityFunctionTableA
-#define PSecurityFunctionTable PSecurityFunctionTableA
-#define AcquireCredentialsHandle AcquireCredentialsHandleA
-#define EnumerateSecurityPackages EnumerateSecurityPackagesA
-#define InitializeSecurityContext InitializeSecurityContextA
-#define QueryContextAttributes QueryContextAttributesA
-#define QueryCredentialsAttributes QueryCredentialsAttributesA
-#define QuerySecurityPackageInfo QuerySecurityPackageInfoA
-#define ApplyControlToken ApplyControlTokenA
-#define ENUMERATE_SECURITY_PACKAGES_FN ENUMERATE_SECURITY_PACKAGES_FN_A
-#define QUERY_CREDENTIALS_ATTRIBUTES_FN QUERY_CREDENTIALS_ATTRIBUTES_FN_A
-#define ACQUIRE_CREDENTIALS_HANDLE_FN ACQUIRE_CREDENTIALS_HANDLE_FN_A
-#define INITIALIZE_SECURITY_CONTEXT_FN INITIALIZE_SECURITY_CONTEXT_FN_A
-#define APPLY_CONTROL_TOKEN_FN APPLY_CONTROL_TOKEN_FN_A
-#define QUERY_CONTEXT_ATTRIBUTES_FN QUERY_CONTEXT_ATTRIBUTES_FN_A
-#define QUERY_SECURITY_PACKAGE_INFO_FN QUERY_SECURITY_PACKAGE_INFO_FN_A
-#define INIT_SECURITY_INTERFACE INIT_SECURITY_INTERFACE_A
-#endif
+#define UNISP_NAME __AW(UNISP_NAME_)
+#define SecPkgInfo __AW(SecPkgInfo)
+#define PSecPkgInfo __AW(PSecPkgInfo)
+#define SecPkgCredentials_Names __AW(SecPkgCredentials_Names)
+#define PSecPkgCredentials_Names __AW(PSecPkgCredentials_Names)
+#define SecPkgContext_Authority __AW(SecPkgContext_Authority)
+#define PSecPkgContext_Authority __AW(PSecPkgContext_Authority)
+#define SecPkgContext_KeyInfo __AW(SecPkgContext_KeyInfo)
+#define PSecPkgContext_KeyInfo __AW(PSecPkgContext_KeyInfo)
+#define SecPkgContext_Names __AW(SecPkgContext_Names)
+#define PSecPkgContext_Names __AW(PSecPkgContext_Names)
+#define SecurityFunctionTable __AW(SecurityFunctionTable)
+#define PSecurityFunctionTable __AW(PSecurityFunctionTable)
+#define AcquireCredentialsHandle __AW(AcquireCredentialsHandle)
+#define EnumerateSecurityPackages __AW(EnumerateSecurityPackages)
+#define InitializeSecurityContext __AW(InitializeSecurityContext)
+#define QueryContextAttributes __AW(QueryContextAttributes)
+#define QueryCredentialsAttributes __AW(QueryCredentialsAttributes)
+#define QuerySecurityPackageInfo __AW(QuerySecurityPackageInfo)
+#define ApplyControlToken __AW(ApplyControlToken)
+#define ENUMERATE_SECURITY_PACKAGES_FN __AW(ENUMERATE_SECURITY_PACKAGES_FN_)
+#define QUERY_CREDENTIALS_ATTRIBUTES_FN __AW(QUERY_CREDENTIALS_ATTRIBUTES_FN_)
+#define ACQUIRE_CREDENTIALS_HANDLE_FN __AW(ACQUIRE_CREDENTIALS_HANDLE_FN_)
+#define INITIALIZE_SECURITY_CONTEXT_FN __AW(INITIALIZE_SECURITY_CONTEXT_FN_)
+#define APPLY_CONTROL_TOKEN_FN __AW(APPLY_CONTROL_TOKEN_FN_)
+#define QUERY_CONTEXT_ATTRIBUTES_FN __AW(QUERY_CONTEXT_ATTRIBUTES_FN_)
+#define QUERY_SECURITY_PACKAGE_INFO_FN __AW(QUERY_SECURITY_PACKAGE_INFO_FN_)
+#define INIT_SECURITY_INTERFACE __AW(INIT_SECURITY_INTERFACE_)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+SECURITY_STATUS WINAPI QuerySecurityContextToken(PCtxtHandle,HANDLE*);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _STDINT_H
#define _STDINT_H
#pragma GCC system_header
+#include <_mingw.h>
/* ISO C9x 7.18 Integer types <stdint.h>
* Based on ISO/IEC SC22/WG14 9899 Committee draft (SC22 N2794)
*/
-#include <_mingw.h>
#define __need_wint_t
#define __need_wchar_t
#include <stddef.h>
#ifndef _STDIO_H
#define _STDIO_H
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
#ifndef RC_INVOKED
#define _IOEOF 0x0010 /* EOF reached on read */
#define _IOERR 0x0020 /* I/O error from system */
#define _IOSTRG 0x0040 /* Strange or no file descriptor */
+
#ifdef _POSIX_SOURCE
# define _IOAPPEND 0x0200
#endif
+
/*
* The buffer size as used by setbuf such that it is equivalent to
* (void) setvbuf(fileSetBuffer, caBuffer, _IOFBF, BUFSIZ).
#ifndef RC_INVOKED
#ifndef __VALIST
-#ifdef __GNUC__
#define __VALIST __gnuc_va_list
-#else
-#define __VALIST char*
-#endif
#endif /* defined __VALIST */
/*
*/
# define __mingw_stdio_redirect__ inline __cdecl __MINGW_NOTHROW
-# elif defined __GNUC__
-/*
- * FIXME: Is there any GCC version prerequisite here?
- *
- * We also prefer inline implementations for C, when we can be confident
- * that the GNU specific __inline__ mechanism is supported.
- */
+# else /* !__cplusplus */
# define __mingw_stdio_redirect__ static __inline__ __cdecl __MINGW_NOTHROW
-# else
-/*
- * Can't use inlines; fall back on module local static stubs.
- */
-# define __mingw_stdio_redirect__ static __cdecl __MINGW_NOTHROW
-# endif
+# endif /* __cplusplus */
__mingw_stdio_redirect__
int fprintf (FILE *__stream, const char *__format, ...)
return __mingw_vsprintf( __stream, __format, __local_argv );
}
-#else
+#else /* __USE_MINGW_ANSI_STDIO */
/*
* Default configuration: simply direct all calls to MSVCRT...
*/
_CRTIMP int __cdecl __MINGW_NOTHROW vprintf (const char*, __VALIST);
_CRTIMP int __cdecl __MINGW_NOTHROW vsprintf (char*, const char*, __VALIST);
-#endif
+#endif /* __USE_MINGW_ANSI_STDIO */
+
/*
* Regardless of user preference, always offer these alternative
* entry points, for direct access to the MSVCRT implementations.
_CRTIMP long __cdecl __MINGW_NOTHROW ftell (FILE*);
_CRTIMP void __cdecl __MINGW_NOTHROW rewind (FILE*);
-#if __MSVCRT_VERSION__ >= 0x800
_CRTIMP int __cdecl __MINGW_NOTHROW _fseek_nolock (FILE*, long, int);
_CRTIMP long __cdecl __MINGW_NOTHROW _ftell_nolock (FILE*);
_CRTIMP __int64 __cdecl __MINGW_NOTHROW _ftelli64 (FILE*);
_CRTIMP int __cdecl __MINGW_NOTHROW _fseeki64_nolock (FILE*, __int64, int);
_CRTIMP __int64 __cdecl __MINGW_NOTHROW _ftelli64_nolock (FILE*);
-#endif
#ifdef __USE_MINGW_FSEEK /* These are in libmingwex.a */
/*
_CRTIMP int __cdecl __MINGW_NOTHROW _getmaxstdio (void);
_CRTIMP int __cdecl __MINGW_NOTHROW _setmaxstdio (int);
-#if __MSVCRT_VERSION__ >= 0x800
_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _get_output_format (void);
_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _set_output_format (unsigned int);
_CRTIMP int __cdecl __MINGW_NOTHROW _get_printf_count_output (void);
_CRTIMP int __cdecl __MINGW_NOTHROW _set_printf_count_output (int);
-#endif
#ifndef _NO_OLDNAMES
_CRTIMP int __cdecl __MINGW_NOTHROW fgetchar (void);
#ifndef _STDLIB_H
#define _STDLIB_H
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
#define __need_size_t
#define __need_wchar_t
#define __need_NULL
+
#ifndef RC_INVOKED
#include <stddef.h>
#endif /* RC_INVOKED */
#endif /* Not __STRICT_ANSI__ */
-
#ifndef RC_INVOKED
#ifdef __cplusplus
* MS likes to declare errno in stdlib.h as well.
*/
-#ifdef _UWIN
-#undef errno
-extern int errno;
-#else
_CRTIMP int* __cdecl __MINGW_NOTHROW _errno(void);
#define errno (*_errno())
-#endif
_CRTIMP int* __cdecl __MINGW_NOTHROW __doserrno(void);
#define _doserrno (*__doserrno())
_CRTIMP double __cdecl __MINGW_NOTHROW atof (const char*);
_CRTIMP int __cdecl __MINGW_NOTHROW atoi (const char*);
_CRTIMP long __cdecl __MINGW_NOTHROW atol (const char*);
+
#if !defined (__STRICT_ANSI__)
_CRTIMP double __cdecl __MINGW_NOTHROW _wtof (const wchar_t *);
_CRTIMP int __cdecl __MINGW_NOTHROW _wtoi (const wchar_t *);
_CRTIMP long __cdecl __MINGW_NOTHROW _wtol (const wchar_t *);
#endif
+
#if !defined __NO_ISOCEXT /* in libmingwex.a */
double __cdecl __MINGW_NOTHROW __strtod (const char*, char**);
extern double __cdecl __MINGW_NOTHROW
_CRTIMP long __cdecl __MINGW_NOTHROW wcstol (const wchar_t*, wchar_t**, int);
_CRTIMP unsigned long __cdecl __MINGW_NOTHROW wcstoul (const wchar_t*, wchar_t**, int);
_CRTIMP double __cdecl __MINGW_NOTHROW wcstod (const wchar_t*, wchar_t**);
+
#if !defined __NO_ISOCEXT /* in libmingwex.a */
float __cdecl __MINGW_NOTHROW wcstof( const wchar_t * __restrict__, wchar_t ** __restrict__);
long double __cdecl __MINGW_NOTHROW wcstold (const wchar_t * __restrict__, wchar_t ** __restrict__);
#endif /* __NO_ISOCEXT */
+
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wgetenv(const wchar_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wputenv(const wchar_t*);
_CRTIMP void __cdecl __MINGW_NOTHROW _wsearchenv(const wchar_t*, const wchar_t*, wchar_t*);
_CRTIMP void __cdecl __MINGW_NOTHROW _wsplitpath (const wchar_t*, wchar_t*, wchar_t*, wchar_t*, wchar_t*);
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wfullpath (wchar_t*, const wchar_t*, size_t);
#define _WSTDLIB_DEFINED
-#endif
+#endif /* !_WSTDLIB_DEFINED */
_CRTIMP size_t __cdecl __MINGW_NOTHROW wcstombs (char*, const wchar_t*, size_t);
_CRTIMP int __cdecl __MINGW_NOTHROW wctomb (char*, wchar_t);
# define _OUT_TO_MSGBOX 2
# define _REPORT_ERRMODE 3
-# if __MSVCRT_VERSION__ >= 0x800
-# ifndef _UINTPTR_T_DEFINED
-# define _UINTPTR_T_DEFINED
-# ifdef _WIN64
- typedef unsigned __int64 uintptr_t;
-# else
- typedef unsigned int uintptr_t;
-# endif
+# ifndef _UINTPTR_T_DEFINED
+# define _UINTPTR_T_DEFINED
+# ifdef _WIN64
+ typedef unsigned __int64 uintptr_t;
+# else
+ typedef unsigned int uintptr_t;
# endif
+# endif
_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _set_abort_behavior (unsigned int, unsigned int);
uintptr_t);
_invalid_parameter_handler _set_invalid_parameter_handler (_invalid_parameter_handler);
-# endif /* __MSVCRT_VERSION__ >= 0x800 */
-
#ifndef _NO_OLDNAMES
_CRTIMP int __cdecl __MINGW_NOTHROW putenv (const char*);
_CRTIMP char* __cdecl __MINGW_NOTHROW itoa (int, char*, int);
_CRTIMP char* __cdecl __MINGW_NOTHROW ltoa (long, char*, int);
-#ifndef _UWIN
_CRTIMP char* __cdecl __MINGW_NOTHROW ecvt (double, int, int*, int*);
_CRTIMP char* __cdecl __MINGW_NOTHROW fcvt (double, int, int*, int*);
_CRTIMP char* __cdecl __MINGW_NOTHROW gcvt (double, int, char*);
-#endif /* _UWIN */
#endif /* Not _NO_OLDNAMES */
#endif /* Not __STRICT_ANSI__ */
#ifndef _STM_H
#define _STM_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
-#if (_WIN32_WINNT >= 0x0500)
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
typedef struct _IPX_SERVER_ENTRY {
USHORT Type;
UCHAR Name[48];
UCHAR Socket[2];
USHORT HopCount;
} IPX_SERVER_ENTRY,*PIPX_SERVER_ENTRY;
-#endif
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _STRING_H
#define _STRING_H
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
/*
#define __need_size_t
#define __need_wchar_t
#define __need_NULL
-#ifndef RC_INVOKED
-#include <stddef.h>
-#endif /* Not RC_INVOKED */
#ifndef RC_INVOKED
+#include <stddef.h>
#ifdef __cplusplus
extern "C" {
_CRTIMP int __cdecl __MINGW_NOTHROW strcmpi (const char*, const char*);
_CRTIMP int __cdecl __MINGW_NOTHROW stricmp (const char*, const char*);
int __cdecl __MINGW_NOTHROW strcasecmp (const char*, const char *);
+
#ifndef __NO_INLINE__
__CRT_INLINE int __cdecl __MINGW_NOTHROW
strcasecmp (const char * __sz1, const char * __sz2)
{return _stricmp (__sz1, __sz2);}
#endif
+
_CRTIMP int __cdecl __MINGW_NOTHROW stricoll (const char*, const char*);
_CRTIMP char* __cdecl __MINGW_NOTHROW strlwr (char*);
_CRTIMP int __cdecl __MINGW_NOTHROW strnicmp (const char*, const char*, size_t);
int __cdecl __MINGW_NOTHROW strncasecmp (const char *, const char *, size_t);
+
#ifndef __NO_INLINE__
__CRT_INLINE int __cdecl __MINGW_NOTHROW
strncasecmp (const char * __sz1, const char * __sz2, size_t __sizeMaxCompare)
{return _strnicmp (__sz1, __sz2, __sizeMaxCompare);}
#endif
+
_CRTIMP char* __cdecl __MINGW_NOTHROW strnset (char*, int, size_t);
_CRTIMP char* __cdecl __MINGW_NOTHROW strrev (char*);
_CRTIMP char* __cdecl __MINGW_NOTHROW strset (char*, int);
_CRTIMP char* __cdecl __MINGW_NOTHROW strupr (char*);
-#ifndef _UWIN
_CRTIMP void __cdecl __MINGW_NOTHROW swab (const char*, char*, size_t);
-#endif /* _UWIN */
#endif /* _NO_OLDNAMES */
#endif /* Not __STRICT_ANSI__ */
_CRTIMP int __cdecl __MINGW_NOTHROW _wcsncoll(const wchar_t*, const wchar_t*, size_t);
_CRTIMP int __cdecl __MINGW_NOTHROW _wcsnicoll(const wchar_t*, const wchar_t*, size_t);
-#if __MSVCRT_VERSION__ >= 0x0700
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wcserror(int);
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW __wcserror(const wchar_t*);
-#endif
#ifndef _NO_OLDNAMES
/* NOTE: There is no _wcscmpi, but this is for compatibility. */
int __cdecl __MINGW_NOTHROW wcscmpi (const wchar_t * __ws1, const wchar_t * __ws2);
+
#ifndef __NO_INLINE__
__CRT_INLINE int __cdecl __MINGW_NOTHROW
wcscmpi (const wchar_t * __ws1, const wchar_t * __ws2)
{return _wcsicmp (__ws1, __ws2);}
#endif
+
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW wcsdup (const wchar_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW wcsicmp (const wchar_t*, const wchar_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW wcsicoll (const wchar_t*, const wchar_t*);
#endif
#endif /* Not RC_INVOKED */
+
#endif /* Not _STRING_H */
#ifndef _STRINGS_H
#define _STRINGS_H
#pragma GCC system_header
+#include <_mingw.h>
#include <string.h>
+
#endif
#ifndef _STRMIF_H
#define _STRMIF_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _SUBAUTH_H
#define _SUBAUTH_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#ifndef NT_SUCCESS
#define NT_SUCCESS(x) ((x)>=0)
#define STATUS_SUCCESS 0
#endif
+
#define CYPHER_BLOCK_LENGTH 8
#define USER_SESSION_KEY_LENGTH (CYPHER_BLOCK_LENGTH*2)
#define CLEAR_BLOCK_LENGTH 8
#define USER_MACHINE_ACCOUNT_MASK 448
#define USER_ACCOUNT_TYPE_MASK 472
#define USER_ALL_PARAMETERS 2097152
+
#if !defined(_NTDEF_H) && !defined(_NTSECAPI_H)
typedef LONG NTSTATUS, *PNTSTATUS;
typedef struct _UNICODE_STRING {
#ifdef __cplusplus
}
#endif
+
#endif /* _SUBAUTH_H */
#ifndef _SVCGUID_H
#define _SVCGUID_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _TCHAR_H
#define _TCHAR_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* Unicode mapping layer for the standard C library. By including this
*
*/
-/* All the headers include this file. */
-#include <_mingw.h>
-
/*
* NOTE: This tests _UNICODE, which is different from the UNICODE define
* used to differentiate Win32 API calls.
#ifndef RC_INVOKED
typedef wchar_t TCHAR;
typedef wchar_t _TCHAR;
-#endif /* Not RC_INVOKED */
+#endif /* ! RC_INVOKED */
#define _TCHAR_DEFINED
-#endif
+#endif /* ! _TCHAR_DEFINED */
/*
* Use _TEOF instead of EOF or WEOF. It will be appropriately translated if
#define _ui64tot _ui64tow
#define _tasctime _wasctime
#define _tctime _wctime
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tctime32 _wctime32
#define _tctime64 _wctime64
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
#define _tstrdate _wstrdate
#define _tstrtime _wstrtime
#define _tutime _wutime
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tutime64 _wutime64
#define _tutime32 _wutime32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
#define _tcsnccoll _wcsncoll
#define _tcsncoll _wcsncoll
#define _tcsncicoll _wcsnicoll
#define _tcreat _wcreat
#define _tfindfirst _wfindfirst
#define _tfindnext _wfindnext
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tfindfirst64 _wfindfirst64
#define _tfindfirst32 _wfindfirst32
#define _tfindnext64 _wfindnext64
#define _tfindnext32 _wfindnext32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
#define _tfdopen _wfdopen
#define _tfopen _wfopen
#define _tfreopen _wfreopen
#define _tfindfirsti64 _wfindfirsti64
#define _tfindnexti64 _wfindnexti64
#define _tfinddatai64_t _wfinddatai64_t
-#if __MSVCRT_VERSION__ >= 0x0601
#define _tfinddata64_t _wfinddata64_t
-#endif
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tfinddata32_t _wfinddata32_t
#define _tfinddata32i64_t _wfinddata32i64_t
#define _tfinddata64i32_t _wfinddata64i32_t
#define _tfindfirst64i32 _wfindfirst64i32
#define _tfindnext32i64 _wfindnext32i64
#define _tfindnext64i32 _wfindnext64i32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
#define _tchdir _wchdir
#define _tgetcwd _wgetcwd
#define _tgetdcwd _wgetdcwd
#define _tstat _wstat
#define _tstati64 _wstati64
#define _tstat64 _wstat64
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tstat32 _wstat32
#define _tstat32i64 _wstat32i64
#define _tstat64i32 _wstat64i32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
/* dirent structures and functions */
#define _tdirent _wdirent
#ifndef RC_INVOKED
typedef char TCHAR;
typedef char _TCHAR;
-#endif
+#endif /* ! RC_INVOKED */
#define _TCHAR_DEFINED
-#endif
+#endif /* ! _TCHAR_DEFINED */
/*
* _TEOF, the constant you should use instead of EOF.
#define _totlower tolower
#define _tasctime asctime
#define _tctime ctime
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tctime32 _ctime32
#define _tctime64 _ctime64
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
#define _tstrdate _strdate
#define _tstrtime _strtime
#define _tutime _utime
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tutime64 _utime64
#define _tutime32 _utime32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
#define _tcsftime strftime
/* Macro functions */
#define _tcsdec _strdec
#define _tcreat _creat
#define _tfindfirst _findfirst
#define _tfindnext _findnext
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tfindfirst64 _findfirst64
#define _tfindfirst32 _findfirst32
#define _tfindnext64 _findnext64
#define _tfindnext32 _findnext32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
#define _tmktemp _mktemp
#define _topen _open
#define _taccess _access
#define _tfindfirsti64 _findfirsti64
#define _tfindnexti64 _findnexti64
#define _tfinddatai64_t _finddatai64_t
-#if __MSVCRT_VERSION__ >= 0x0601
#define _tfinddata64_t _finddata64_t
-#endif
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tfinddata32_t _finddata32_t
#define _tfinddata32i64_t _finddata32i64_t
#define _tfinddata64i32_t _finddata64i32_t
#define _tfindfirst64i32 _findfirst64i32
#define _tfindnext32i64 _findnext32i64
#define _tfindnext64i32 _findnext64i32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
#define _tstati64 _stati64
#define _tstat64 _stat64
-#if __MSVCRT_VERSION__ >= 0x0800
#define _tstat32 _stat32
#define _tstat32i64 _stat32i64
#define _tstat64i32 _stat64i32
-#endif /* __MSVCRT_VERSION__ > 0x0800 */
/* dirent structures and functions */
#define _tdirent dirent
#define _ttelldir telldir
#define _tseekdir seekdir
-#endif /* Not _UNICODE */
+#endif /* ! _UNICODE */
/*
* UNICODE a constant string when _UNICODE is defined else returns the string
#define _TEXT(x) __TEXT(x)
#define _T(x) __TEXT(x)
-#endif /* Not _TCHAR_H */
+#endif /* ! _TCHAR_H */
#ifndef _TIME_H
#define _TIME_H
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
#define __need_wchar_t
#define __need_size_t
#define __need_NULL
+
#ifndef RC_INVOKED
#include <stddef.h>
#endif /* Not RC_INVOKED */
#define _TIME32_T_DEFINED
#endif
-#ifndef __STRICT_ANSI__
-/* A 64-bit time_t to get to Y3K */
#ifndef _TIME64_T_DEFINED
+/* A 64-bit time_t to get to Y3K */
typedef __int64 __time64_t;
#define _TIME64_T_DEFINED
#endif
-#endif
#ifndef _TIME_T_DEFINED
-/* FIXME __STRICT_ANSI__ ! */
-#if __MSVCRT_VERSION__ >= 0x0800
-#ifndef _USE_32BIT_TIME_T
-typedef __time64_t time_t;
-#else
-typedef __time32_t time_t;
-#endif /* !_USE_32BIT_TIME_T */
-#else
-typedef __time32_t time_t;
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
-#define _TIME_T_DEFINED
+# ifndef _USE_32BIT_TIME_T
+ typedef __time64_t time_t;
+# else
+ typedef __time32_t time_t;
+# endif /* !_USE_32BIT_TIME_T */
+# define _TIME_T_DEFINED
#endif
-
/*
* A type for measuring processor time (in clock ticks).
*/
#endif
_CRTIMP clock_t __cdecl __MINGW_NOTHROW clock (void);
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP time_t __cdecl __MINGW_NOTHROW time (time_t*);
_CRTIMP double __cdecl __MINGW_NOTHROW difftime (time_t, time_t);
_CRTIMP time_t __cdecl __MINGW_NOTHROW mktime (struct tm*);
-#endif
/*
* These functions write to and return pointers to static buffers that may
* a directory gives 'invalid' times in st_atime etc...
*/
_CRTIMP char* __cdecl __MINGW_NOTHROW asctime (const struct tm*);
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP char* __cdecl __MINGW_NOTHROW ctime (const time_t*);
_CRTIMP struct tm* __cdecl __MINGW_NOTHROW gmtime (const time_t*);
_CRTIMP struct tm* __cdecl __MINGW_NOTHROW localtime (const time_t*);
-#endif
_CRTIMP size_t __cdecl __MINGW_NOTHROW strftime (char*, size_t, const char*, const struct tm*);
_CRTIMP char* __cdecl __MINGW_NOTHROW _strtime(char*);
/* These require newer versions of msvcrt.dll (6.10 or higher). */
-#if __MSVCRT_VERSION__ >= 0x0601
_CRTIMP __time64_t __cdecl __MINGW_NOTHROW _time64( __time64_t*);
_CRTIMP __time64_t __cdecl __MINGW_NOTHROW _mktime64 (struct tm*);
_CRTIMP char* __cdecl __MINGW_NOTHROW _ctime64 (const __time64_t*);
_CRTIMP struct tm* __cdecl __MINGW_NOTHROW _gmtime64 (const __time64_t*);
_CRTIMP struct tm* __cdecl __MINGW_NOTHROW _localtime64 (const __time64_t*);
-#endif /* __MSVCRT_VERSION__ >= 0x0601 */
/* These require newer versions of msvcrt.dll (8.00 or higher). */
-#if __MSVCRT_VERSION__ >= 0x0800
_CRTIMP __time32_t __cdecl __MINGW_NOTHROW _time32 (__time32_t*);
_CRTIMP double __cdecl __MINGW_NOTHROW _difftime32 (__time32_t, __time32_t);
_CRTIMP double __cdecl __MINGW_NOTHROW _difftime64 (__time64_t, __time64_t);
_CRTIMP char* __cdecl __MINGW_NOTHROW _ctime32 (const __time32_t*);
_CRTIMP struct tm* __cdecl __MINGW_NOTHROW _gmtime32 (const __time32_t*);
_CRTIMP struct tm* __cdecl __MINGW_NOTHROW _localtime32 (const __time32_t*);
+
#ifndef _USE_32BIT_TIME_T
_CRTALIAS time_t __cdecl __MINGW_NOTHROW time (time_t* _v) { return(_time64 (_v)); }
_CRTALIAS double __cdecl __MINGW_NOTHROW difftime (time_t _v1, time_t _v2) { return(_difftime64 (_v1,_v2)); }
_CRTALIAS struct tm* __cdecl __MINGW_NOTHROW gmtime (const time_t* _v) { return(_gmtime32 (_v)); }
_CRTALIAS struct tm* __cdecl __MINGW_NOTHROW localtime (const time_t* _v) { return(_localtime32 (_v)); }
#endif /* !_USE_32BIT_TIME_T */
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
/*
#ifndef _WTIME_DEFINED
/* wide function prototypes, also declared in wchar.h */
+
#ifndef __STRICT_ANSI__
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wasctime(const struct tm*);
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wctime(const time_t*);
-#endif
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wstrdate(wchar_t*);
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wstrtime(wchar_t*);
-#if __MSVCRT_VERSION__ >= 0x0601
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wctime64 (const __time64_t*);
-#endif
-#if __MSVCRT_VERSION__ >= 0x0800
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wctime32 (const __time32_t*);
+
#ifndef _USE_32BIT_TIME_T
_CRTALIAS wchar_t* __cdecl __MINGW_NOTHROW _wctime (const time_t* _v) { return(_wctime64 (_v)); }
#else
_CRTALIAS wchar_t* __cdecl __MINGW_NOTHROW _wctime (const time_t* _v) { return(_wctime32 (_v)); }
#endif
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
+
#endif /* __STRICT_ANSI__ */
+
_CRTIMP size_t __cdecl __MINGW_NOTHROW wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*);
#define _WTIME_DEFINED
#endif /* _WTIME_DEFINED */
#endif
#endif /* Not RC_INVOKED */
+
#endif /* Not _TIME_H */
#ifndef _TLHELP32_H
#define _TLHELP32_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define HF32_DEFAULT 1
#define HF32_SHARED 2
#define LF32_FIXED 0x1
BOOL WINAPI Thread32Next(HANDLE,LPTHREADENTRY32);
BOOL WINAPI Toolhelp32ReadProcessMemory(DWORD,LPCVOID,LPVOID,DWORD,LPDWORD);
HANDLE WINAPI CreateToolhelp32Snapshot(DWORD,DWORD);
+
+/* Cannot use __AW() since there is no A version. */
#ifdef UNICODE
#define LPMODULEENTRY32 LPMODULEENTRY32W
#define LPPROCESSENTRY32 LPPROCESSENTRY32W
#define Process32First Process32FirstW
#define Process32Next Process32NextW
#endif /* UNICODE */
+
#ifdef __cplusplus
}
#endif
-#endif /* _TLHELP32_H */
+#endif /* _TLHELP32_H */
#ifndef _TMSCHEMA_H
#define _TMSCHEMA_H
#pragma GCC system_header
+#include <_mingw.h>
/* BUTTON parts */
enum {
#ifndef _UNISTD_H
#define _UNISTD_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* unistd.h maps (roughly) to io.h
#ifndef _UNKNWN_H
#define _UNKNWN_H
#pragma GCC system_header
+#include <_mingw.h>
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#endif
-
#ifdef __cplusplus
extern "C"{
#endif
+
#include <objfwd.h>
#include <wtypes.h>
void __RPC_USER MIDL_user_free(void*);
EXTERN_C const IID IID_IUnknown;
EXTERN_C const IID IID_IClassFactory;
+
#ifndef __IUnknown_INTERFACE_DEFINED__
#define __IUnknown_INTERFACE_DEFINED__
#define INTERFACE IUnknown
#undef INTERFACE
typedef IUnknown *LPUNKNOWN;
#endif
+
#ifndef __IClassFactory_INTERFACE_DEFINED__
#define __IClassFactory_INTERFACE_DEFINED__
#define INTERFACE IClassFactory
#undef INTERFACE
typedef IClassFactory *LPCLASSFACTORY;
#endif
+
HRESULT STDMETHODCALLTYPE IUnknown_QueryInterface_Proxy(IUnknown*,REFIID,void**);
void __RPC_STUB IUnknown_QueryInterface_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD);
ULONG STDMETHODCALLTYPE IUnknown_AddRef_Proxy(IUnknown*);
#define IClassFactory_CreateInstance(T,p,r,O) (T)->lpVtbl->CreateInstance(T,p,r,O)
#define IClassFactory_LockServer(T,f) (T)->lpVtbl->LockServer(T,f)
#endif /* COBJMACROS */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _USERENV_H
#define _USERENV_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define PI_NOUI (1)
#define PI_APPLYPOLICY (2)
-#if (_WIN32_WINNT >= 0x0500)
-#define PT_TEMPORARY (1)
-#define PT_ROAMING (2)
-#define PT_MANDATORY (4)
-#endif
+
typedef struct _PROFILEINFOA {
DWORD dwSize;
DWORD dwFlags;
BOOL WINAPI GetUserProfileDirectoryW(HANDLE,LPWSTR,LPDWORD);
BOOL WINAPI CreateEnvironmentBlock(LPVOID*,HANDLE,BOOL);
BOOL WINAPI DestroyEnvironmentBlock(LPVOID);
-#if (_WIN32_WINNT >= 0x0500)
+
+typedef __AW(PROFILEINFO) PROFILEINFO;
+typedef __AW(LPPROFILEINFO) LPPROFILEINFO;
+#define LoadUserProfile __AW(LoadUserProfile)
+#define GetProfilesDirectory __AW(GetProfilesDirectory)
+#define GetUserProfileDirectory __AW(GetUserProfileDirectory)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+#define PT_TEMPORARY (1)
+#define PT_ROAMING (2)
+#define PT_MANDATORY (4)
BOOL WINAPI DeleteProfileA(LPCSTR,LPCSTR,LPCSTR);
BOOL WINAPI DeleteProfileW(LPCWSTR,LPCWSTR,LPCWSTR);
BOOL WINAPI GetProfileType(DWORD *);
BOOL WINAPI GetDefaultUserProfileDirectoryW(LPWSTR,LPDWORD);
BOOL WINAPI ExpandEnvironmentStringsForUserA(HANDLE,LPCSTR,LPSTR,DWORD);
BOOL WINAPI ExpandEnvironmentStringsForUserW(HANDLE,LPCWSTR,LPWSTR,DWORD);
-#endif
-#if (_WIN32_WINNT >= 0x0600)
+#define DeleteProfile __AW(DeleteProfile)
+#define GetAllUsersProfileDirectory __AW(GetAllUsersProfileDirectory)
+#define GetDefaultUserProfileDirectory __AW(GetDefaultUserProfileDirectory)
+#define ExpandEnvironmentStringsForUser __AW(ExpandEnvironmentStringsForUser)
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
HRESULT WINAPI CreateProfile(LPCWSTR,LPCWSTR,LPWSTR,DWORD);
#endif
-#ifdef UNICODE
-typedef PROFILEINFOW PROFILEINFO;
-typedef LPPROFILEINFOW LPPROFILEINFO;
-#define LoadUserProfile LoadUserProfileW
-#define GetProfilesDirectory GetProfilesDirectoryW
-#define GetUserProfileDirectory GetUserProfileDirectoryW
-#if (_WIN32_WINNT >= 0x0500)
-#define DeleteProfile DeleteProfileW
-#define GetAllUsersProfileDirectory GetAllUsersProfileDirectoryW
-#define GetDefaultUserProfileDirectory GetDefaultUserProfileDirectoryW
-#define ExpandEnvironmentStringsForUser ExpandEnvironmentStringsForUserW
-#endif
-#else
-typedef PROFILEINFOA PROFILEINFO;
-typedef LPPROFILEINFOA LPPROFILEINFO;
-#define LoadUserProfile LoadUserProfileA
-#define GetProfilesDirectory GetProfilesDirectoryA
-#define GetUserProfileDirectory GetUserProfileDirectoryA
-#if (_WIN32_WINNT >= 0x0500)
-#define DeleteProfile DeleteProfileA
-#define GetAllUsersProfileDirectory GetAllUsersProfileDirectoryA
-#define GetDefaultUserProfileDirectory GetDefaultUserProfileDirectoryA
-#define ExpandEnvironmentStringsForUser ExpandEnvironmentStringsForUserA
-#endif
-#endif
+
#ifdef __cplusplus
}
#endif
+
#endif /* _USERENV_H */
#ifndef _USP10_H
#define _USP10_H
#pragma GCC system_header
+#include <_mingw.h>
#include <windows.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#pragma pack(push,1)
#define SCRIPT_UNDEFINED 0
#pragma pack(pop)
+
#ifdef __cplusplus
}
#endif
#ifndef _UTIME_H
#define _UTIME_H
#pragma GCC system_header
+#include <_mingw.h>
#include <sys/utime.h>
#ifndef _UXTHEME_H
#define _UXTHEME_H
#pragma GCC system_header
+#include <_mingw.h>
#include <commctrl.h>
extern "C" {
#endif
-#if (_WIN32_WINNT >= 0x0501)
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
#define DTBG_CLIPRECT 0x00000001
#define DTBG_DRAWSOLID 0x00000002
#define DTBG_OMITBORDER 0x00000004
HTHEME WINAPI OpenThemeData(HWND,LPCWSTR);
void WINAPI SetThemeAppProperties(DWORD);
HRESULT WINAPI SetWindowTheme(HWND,LPCWSTR,LPCWSTR);
-#endif
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _VALUES_H
#define _VALUES_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* TODO: Nothing here yet. Should provide UNIX compatibility constants
#ifndef _VFW_H
#define _VFW_H
#pragma GCC system_header
+#include <_mingw.h>
#include <windows.h>
#include <mmsystem.h>
+
#ifndef _OBJC_NO_COM
#include <ole2.h>
#endif
#define PD_STRETCHDIB_1_1_OK 0x04
#define PD_STRETCHDIB_1_2_OK 0x08
#define PD_STRETCHDIB_1_N_OK 0x10
+
#ifndef mmioFOURCC
#define mmioFOURCC(c0,c1,c2,c3) ((DWORD)(BYTE)(c0)|((DWORD)(BYTE)(c1)<<8)|((DWORD)(BYTE)(c2)<<16)|((DWORD)(BYTE)(c3)<<24))
#endif
+
#ifndef aviTWOCC
#define aviTWOCC(ch0,ch1) ((WORD)(BYTE)(ch0)|((WORD)(BYTE)(ch1)<<8))
#endif
void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS);
LPVOID VFWAPI ICSeqCompressFrame(PCOMPVARS,UINT,LPVOID,BOOL*,LONG*);
void VFWAPI ICCompressorFree(PCOMPVARS);
+
#if !defined (_OBJC_NO_COM)
ULONG WINAPI AVIStreamAddRef(PAVISTREAM);
ULONG WINAPI AVIStreamRelease(PAVISTREAM);
HRESULT WINAPI AVIGetFromClipboard(PAVIFILE*);
HRESULT WINAPI AVIPutFileOnClipboard(PAVIFILE);
#endif /* _OBJC_NO_COM */
+
#ifdef OFN_READONLY
BOOL WINAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA);
BOOL WINAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW);
BOOL WINAPI GetSaveFileNamePreviewA(LPOPENFILENAMEA);
BOOL WINAPI GetSaveFileNamePreviewW(LPOPENFILENAMEW);
#endif
+
HWND VFWAPIV MCIWndCreateA(HWND,HINSTANCE,DWORD,LPCSTR);
HWND VFWAPIV MCIWndCreateW(HWND,HINSTANCE,DWORD,LPCWSTR);
HDRAWDIB VFWAPI DrawDibOpen(VOID);
#define AVStreamPrevKeyFrame(pavi,pos) AVIStreamFindSample(pavi,pos-1,FIND_NEXT|FIND_KEY)
#define AVIStreamNearestKeyFrame(pavi,pos) AVIStreamFindSample(pavi,pos,FIND_PREV|FIND_KEY)
#define AVIStreamIsKeyFrame(pavi, pos) (AVIStreamNearestKeyFrame(pavi,pos) == pos)
+
#ifdef __cplusplus
#define MCIWndSM ::SendMessage
#else
#define MCIWndSM SendMessage
#endif
+
#define MCIWndCanPlay(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_PLAY,0,0)
#define MCIWndCanRecord(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_RECORD,0,0)
#define MCIWndCanSave(hWnd) (BOOL)MCIWndSM(hWnd,MCIWNDM_CAN_SAVE,0,0)
#define WM_CAP_PAL_MANUALCREATE (WM_USER + 84)
#define WM_CAP_SET_CALLBACK_CAPCONTROL (WM_USER + 85)
-#ifdef UNICODE
-#define WM_CAP_SET_CALLBACK_ERROR WM_CAP_SET_CALLBACK_ERRORW
-#define WM_CAP_SET_CALLBACK_FRAME WM_CAP_SET_CALLBACK_FRAMEW
-#define WM_CAP_DRIVER_GET_NAME WM_CAP_DRIVER_GET_NAMEW
-#define WM_CAP_DRIVER_GET_VERSION WM_CAP_DRIVER_GET_VERSIONW
-#define WM_CAP_FILE_SET_CAPTURE_FILE WM_CAP_FILE_SET_CAPTURE_FILEW
-#define WM_CAP_FILE_GET_CAPTURE_FILE WM_CAP_FILE_GET_CAPTURE_FILEW
-#define WM_CAP_FILE_SAVEAS WM_CAP_FILE_SAVEASW
-#define WM_CAP_FILE_SAVEDIB WM_CAP_FILE_SAVEDIBW
-#define WM_CAP_SET_MCI_DEVICE WM_CAP_SET_MCI_DEVICEW
-#define WM_CAP_GET_MCI_DEVICE WM_CAP_GET_MCI_DEVICEW
-#define WM_CAP_PAL_OPEN WM_CAP_PAL_OPENW
-#define WM_CAP_PAL_SAVE WM_CAP_PAL_SAVEW
-#else
-#define WM_CAP_SET_CALLBACK_ERROR WM_CAP_SET_CALLBACK_ERRORA
-#define WM_CAP_SET_CALLBACK_FRAME WM_CAP_SET_CALLBACK_FRAMEA
-#define WM_CAP_DRIVER_GET_NAME WM_CAP_DRIVER_GET_NAMEA
-#define WM_CAP_DRIVER_GET_VERSION WM_CAP_DRIVER_GET_VERSIONA
-#define WM_CAP_FILE_SET_CAPTURE_FILE WM_CAP_FILE_SET_CAPTURE_FILEA
-#define WM_CAP_FILE_GET_CAPTURE_FILE WM_CAP_FILE_GET_CAPTURE_FILEA
-#define WM_CAP_FILE_SAVEAS WM_CAP_FILE_SAVEASA
-#define WM_CAP_FILE_SAVEDIB WM_CAP_FILE_SAVEDIBA
-#define WM_CAP_SET_MCI_DEVICE WM_CAP_SET_MCI_DEVICEA
-#define WM_CAP_GET_MCI_DEVICE WM_CAP_GET_MCI_DEVICEA
-#define WM_CAP_PAL_OPEN WM_CAP_PAL_OPENA
-#define WM_CAP_PAL_SAVE WM_CAP_PAL_SAVEA
-#endif
+#define WM_CAP_SET_CALLBACK_ERROR __AW(WM_CAP_SET_CALLBACK_ERROR)
+#define WM_CAP_SET_CALLBACK_FRAME __AW(WM_CAP_SET_CALLBACK_FRAME)
+#define WM_CAP_DRIVER_GET_NAME __AW(WM_CAP_DRIVER_GET_NAME)
+#define WM_CAP_DRIVER_GET_VERSION __AW(WM_CAP_DRIVER_GET_VERSION)
+#define WM_CAP_FILE_SET_CAPTURE_FILE __AW(WM_CAP_FILE_SET_CAPTURE_FILE)
+#define WM_CAP_FILE_GET_CAPTURE_FILE __AW(WM_CAP_FILE_GET_CAPTURE_FILE)
+#define WM_CAP_FILE_SAVEAS __AW(WM_CAP_FILE_SAVEAS)
+#define WM_CAP_FILE_SAVEDIB __AW(WM_CAP_FILE_SAVEDIB)
+#define WM_CAP_SET_MCI_DEVICE __AW(WM_CAP_SET_MCI_DEVICE)
+#define WM_CAP_GET_MCI_DEVICE __AW(WM_CAP_GET_MCI_DEVICE)
+#define WM_CAP_PAL_OPEN __AW(WM_CAP_PAL_OPEN)
+#define WM_CAP_PAL_SAVE __AW(WM_CAP_PAL_SAVE)
#define __capSendMessage(hwnd,m,w,l) (IsWindow(hwnd)?SendMessage(hwnd,m,w,l):0)
BOOL VFWAPI capGetDriverDescriptionA (UINT,LPSTR,int,LPSTR,int);
BOOL VFWAPI capGetDriverDescriptionW (UINT,LPWSTR,int,LPWSTR,int);
-#ifdef UNICODE
-#define AVISTREAMINFO AVISTREAMINFOW
-#define LPAVISTREAMINFO LPAVISTREAMINFOW
-#define PAVISTREAMINFO PAVISTREAMINFOW
-#define AVIFILEINFO AVIFILEINFOW
-#define PAVIFILEINFO PAVIFILEINFOW
-#define LPAVIFILEINFO LPAVIFILEINFOW
-#define AVIStreamInfo AVIStreamInfoW
-#define AVIStreamOpenFromFile AVIStreamOpenFromFileW
-#define AVIBuildFilter AVIBuildFilterW
-#define AVISaveV AVISaveVW
-#define EditStreamSetInfo EditStreamSetInfoW
-#define EditStreamSetName EditStreamSetNameW
-#define AVIFileOpen AVIFileOpenW
-#define AVIFileInfo AVIFileInfoW
-#define AVIFileCreateStream AVIFileCreateStreamW
-#define GetOpenFileNamePreview GetOpenFileNamePreviewW
-#define GetSaveFileNamePreview GetSaveFileNamePreviewW
-#define MCIWndCreate MCIWndCreateW
-#define MCIWNDF_NOTIFYMEDIA MCIWNDF_NOTIFYMEDIAW
-#define MCIWNDM_SENDSTRING MCIWNDM_SENDSTRINGW
-#define MCIWNDM_GETPOSITION MCIWNDM_GETPOSITIONW
-#define MCIWNDM_GETMODE MCIWNDM_GETMODEW
-#define MCIWNDM_SETTIMEFORMAT MCIWNDM_SETTIMEFORMATW
-#define MCIWNDM_GETTIMEFORMAT MCIWNDM_GETTIMEFORMATW
-#define MCIWNDM_GETFILENAME MCIWNDM_GETFILENAMEW
-#define MCIWNDM_GETDEVICE MCIWNDM_GETDEVICEW
-#define MCIWNDM_GETERROR MCIWNDM_GETERRORW
-#define MCIWNDM_NEW MCIWNDM_NEWW
-#define MCIWNDM_RETURNSTRING MCIWNDM_RETURNSTRINGW
-#define MCIWNDM_OPEN MCIWNDM_OPENW
-
-#define capCreateCaptureWindow capCreateCaptureWindowW
-#define capGetDriverDescription capGetDriverDescriptionW
-
-#else
-#define AVISTREAMINFO AVISTREAMINFOA
-#define LPAVISTREAMINFO LPAVISTREAMINFOA
-#define PAVISTREAMINFO PAVISTREAMINFOA
-#define AVIFILEINFO AVIFILEINFOA
-#define PAVIFILEINFO PAVIFILEINFOA
-#define LPAVIFILEINFO LPAVIFILEINFOA
-#define AVIStreamInfo AVIStreamInfoA
-#define AVIStreamOpenFromFile AVIStreamOpenFromFileA
-#define AVIBuildFilter AVIBuildFilterA
-#define AVISaveV AVISaveVA
-#define EditStreamSetInfo EditStreamSetInfoA
-#define EditStreamSetName EditStreamSetNameA
-#define AVIFileOpen AVIFileOpenA
-#define AVIFileInfo AVIFileInfoA
-#define AVIFileCreateStream AVIFileCreateStreamA
-#define GetOpenFileNamePreview GetOpenFileNamePreviewA
-#define GetSaveFileNamePreview GetSaveFileNamePreviewA
-#define MCIWndCreate MCIWndCreateA
-#define MCIWNDF_NOTIFYMEDIA MCIWNDF_NOTIFYMEDIAA
-#define MCIWNDM_SENDSTRING MCIWNDM_SENDSTRINGA
-#define MCIWNDM_GETPOSITION MCIWNDM_GETPOSITIONA
-#define MCIWNDM_GETMODE MCIWNDM_GETMODEA
-#define MCIWNDM_SETTIMEFORMAT MCIWNDM_SETTIMEFORMATA
-#define MCIWNDM_GETTIMEFORMAT MCIWNDM_GETTIMEFORMATA
-#define MCIWNDM_GETFILENAME MCIWNDM_GETFILENAMEA
-#define MCIWNDM_GETDEVICE MCIWNDM_GETDEVICEA
-#define MCIWNDM_GETERROR MCIWNDM_GETERRORA
-#define MCIWNDM_NEW MCIWNDM_NEWA
-#define MCIWNDM_RETURNSTRING MCIWNDM_RETURNSTRINGA
-#define MCIWNDM_OPEN MCIWNDM_OPENA
-
-#define capCreateCaptureWindow capCreateCaptureWindowA
-#define capGetDriverDescription capGetDriverDescriptionA
+#define AVISTREAMINFO __AW(AVISTREAMINFO)
+#define LPAVISTREAMINFO __AW(LPAVISTREAMINFO)
+#define PAVISTREAMINFO __AW(PAVISTREAMINFO)
+#define AVIFILEINFO __AW(AVIFILEINFO)
+#define PAVIFILEINFO __AW(PAVIFILEINFO)
+#define LPAVIFILEINFO __AW(LPAVIFILEINFO)
+#define AVIStreamInfo __AW(AVIStreamInfo)
+#define AVIStreamOpenFromFile __AW(AVIStreamOpenFromFile)
+#define AVIBuildFilter __AW(AVIBuildFilter)
+#define AVISaveV __AW(AVISaveV)
+#define EditStreamSetInfo __AW(EditStreamSetInfo)
+#define EditStreamSetName __AW(EditStreamSetName)
+#define AVIFileOpen __AW(AVIFileOpen)
+#define AVIFileInfo __AW(AVIFileInfo)
+#define AVIFileCreateStream __AW(AVIFileCreateStream)
+#define GetOpenFileNamePreview __AW(GetOpenFileNamePreview)
+#define GetSaveFileNamePreview __AW(GetSaveFileNamePreview)
+#define MCIWndCreate __AW(MCIWndCreate)
+#define MCIWNDF_NOTIFYMEDIA __AW(__AW(MCIWNDF_NOTIFYMEDIA)
+#define MCIWNDM_SENDSTRING __AW(__AW(MCIWNDM_SENDSTRING)
+#define MCIWNDM_GETPOSITION __AW(MCIWNDM_GETPOSITION)
+#define MCIWNDM_GETMODE __AW(MCIWNDM_GETMODE)
+#define MCIWNDM_SETTIMEFORMAT __AW(MCIWNDM_SETTIMEFORMAT)
+#define MCIWNDM_GETTIMEFORMAT __AW(MCIWNDM_GETTIMEFORMAT)
+#define MCIWNDM_GETFILENAME __AW(MCIWNDM_GETFILENAME)
+#define MCIWNDM_GETDEVICE __AW(MCIWNDM_GETDEVICE)
+#define MCIWNDM_GETERROR __AW(MCIWNDM_GETERROR)
+#define MCIWNDM_NEW __AW(MCIWNDM_NEW)
+#define MCIWNDM_RETURNSTRING __AW(MCIWNDM_RETURNSTRING)
+#define MCIWNDM_OPEN __AW(MCIWNDM_OPEN)
-#endif
+#define capCreateCaptureWindow __AW(capCreateCaptureWindow)
+#define capGetDriverDescription __AW(capGetDriverDescription)
#endif /* RC_INVOKED */
#ifdef __cplusplus
}
#endif
+
#include <poppack.h>
+
#endif /* _VFW_H */
#ifndef _VIDCAP_H
#define _VIDCAP_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _VMR9_H
#define _VMR9_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _VPTYPE_H
#define _VPTYPE_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WCHAR_H_
#define _WCHAR_H_
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
#ifndef RC_INVOKED
_CRTIMP wint_t __cdecl __MINGW_NOTHROW getwchar (void);
_CRTIMP wint_t __cdecl __MINGW_NOTHROW putwc (wint_t, FILE*);
_CRTIMP wint_t __cdecl __MINGW_NOTHROW putwchar (wint_t);
+
#ifndef __STRICT_ANSI__
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _getws (wchar_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _putws (const wchar_t*);
#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
int __cdecl __MINGW_NOTHROW snwprintf (wchar_t*, size_t, const wchar_t*, ...);
int __cdecl __MINGW_NOTHROW vsnwprintf (wchar_t*, size_t, const wchar_t*, __VALIST);
+
#ifndef __NO_INLINE__
__CRT_INLINE int __cdecl __MINGW_NOTHROW
vsnwprintf (wchar_t* s, size_t n, const wchar_t* format, __VALIST arg)
{ return _vsnwprintf ( s, n, format, arg);}
#endif
+
int __cdecl __MINGW_NOTHROW vwscanf (const wchar_t * __restrict__, __VALIST);
int __cdecl __MINGW_NOTHROW vfwscanf (FILE * __restrict__,
const wchar_t * __restrict__, __VALIST);
_CRTIMP long __cdecl __MINGW_NOTHROW wcstol (const wchar_t*, wchar_t**, int);
_CRTIMP unsigned long __cdecl __MINGW_NOTHROW wcstoul (const wchar_t*, wchar_t**, int);
_CRTIMP double __cdecl __MINGW_NOTHROW wcstod (const wchar_t*, wchar_t**);
+
#if !defined __NO_ISOCEXT /* in libmingwex.a */
float __cdecl __MINGW_NOTHROW wcstof (const wchar_t * __restrict__, wchar_t ** __restrict__);
long double __cdecl __MINGW_NOTHROW wcstold (const wchar_t * __restrict__, wchar_t ** __restrict__);
#endif /* __NO_ISOCEXT */
+
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wgetenv(const wchar_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wputenv(const wchar_t*);
_CRTIMP void __cdecl __MINGW_NOTHROW _wsearchenv(const wchar_t*, const wchar_t*, wchar_t*);
#ifndef __STRICT_ANSI__
/* wide function prototypes, also declared in time.h */
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wasctime (const struct tm*);
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wctime (const time_t*);
-#endif
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wstrdate (wchar_t*);
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wstrtime (wchar_t*);
-#if __MSVCRT_VERSION__ >= 0x601
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wctime64 (const __time64_t*);
-#endif
-#if __MSVCRT_VERSION__ >= 0x0800
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wctime32 (const __time32_t*);
+
#ifndef _USE_32BIT_TIME_T
_CRTALIAS wchar_t* __cdecl __MINGW_NOTHROW _wctime (const time_t* _v) { return(_wctime64 (_v)); }
#else
+
_CRTALIAS wchar_t* __cdecl __MINGW_NOTHROW _wctime (const time_t* _v) { return(_wctime32 (_v)); }
#endif
-#endif
#endif /* __STRICT_ANSI__ */
+
_CRTIMP size_t __cdecl __MINGW_NOTHROW wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*);
#define _WTIME_DEFINED
#endif /* _WTIME_DEFINED */
_CRTIMP int __cdecl __MINGW_NOTHROW _wcsncoll(const wchar_t*, const wchar_t*, size_t);
_CRTIMP int __cdecl __MINGW_NOTHROW _wcsnicoll(const wchar_t*, const wchar_t*, size_t);
-#if __MSVCRT_VERSION__ >= 0x0700
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wcserror(int);
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW __wcserror(const wchar_t*);
-#endif
#ifndef _NO_OLDNAMES
/* NOTE: There is no _wcscmpi, but this is for compatibility. */
versions of these functions. If you want the latter and don't have
msvcp60.dll in your windows system directory, you can easily obtain
it with a search from your favorite search engine. */
+
#ifndef __STRICT_ANSI__
typedef wchar_t _Wint_t;
#endif
#ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */
int __cdecl __MINGW_NOTHROW fwide(FILE*, int);
int __cdecl __MINGW_NOTHROW mbsinit(const mbstate_t*);
+
#ifndef __NO_INLINE__
__CRT_INLINE int __cdecl __MINGW_NOTHROW fwide(FILE* __UNUSED_PARAM(stream),
int mode)
__CRT_INLINE int __cdecl __MINGW_NOTHROW mbsinit(const mbstate_t* __UNUSED_PARAM(ps))
{return 1;}
#endif
+
wchar_t* __cdecl __MINGW_NOTHROW wmemset(wchar_t *, wchar_t, size_t);
wchar_t* __cdecl __MINGW_NOTHROW wmemchr(const wchar_t*, wchar_t, size_t);
int wmemcmp(const wchar_t*, const wchar_t *, size_t);
__int64 size;
wchar_t name[260];
};
-#if __MSVCRT_VERSION__ >= 0x0601
struct __wfinddata64_t {
unsigned attrib;
__time64_t time_create;
__int64 size;
wchar_t name[260];
};
-#endif
-#if __MSVCRT_VERSION__ >= 0x0800
#include <stdio.h>
struct __wfinddata32_t {
unsigned attrib;
__int32 size;
wchar_t name[FILENAME_MAX];
};
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
#define _WFINDDATA_T_DEFINED
#endif
_CRTIMP int __cdecl __MINGW_NOTHROW _waccess (const wchar_t*, int);
_CRTIMP int __cdecl __MINGW_NOTHROW _wchmod (const wchar_t*, int);
_CRTIMP int __cdecl __MINGW_NOTHROW _wcreat (const wchar_t*, int);
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP long __cdecl __MINGW_NOTHROW _wfindfirst (const wchar_t*, struct _wfinddata_t *);
_CRTIMP int __cdecl __MINGW_NOTHROW _wfindnext (long, struct _wfinddata_t *);
-#endif
_CRTIMP int __cdecl __MINGW_NOTHROW _wunlink (const wchar_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wopen (const wchar_t*, int, ...);
_CRTIMP int __cdecl __MINGW_NOTHROW _wsopen (const wchar_t*, int, int, ...);
_CRTIMP wchar_t* __cdecl __MINGW_NOTHROW _wmktemp (wchar_t*);
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP long __cdecl __MINGW_NOTHROW _wfindfirsti64 (const wchar_t*, struct _wfinddatai64_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wfindnexti64 (long, struct _wfinddatai64_t*);
-#else
_CRTIMP long __cdecl __MINGW_NOTHROW _wfindfirst32i64 (const wchar_t*, struct _wfinddata32i64_t*);
_CRTIMP long __cdecl __MINGW_NOTHROW _wfindfirst64i32 (const wchar_t*, struct _wfinddata64i32_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wfindnext32i64 (long, struct _wfinddata32i64_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wfindnext64i32 (long, struct _wfinddata64i32_t*);
-#endif /* __MSVCRT_VERSION__ < 0x0800 */
-#if __MSVCRT_VERSION__ >= 0x0601
_CRTIMP intptr_t __cdecl __MINGW_NOTHROW _wfindfirst64(const wchar_t*, struct __wfinddata64_t*);
_CRTIMP intptr_t __cdecl __MINGW_NOTHROW _wfindnext64(intptr_t, struct __wfinddata64_t*);
-#endif /* __MSVCRT_VERSION__ >= 0x0601 */
-#if __MSVCRT_VERSION__ >= 0x0800
_CRTIMP long __cdecl __MINGW_NOTHROW _wfindfirst32 (const wchar_t*, struct __wfinddata32_t*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wfindnext32 (long, struct __wfinddata32_t*);
+
#ifndef _USE_32BIT_TIME_T
_CRTALIAS long __cdecl __MINGW_NOTHROW _wfindfirst (const wchar_t* _v1, struct _wfinddata_t* _v2) { return(_wfindfirst64i32 (_v1,(struct _wfinddata64i32_t*)_v2)); }
_CRTALIAS int __cdecl __MINGW_NOTHROW _wfindnext (long _v1, struct _wfinddata_t* _v2) { return(_wfindnext64i32 (_v1,(struct _wfinddata64i32_t*)_v2)); }
_CRTALIAS long __cdecl __MINGW_NOTHROW _wfindfirsti64 (const wchar_t* _v1, struct _wfinddatai64_t* _v2) { return(_wfindfirst32i64 (_v1,(struct _wfinddata32i64_t*)_v2)); }
_CRTALIAS int __cdecl __MINGW_NOTHROW _wfindnexti64 (long _v1, struct _wfinddatai64_t* _v2) { return(_wfindnext32i64 (_v1,(struct _wfinddata32i64_t*)_v2)); }
#endif /* !_USE_32BIT_TIME_T*/
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
#define _WIO_DEFINED
#endif /* _WIO_DEFINED */
time_t st_ctime;
};
-#if __MSVCRT_VERSION__ >= 0x0601
struct __stat64
{
_dev_t st_dev;
__time64_t st_mtime;
__time64_t st_ctime;
};
-#endif /* __MSVCRT_VERSION__ >= 0x0601*/
-#if __MSVCRT_VERSION__ >= 0x0800
struct __stat32
{
_dev_t st_dev;
__time64_t st_mtime;
__time64_t st_ctime;
};
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
#define _STAT_DEFINED
#endif /* _STAT_DEFINED */
#if !defined ( _WSTAT_DEFINED)
/* also declared in sys/stat.h */
-#if __MSVCRT_VERSION__ < 0x0800
_CRTIMP int __cdecl __MINGW_NOTHROW _wstat (const wchar_t*, struct _stat*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wstati64 (const wchar_t*, struct _stati64*);
-#endif /* __MSVCRT_VERSION__ < 0x0800 */
-#if __MSVCRT_VERSION__ >= 0x0601
_CRTIMP int __cdecl __MINGW_NOTHROW _wstat64 (const wchar_t*, struct __stat64*);
-#endif /* __MSVCRT_VERSION__ >= 0x0601 */
-#if __MSVCRT_VERSION__ >= 0x0800
_CRTIMP int __cdecl __MINGW_NOTHROW _wstat32 (const wchar_t*, struct __stat32*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wstat32i64 (const wchar_t*, struct _stat32i64*);
_CRTIMP int __cdecl __MINGW_NOTHROW _wstat64i32 (const wchar_t*, struct _stat64i32*);
+
#ifndef _USE_32BIT_TIME_T
_CRTALIAS int __cdecl __MINGW_NOTHROW _wstat (const wchar_t* _v1, struct _stat* _v2) { return(_wstat64i32 (_v1,(struct _stat64i32*)_v2)); }
_CRTALIAS int __cdecl __MINGW_NOTHROW _wstati64 (const wchar_t* _v1, struct _stati64* _v2) { return(_wstat64 (_v1,(struct __stat64*)_v2)); }
#else
+
_CRTALIAS int __cdecl __MINGW_NOTHROW _wstat (const wchar_t* _v1, struct _stat* _v2) { return(_wstat32 (_v1,(struct __stat32*)_v2)); }
_CRTALIAS int __cdecl __MINGW_NOTHROW _wstati64 (const wchar_t* _v1, struct _stati64* _v2) { return(_wstat32i64 (_v1,(struct _stat32i64*)_v2)); }
#endif /* !_USE_32BIT_TIME_T */
-#endif /* __MSVCRT_VERSION__ >= 0x0800 */
+
#define _WSTAT_DEFINED
#endif /* ! _WSTAT_DEFIND */
#define _WPROCESS_DEFINED
#endif
+
#endif /* not __STRICT_ANSI__ */
#ifdef __cplusplus
#endif /* Not RC_INVOKED */
#endif /* not _WCHAR_H_ */
-
#ifndef _WCTYPE_H
#define _WCTYPE_H
#pragma GCC system_header
-
-/* All the headers include this file. */
#include <_mingw.h>
#define __need_wchar_t
#define __need_wint_t
+
#ifndef RC_INVOKED
#include <stddef.h>
#endif /* Not RC_INVOKED */
/* Also in ctype.h */
-# if __MSVCRT_VERSION__ <= 0x0700
__MINGW_IMPORT unsigned short _ctype[];
-# endif
__MINGW_IMPORT unsigned short* _pctype;
#endif
#endif /* Not RC_INVOKED */
+
#endif /* Not _WCTYPE_H */
#ifndef _WINABLE_H
#define _WINABLE_H
#pragma GCC system_header
+#include <_mingw.h>
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if (_WIN32_WINNT < 0x0403)
-#define INPUT_MOUSE 0x00000000
-#define INPUT_KEYBOARD 0x00000001
-#define INPUT_HARDWARE 0x00000002
-#endif /* (_WIN32_WINNT < 0x04030) */
-#if (WINVER < 0x0500)
-#define CHILDID_SELF 0
-#define OBJID_WINDOW 0x00000000
-#define OBJID_SYSMENU 0xFFFFFFFF
-#define OBJID_TITLEBAR 0xFFFFFFFE
-#define OBJID_MENU 0xFFFFFFFD
-#define OBJID_CLIENT 0xFFFFFFFC
-#define OBJID_VSCROLL 0xFFFFFFFB
-#define OBJID_HSCROLL 0xFFFFFFFA
-#define OBJID_SIZEGRIP 0xFFFFFFF9
-#define OBJID_CARET 0xFFFFFFF8
-#define OBJID_CURSOR 0xFFFFFFF7
-#define OBJID_ALERT 0xFFFFFFF6
-#define OBJID_SOUND 0xFFFFFFF5
-#define GUI_CARETBLINKING 0x00000001
-#define GUI_INMOVESIZE 0x00000002
-#define GUI_INMENUMODE 0x00000004
-#define GUI_SYSTEMMENUMODE 0x00000008
-#define GUI_POPUPMENUMODE 0x00000010
-#define WINEVENT_OUTOFCONTEXT 0x0000
-#define WINEVENT_SKIPOWNTHREAD 0x0001
-#define WINEVENT_SKIPOWNPROCESS 0x0002
-#define WINEVENT_INCONTEXT 0x0004
-#endif /* (WINVER < 0x0500) */
-#if (_WIN32_WINNT < 0x0403)
-typedef struct tagMOUSEINPUT {
- LONG dx;
- LONG dy;
- DWORD mouseData;
- DWORD dwFlags;
- DWORD time;
- ULONG_PTR dwExtraInfo;
-} MOUSEINPUT,*PMOUSEINPUT;
-typedef struct tagKEYBDINPUT {
- WORD wVk;
- WORD wScan;
- DWORD dwFlags;
- DWORD time;
- ULONG_PTR dwExtraInfo;
-} KEYBDINPUT,*PKEYBDINPUT;
-typedef struct tagHARDWAREINPUT {
- DWORD uMsg;
- WORD wParamL;
- WORD wParamH;
-} HARDWAREINPUT,*PHARDWAREINPUT;
-typedef struct tagINPUT {
- DWORD type;
- _ANONYMOUS_UNION union {
- MOUSEINPUT mi;
- KEYBDINPUT ki;
- HARDWAREINPUT hi;
- } DUMMYUNIONNAME;
-} INPUT,*PINPUT,*LPINPUT;
-#endif /* (_WIN32_WINNT < 0x0403) */
-#if (WINVER < 0x0500)
-typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
-typedef struct tagGUITHREADINFO {
- DWORD cbSize;
- DWORD flags;
- HWND hwndActive;
- HWND hwndFocus;
- HWND hwndCapture;
- HWND hwndMenuOwner;
- HWND hwndMoveSize;
- HWND hwndCaret;
- RECT rcCaret;
-} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
-#endif /* (WINVER < 0x0500) */
+#warning WARNING - This file is deprecated use winuser.h instead.
+/* http://social.msdn.microsoft.com/forums/en-US/windowssdk/thread/ee57cc38-1dc6-4a5f-b7e3-1f16dbd91b83/ */
+#include <winuser.h>
-BOOL WINAPI BlockInput(BOOL);
-#if (_WIN32_WINNT < 0x0403)
-UINT WINAPI SendInput(UINT,LPINPUT,int);
-#endif
-#if (WINVER < 0x0500)
-BOOL WINAPI GetGUIThreadInfo(DWORD,LPGUITHREADINFO);
-void WINAPI NotifyWinEvent(DWORD,HWND,LONG,LONG);
-HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
-BOOL WINAPI UnhookWinEvent(HWINEVENTHOOK);
-#endif /* (WINVER < 0x0500) */
-
-#ifdef __cplusplus
-}
-#endif
#endif
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
- *
+ *
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
- *
+ *
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
#ifndef _WINBASE_H
#define _WINBASE_H
#pragma GCC system_header
+#include <_mingw.h>
#define __GNUC_EXTENSION __extension__
#define COPY_FILE_FAIL_IF_EXISTS 0x0001
#define COPY_FILE_RESTARTABLE 0x0002
#define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x0004
-#if (_WIN32_WINNT > 0x0500)
-#define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x0008
-#if (_WIN32_WINNT > 0x0501)
-#define COPY_FILE_COPY_SYMLINK 0x0800
-#define COPY_FILE_NO_BUFFERING 0x1000
-#endif
-#endif
+
#define OFS_MAXPATHNAME 128
#define FILE_MAP_ALL_ACCESS 0xf001f
#define FILE_MAP_READ 4
#define FILE_FLAG_POSIX_SEMANTICS 16777216
#define FILE_FLAG_OPEN_REPARSE_POINT 2097152
#define FILE_FLAG_OPEN_NO_RECALL 1048576
-#if (_WIN32_WINNT >= 0x0500)
-#define FILE_FLAG_FIRST_PIPE_INSTANCE 524288
-#endif
+
#define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
#define CLRDTR 6
#define CLRRTS 4
#define GET_TAPE_DRIVE_INFORMATION 1
#define SET_TAPE_MEDIA_INFORMATION 0
#define SET_TAPE_DRIVE_INFORMATION 1
-#if (_WIN32_WINNT >= 0x0600)
-#define THREAD_MODE_BACKGROUND_BEGIN 0x00010000
-#define THREAD_MODE_BACKGROUND_END 0x00020000
-#endif
+
#define THREAD_PRIORITY_ABOVE_NORMAL 1
#define THREAD_PRIORITY_BELOW_NORMAL (-1)
#define THREAD_PRIORITY_HIGHEST 2
#define LOCKFILE_EXCLUSIVE_LOCK 2
#define LOGON32_PROVIDER_DEFAULT 0
#define LOGON32_PROVIDER_WINNT35 1
-#if (_WIN32_WINNT >= 0x0400)
#define LOGON32_PROVIDER_WINNT40 2
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-#define LOGON32_PROVIDER_WINNT50 3
-#endif
+
#define LOGON32_LOGON_INTERACTIVE 2
#define LOGON32_LOGON_NETWORK 3
#define LOGON32_LOGON_BATCH 4
#define LOGON32_LOGON_SERVICE 5
#define LOGON32_LOGON_UNLOCK 7
-#if (_WIN32_WINNT >= 0x0500)
-#define LOGON32_LOGON_NETWORK_CLEARTEXT 8
-#define LOGON32_LOGON_NEW_CREDENTIALS 9
-#endif
+
#define MOVEFILE_REPLACE_EXISTING 1
#define MOVEFILE_COPY_ALLOWED 2
#define MOVEFILE_DELAY_UNTIL_REBOOT 4
#define MAXIMUM_SUSPEND_COUNT 0x7F
#define WAIT_OBJECT_0 0
#define WAIT_ABANDONED_0 128
+
#ifndef WAIT_TIMEOUT /* also in winerror.h */
#define WAIT_TIMEOUT 258
#endif
+
#define WAIT_IO_COMPLETION 0xC0
#define WAIT_ABANDONED 128
#define WAIT_FAILED ((DWORD)0xFFFFFFFF)
#define EV_RXFLAG 2
#define EV_TXEMPTY 4
/* also in ddk/ntapi.h */
-/* To restore default error mode, call SetErrorMode (0). */
+/* To restore default error mode, call SetErrorMode (0). */
#define SEM_FAILCRITICALERRORS 0x0001
#define SEM_NOGPFAULTERRORBOX 0x0002
#define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
#define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 0x00000004
#define GET_MODULE_HANDLE_EX_FLAG_PIN 0x00000001
#define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 0x00000002
-#if (_WIN32_WINNT >= 0x0501)
-#define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001
-#define ACTCTX_FLAG_LANGID_VALID 0x00000002
-#define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004
-#define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008
-#define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010
-#define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020
-#define ACTCTX_FLAG_HMODULE_VALID 0x00000080
-#define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001
-#define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001
-#define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
-#define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
-#define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
-#endif /* (_WIN32_WINNT >= 0x0501) */
-#if (_WIN32_WINNT >= 0x0500)
-#define REPLACEFILE_WRITE_THROUGH 0x00000001
-#define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
-#endif /* (_WIN32_WINNT >= 0x0500) */
+
#define WRITE_WATCH_FLAG_RESET 1
-#if (_WIN32_WINNT >= 0x0601)
-#define PROCESS_DEP_ENABLE 1
-#define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 2
-#endif
-#if (_WIN32_WINNT >= 0x0600)
-/* http://msdn.microsoft.com/en-us/library/aa363866%28VS.85%29.aspx */
-#define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
-/* http://msdn.microsoft.com/en-us/library/aa364962%28VS.85%29.aspx */
-#define FILE_NAME_NORMALIZED 0x0
-#define FILE_NAME_OPENED 0x8
-#define VOLUME_NAME_DOS 0x0
-#define VOLUME_NAME_GUID 0x1
-#define VOLUME_NAME_NONE 0x4
-#define VOLUME_NAME_NT 0x2
-#endif /* (_WIN32_WINNT >= 0x0600) */
#ifndef RC_INVOKED
typedef struct _FILETIME {
DWORD nFileIndexHigh;
DWORD nFileIndexLow;
} BY_HANDLE_FILE_INFORMATION,*LPBY_HANDLE_FILE_INFORMATION;
-#if (_WIN32_WINNT >= 0x0600)
-/* http://msdn.microsoft.com/en-us/library/aa364217%28VS.85%29.aspx */
-typedef struct _FILE_BASIC_INFO {
- LARGE_INTEGER CreationTime;
- LARGE_INTEGER LastAccessTime;
- LARGE_INTEGER LastWriteTime;
- LARGE_INTEGER ChangeTime;
- DWORD FileAttributes;
-} FILE_BASIC_INFO,*PFILE_BASIC_INFO,*LPFILE_BASIC_INFO;
-/* http://msdn.microsoft.com/en-us/library/aa364401%28VS.85%29.aspx */
-typedef struct _FILE_STANDARD_INFO {
- LARGE_INTEGER AllocationSize;
- LARGE_INTEGER EndOfFile;
- DWORD NumberOfLinks;
- BOOL DeletePending;
- BOOL Directory;
-} FILE_STANDARD_INFO,*PFILE_STANDARD_INFO,*LPFILE_STANDARD_INFO;
-/* http://msdn.microsoft.com/en-us/library/aa364388%28v=VS.85%29.aspx */
-typedef struct _FILE_NAME_INFO {
- DWORD FileNameLength;
- WCHAR FileName[1];
-} FILE_NAME_INFO,*PFILE_NAME_INFO,*LPFILE_NAME_INFO;
-/* http://msdn.microsoft.com/en-us/library/aa364406%28v=VS.85%29.aspx */
-typedef struct _FILE_STREAM_INFO {
- DWORD NextEntryOffset;
- DWORD StreamNameLength;
- LARGE_INTEGER StreamSize;
- LARGE_INTEGER StreamAllocationSize;
- WCHAR StreamName[1];
-} FILE_STREAM_INFO,*PFILE_STREAM_INFO,*LPFILE_STREAM_INFO;
-/* http://msdn.microsoft.com/en-us/library/aa364220%28v=VS.85%29.aspx */
-typedef struct _FILE_COMPRESSION_INFO {
- LARGE_INTEGER CompressedFileSize;
- WORD CompressionFormat;
- UCHAR CompressionUnitShift;
- UCHAR ChunkShift;
- UCHAR ClusterShift;
- UCHAR Reserved[3];
-} FILE_COMPRESSION_INFO,*PFILE_COMPRESSION_INFO,*LPFILE_COMPRESSION_INFO;
-/* http://msdn.microsoft.com/en-us/library/aa364216%28v=VS.85%29.aspx */
-typedef struct _FILE_ATTRIBUTE_TAG_INFO {
- DWORD FileAttributes;
- DWORD ReparseTag;
-} FILE_ATTRIBUTE_TAG_INFO,*PFILE_ATTRIBUTE_TAG_INFO,*LPFILE_ATTRIBUTE_TAG_INFO;
-/* http://msdn.microsoft.com/en-us/library/aa364226%28v=VS.85%29.aspx */
-typedef struct _FILE_ID_BOTH_DIR_INFO {
- DWORD NextEntryOffset;
- DWORD FileIndex;
- LARGE_INTEGER CreationTime;
- LARGE_INTEGER LastAccessTime;
- LARGE_INTEGER LastWriteTime;
- LARGE_INTEGER ChangeTime;
- LARGE_INTEGER EndOfFile;
- LARGE_INTEGER AllocationSize;
- DWORD FileAttributes;
- DWORD FileNameLength;
- DWORD EaSize;
- CCHAR ShortNameLength;
- WCHAR ShortName[12];
- LARGE_INTEGER FileId;
- WCHAR FileName[1];
-} FILE_ID_BOTH_DIR_INFO,*PFILE_ID_BOTH_DIR_INFO,*LPFILE_ID_BOTH_DIR_INFO;
-/* http://msdn.microsoft.com/en-us/library/dd979524%28v=VS.85%29.aspx */
-typedef struct _FILE_REMOTE_PROTOCOL_INFO {
- USHORT StructureVersion;
- USHORT StructureSize;
- ULONG Protocol;
- USHORT ProtocolMajorVersion;
- USHORT ProtocolMinorVersion;
- USHORT ProtocolRevision;
- USHORT Reserved;
- ULONG Flags;
- struct {
- ULONG Reserved[8];
- } GenericReserved;
- struct {
- ULONG Reserved[16];
- } ProtocolSpecificReserved;
-} FILE_REMOTE_PROTOCOL_INFO,*PFILE_REMOTE_PROTOCOL_INFO,*LPFILE_REMOTE_PROTOCOL_INFO;
-#endif /* (_WIN32_WINNT >= 0x0600) */
+
typedef struct _DCB {
DWORD DCBlength;
DWORD BaudRate;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
+
#ifdef _WIN32_WCE
- DWORD dwOID;
+ DWORD dwOID;
#else
DWORD dwReserved0;
DWORD dwReserved1;
#endif
+
CHAR cFileName[MAX_PATH];
+
#ifndef _WIN32_WCE
CHAR cAlternateFileName[14];
#endif
+
} WIN32_FIND_DATAA,*PWIN32_FIND_DATAA,*LPWIN32_FIND_DATAA;
typedef struct _WIN32_FIND_DATAW {
DWORD dwFileAttributes;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
+
#ifdef _WIN32_WCE
- DWORD dwOID;
+ DWORD dwOID;
#else
DWORD dwReserved0;
DWORD dwReserved1;
#endif
+
WCHAR cFileName[MAX_PATH];
+
#ifndef _WIN32_WCE
WCHAR cAlternateFileName[14];
#endif
+
} WIN32_FIND_DATAW,*PWIN32_FIND_DATAW,*LPWIN32_FIND_DATAW;
typedef struct _WIN32_STREAM_ID {
DWORD dwStreamId;
DWORD dwTotalVirtual;
DWORD dwAvailVirtual;
} MEMORYSTATUS,*LPMEMORYSTATUS;
-#if (_WIN32_WINNT >= 0x0500)
-typedef struct _MEMORYSTATUSEX {
- DWORD dwLength;
- DWORD dwMemoryLoad;
- DWORDLONG ullTotalPhys;
- DWORDLONG ullAvailPhys;
- DWORDLONG ullTotalPageFile;
- DWORDLONG ullAvailPageFile;
- DWORDLONG ullTotalVirtual;
- DWORDLONG ullAvailVirtual;
- DWORDLONG ullAvailExtendedVirtual;
-} MEMORYSTATUSEX,*LPMEMORYSTATUSEX;
-#endif
+
typedef struct _LDT_ENTRY {
WORD LimitLow;
WORD BaseLow;
WORD wCertificateType;
BYTE bCertificate[1];
} WIN_CERTIFICATE, *LPWIN_CERTIFICATE;
-#if (_WIN32_WINNT >= 0x0501)
-typedef struct tagACTCTXA {
- ULONG cbSize;
- DWORD dwFlags;
- LPCSTR lpSource;
- USHORT wProcessorArchitecture;
- LANGID wLangId;
- LPCSTR lpAssemblyDirectory;
- LPCSTR lpResourceName;
- LPCSTR lpApplicationName;
- HMODULE hModule;
-} ACTCTXA,*PACTCTXA;
-typedef const ACTCTXA *PCACTCTXA;
-typedef struct tagACTCTXW {
- ULONG cbSize;
- DWORD dwFlags;
- LPCWSTR lpSource;
- USHORT wProcessorArchitecture;
- LANGID wLangId;
- LPCWSTR lpAssemblyDirectory;
- LPCWSTR lpResourceName;
- LPCWSTR lpApplicationName;
- HMODULE hModule;
-} ACTCTXW,*PACTCTXW;
-typedef const ACTCTXW *PCACTCTXW;
-typedef struct tagACTCTX_SECTION_KEYED_DATA {
- ULONG cbSize;
- ULONG ulDataFormatVersion;
- PVOID lpData;
- ULONG ulLength;
- PVOID lpSectionGlobalData;
- ULONG ulSectionGlobalDataLength;
- PVOID lpSectionBase;
- ULONG ulSectionTotalLength;
- HANDLE hActCtx;
- HANDLE ulAssemblyRosterIndex;
-} ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
-typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
-typedef enum {
- LowMemoryResourceNotification ,
- HighMemoryResourceNotification
-} MEMORY_RESOURCE_NOTIFICATION_TYPE;
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-typedef enum _COMPUTER_NAME_FORMAT {
- ComputerNameNetBIOS,
- ComputerNameDnsHostname,
- ComputerNameDnsDomain,
- ComputerNameDnsFullyQualified,
- ComputerNamePhysicalNetBIOS,
- ComputerNamePhysicalDnsHostname,
- ComputerNamePhysicalDnsDomain,
- ComputerNamePhysicalDnsFullyQualified,
- ComputerNameMax
-} COMPUTER_NAME_FORMAT;
-#endif
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-typedef DWORD EXECUTION_STATE;
-#endif
-#if (_WIN32_WINNT >= 0x0600)
-typedef enum _DEP_SYSTEM_POLICY_TYPE {
- AlwaysOn,
- AlwaysOff,
- OptIn,
- OptOut
-} DEP_SYSTEM_POLICY_TYPE;
-/* http://msdn.microsoft.com/en-us/library/aa364228%28v=VS.85%29.aspx */
-typedef enum _FILE_INFO_BY_HANDLE_CLASS {
- FileBasicInfo,
- FileStandardInfo,
- FileNameInfo,
- FileRenameInfo,
- FileDispositionInfo,
- FileAllocationInfo,
- FileEndOfFileInfo,
- FileStreamInfo,
- FileCompressionInfo,
- FileAttributeTagInfo,
- FileIdBothDirectoryInfo,
- FileIdBothDirectoryRestartInfo,
- FileIoPriorityHintInfo,
- FileRemoteProtocolInfo,
- MaximumFileInfoByHandlesClass
-} FILE_INFO_BY_HANDLE_CLASS,*PFILE_INFO_BY_HANDLE_CLASS;
-#endif
typedef DWORD(WINAPI *LPPROGRESS_ROUTINE)(LARGE_INTEGER,LARGE_INTEGER,LARGE_INTEGER,LARGE_INTEGER,DWORD,DWORD,HANDLE,HANDLE,LPVOID);
typedef void(WINAPI *LPFIBER_START_ROUTINE)(PVOID);
typedef BOOL(CALLBACK *ENUMRESLANGPROCA)(HMODULE,LPCSTR,LPCSTR,WORD,LONG);
typedef BOOL(CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG);
-#ifdef UNICODE
-#define ENUMRESLANGPROC ENUMRESLANGPROCW
-#else
-#define ENUMRESLANGPROC ENUMRESLANGPROCA
-#endif
+#define ENUMRESLANGPROC __AW(ENUMRESLANGPROC)
+
typedef BOOL(CALLBACK *ENUMRESNAMEPROCA)(HMODULE,LPCSTR,LPSTR,LONG);
typedef BOOL(CALLBACK *ENUMRESNAMEPROCW)(HMODULE,LPCWSTR,LPWSTR,LONG);
-#ifdef UNICODE
-#define ENUMRESNAMEPROC ENUMRESNAMEPROCW
-#else
-#define ENUMRESNAMEPROC ENUMRESNAMEPROCA
-#endif
+
+#define ENUMRESNAMEPROC __AW(ENUMRESNAMEPROC)
+
typedef BOOL(CALLBACK *ENUMRESTYPEPROCA)(HMODULE,LPSTR,LONG);
typedef BOOL(CALLBACK *ENUMRESTYPEPROCW)(HMODULE,LPWSTR,LONG);
-#ifdef UNICODE
-#define ENUMRESTYPEPROC ENUMRESTYPEPROCW
-#else
-#define ENUMRESTYPEPROC ENUMRESTYPEPROCA
-#endif
+
+#define ENUMRESTYPEPROC __AW(ENUMRESTYPEPROC)
+
typedef void(CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED);
typedef LONG(CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(LPEXCEPTION_POINTERS);
typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
typedef void(APIENTRY *PAPCFUNC)(ULONG_PTR);
typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD);
-#if (_WIN32_WINNT >= 0x0500)
-typedef void(CALLBACK *WAITORTIMERCALLBACK)(PVOID,BOOLEAN);
-#endif
+
#define MAKEINTATOM(i) (LPTSTR)((DWORD)((WORD)(i)))
/* Functions */
+
#ifndef UNDER_CE
int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPSTR,int);
#else
int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPWSTR,int);
#endif
+
int APIENTRY wWinMain(HINSTANCE,HINSTANCE,LPWSTR,int);
WINBASEAPI long WINAPI _hread(HFILE,LPVOID,long);
WINBASEAPI long WINAPI _hwrite(HFILE,LPCSTR,long);
WINBASEAPI BOOL WINAPI AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,PDWORD,PDWORD,PBOOL);
WINBASEAPI BOOL WINAPI AccessCheckAndAuditAlarmA(LPCSTR,LPVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL);
WINBASEAPI BOOL WINAPI AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI ActivateActCtx(HANDLE,ULONG_PTR*);
-#endif
+
WINBASEAPI BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID);
WINBASEAPI BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
-WINBASEAPI BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
-#endif
+
WINBASEAPI BOOL WINAPI AddAce(PACL,DWORD,DWORD,PVOID,DWORD);
WINBASEAPI ATOM WINAPI AddAtomA(LPCSTR);
WINBASEAPI ATOM WINAPI AddAtomW(LPCWSTR);
WINBASEAPI BOOL WINAPI AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI void WINAPI AddRefActCtx(HANDLE);
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI PVOID WINAPI AddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER);
-#endif
+
WINBASEAPI BOOL WINAPI AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD);
WINBASEAPI BOOL WINAPI AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD);
WINBASEAPI BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*);
WINBASEAPI BOOL WINAPI CancelDeviceWakeupRequest(HANDLE);
WINBASEAPI BOOL WINAPI CancelIo(HANDLE);
WINBASEAPI BOOL WINAPI CancelWaitableTimer(HANDLE);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI ChangeTimerQueueTimer(HANDLE,HANDLE,ULONG,ULONG);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI CheckNameLegalDOS8Dot3A(LPCSTR,LPSTR,DWORD,PBOOL,PBOOL);
-WINBASEAPI BOOL WINAPI CheckNameLegalDOS8Dot3W(LPCWSTR,LPSTR,DWORD,PBOOL,PBOOL);
-WINBASEAPI BOOL WINAPI CheckRemoteDebuggerPresent(HANDLE,PBOOL);
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI CheckTokenMembership(HANDLE,PSID,PBOOL);
-#endif
+
WINBASEAPI BOOL WINAPI ClearCommBreak(HANDLE);
WINBASEAPI BOOL WINAPI ClearCommError(HANDLE,PDWORD,LPCOMSTAT);
WINBASEAPI BOOL WINAPI ClearEventLogA(HANDLE,LPCSTR);
WINBASEAPI LONG WINAPI CompareFileTime(CONST FILETIME*,CONST FILETIME*);
WINBASEAPI BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED);
WINBASEAPI BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD);
-#if (_WIN32_WINNT >= 0x0400)
WINBASEAPI BOOL WINAPI ConvertFiberToThread(void);
-#endif
+
WINBASEAPI PVOID WINAPI ConvertThreadToFiber(PVOID);
WINBASEAPI BOOL WINAPI CopyFileA(LPCSTR,LPCSTR,BOOL);
WINBASEAPI BOOL WINAPI CopyFileW(LPCWSTR,LPCWSTR,BOOL);
#define FillMemory RtlFillMemory
#define ZeroMemory RtlZeroMemory
WINBASEAPI BOOL WINAPI CopySid(DWORD,PSID,PSID);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI HANDLE WINAPI CreateActCtxA(PCACTCTXA);
-WINBASEAPI HANDLE WINAPI CreateActCtxW(PCACTCTXW);
-#endif
+
WINBASEAPI BOOL WINAPI CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES);
WINBASEAPI BOOL WINAPI CreateDirectoryW(LPCWSTR,LPSECURITY_ATTRIBUTES);
WINBASEAPI BOOL WINAPI CreateDirectoryExA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
WINBASEAPI HANDLE WINAPI CreateEventA(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCSTR);
WINBASEAPI HANDLE WINAPI CreateEventW(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR);
WINBASEAPI LPVOID WINAPI CreateFiber(SIZE_T,LPFIBER_START_ROUTINE,LPVOID);
-#if (_WIN32_WINNT >= 0x0400)
WINBASEAPI LPVOID WINAPI CreateFiberEx(SIZE_T,SIZE_T,DWORD,LPFIBER_START_ROUTINE,LPVOID);
-#endif
+
WINBASEAPI HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
WINBASEAPI HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
WINBASEAPI HANDLE WINAPI CreateFileMappingA(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCSTR);
WINBASEAPI HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI CreateHardLinkA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
-WINBASEAPI BOOL WINAPI CreateHardLinkW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
-#endif
+
WINBASEAPI HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI HANDLE WINAPI CreateJobObjectA(LPSECURITY_ATTRIBUTES,LPCSTR);
-WINBASEAPI HANDLE WINAPI CreateJobObjectW(LPSECURITY_ATTRIBUTES,LPCWSTR);
-WINBASEAPI BOOL WINAPI TerminateJobObject(HANDLE,UINT);
-WINBASEAPI BOOL WINAPI AssignProcessToJobObject(HANDLE,HANDLE);
-WINBASEAPI BOOL WINAPI SetInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, LPVOID, DWORD);
-WINBASEAPI BOOL WINAPI QueryInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, LPVOID, DWORD, LPDWORD);
-#endif
+
WINBASEAPI HANDLE WINAPI CreateMailslotA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
WINBASEAPI HANDLE WINAPI CreateMailslotW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE);
-#endif
+
WINBASEAPI HANDLE WINAPI CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
WINBASEAPI HANDLE WINAPI CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
WINBASEAPI HANDLE WINAPI CreateNamedPipeA(LPCSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
WINBASEAPI BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
WINBASEAPI BOOL WINAPI CreateProcessAsUserA(HANDLE,LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION);
WINBASEAPI BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI CreateProcessWithLogonW (LPCWSTR,LPCWSTR,LPCWSTR,DWORD,
- LPCWSTR,LPWSTR,DWORD,LPVOID,
- LPCWSTR,LPSTARTUPINFOW,
- LPPROCESS_INFORMATION);
-#define LOGON_WITH_PROFILE 0x00000001
-#define LOGON_NETCREDENTIALS_ONLY 0x00000002
-#endif
+
WINBASEAPI HANDLE WINAPI CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI CreateRestrictedToken(HANDLE,DWORD,DWORD,PSID_AND_ATTRIBUTES,DWORD,PLUID_AND_ATTRIBUTES,DWORD,PSID_AND_ATTRIBUTES,PHANDLE);
-#define DISABLE_MAX_PRIVILEGE 1
-#define SANDBOX_INERT 2
-#define LUA_TOKEN 4
-#define WRITE_RESTRICTED 8
-#endif
+
WINBASEAPI HANDLE WINAPI CreateSemaphoreA(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR);
WINBASEAPI HANDLE WINAPI CreateSemaphoreW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0600)
-WINBASEAPI BOOL WINAPI CreateSymbolicLinkA(LPCSTR,LPCSTR,DWORD);
-WINBASEAPI BOOL WINAPI CreateSymbolicLinkW(LPCWSTR,LPCWSTR,DWORD);
-#endif
+
WINBASEAPI DWORD WINAPI CreateTapePartition(HANDLE,DWORD,DWORD,DWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI HANDLE WINAPI CreateTimerQueue(void);
-WINBASEAPI BOOL WINAPI CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG);
-#endif
+
WINBASEAPI HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD);
WINBASEAPI HANDLE WINAPI CreateWaitableTimerA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
WINBASEAPI HANDLE WINAPI CreateWaitableTimerW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI DeactivateActCtx(DWORD,ULONG_PTR);
-#endif
+
WINBASEAPI BOOL WINAPI DebugActiveProcess(DWORD);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI DebugActiveProcessStop(DWORD);
-#endif
WINBASEAPI void WINAPI DebugBreak(void);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI DebugBreakProcess(HANDLE);
-WINBASEAPI BOOL WINAPI DebugSetProcessKillOnExit(BOOL);
-#endif
+
+
WINBASEAPI BOOL WINAPI DefineDosDeviceA(DWORD,LPCSTR,LPCSTR);
WINBASEAPI BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR);
#define DefineHandleTable(w) ((w),TRUE)
WINBASEAPI void WINAPI DeleteFiber(PVOID);
WINBASEAPI BOOL WINAPI DeleteFileA(LPCSTR);
WINBASEAPI BOOL WINAPI DeleteFileW(LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI DeleteTimerQueue(HANDLE);
-WINBASEAPI BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE);
-WINBASEAPI BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE);
-WINBASEAPI BOOL WINAPI DeleteVolumeMountPointA(LPCSTR);
-WINBASEAPI BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR);
-#endif
+
WINBASEAPI BOOL WINAPI DeregisterEventSource(HANDLE);
WINBASEAPI BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*);
WINBASEAPI BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED);
WINBASEAPI BOOL WINAPI DisableThreadLibraryCalls(HMODULE);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameA(LPCSTR,LPSTR,LPDWORD);
-WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameW(LPCWSTR,LPWSTR,LPDWORD);
-#endif
+
WINBASEAPI BOOL WINAPI DisconnectNamedPipe(HANDLE);
WINBASEAPI BOOL WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME);
WINBASEAPI BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD);
WINBASEAPI BOOL WINAPI FileTimeToDosDateTime(CONST FILETIME *,LPWORD,LPWORD);
WINBASEAPI BOOL WINAPI FileTimeToLocalFileTime(CONST FILETIME *,LPFILETIME);
WINBASEAPI BOOL WINAPI FileTimeToSystemTime(CONST FILETIME *,LPSYSTEMTIME);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI FindActCtxSectionGuid(DWORD,const GUID*,ULONG,const GUID*,PACTCTX_SECTION_KEYED_DATA);
-WINBASEAPI BOOL WINAPI FindActCtxSectionStringA(DWORD,const GUID*,ULONG,LPCSTR,PACTCTX_SECTION_KEYED_DATA);
-WINBASEAPI BOOL WINAPI FindActCtxSectionStringW(DWORD,const GUID*,ULONG,LPCWSTR,PACTCTX_SECTION_KEYED_DATA);
-#endif
+
WINBASEAPI ATOM WINAPI FindAtomA(LPCSTR);
WINBASEAPI ATOM WINAPI FindAtomW(LPCWSTR);
WINBASEAPI BOOL WINAPI FindClose(HANDLE);
WINBASEAPI HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD);
WINBASEAPI HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD);
WINBASEAPI BOOL WINAPI FindFirstFreeAce(PACL,PVOID*);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI HANDLE WINAPI FindFirstVolumeA(LPCSTR,DWORD);
-WINBASEAPI HANDLE WINAPI FindFirstVolumeW(LPCWSTR,DWORD);
-WINBASEAPI HANDLE WINAPI FindFirstVolumeMountPointA(LPSTR,LPSTR,DWORD);
-WINBASEAPI HANDLE WINAPI FindFirstVolumeMountPointW(LPWSTR,LPWSTR,DWORD);
-#endif
+
WINBASEAPI BOOL WINAPI FindNextChangeNotification(HANDLE);
WINBASEAPI BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA);
WINBASEAPI BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI FindNextVolumeA(HANDLE,LPCSTR,DWORD);
-WINBASEAPI BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD);
-WINBASEAPI BOOL WINAPI FindNextVolumeMountPointA(HANDLE,LPSTR,DWORD);
-WINBASEAPI BOOL WINAPI FindNextVolumeMountPointW(HANDLE,LPWSTR,DWORD);
-WINBASEAPI BOOL WINAPI FindVolumeClose(HANDLE);
-WINBASEAPI BOOL WINAPI FindVolumeMountPointClose(HANDLE);
-#endif
+
WINBASEAPI HRSRC WINAPI FindResourceA(HMODULE,LPCSTR,LPCSTR);
WINBASEAPI HRSRC WINAPI FindResourceW(HINSTANCE,LPCWSTR,LPCWSTR);
WINBASEAPI HRSRC WINAPI FindResourceExA(HINSTANCE,LPCSTR,LPCSTR,WORD);
WINBASEAPI HRSRC WINAPI FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD);
-#if (_WIN32_WINNT >= 0x0502)
-WINBASEAPI DWORD WINAPI GetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD);
-WINBASEAPI DWORD WINAPI GetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD);
-#endif
+
WINBASEAPI BOOL WINAPI FlushFileBuffers(HANDLE);
WINBASEAPI BOOL WINAPI FlushInstructionCache(HANDLE,PCVOID,DWORD);
WINBASEAPI BOOL WINAPI FlushViewOfFile(PCVOID,DWORD);
WINBASEAPI DWORD WINAPI GetCompressedFileSizeW(LPCWSTR,PDWORD);
WINBASEAPI BOOL WINAPI GetComputerNameA(LPSTR,PDWORD);
WINBASEAPI BOOL WINAPI GetComputerNameW(LPWSTR,PDWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD);
-WINBASEAPI BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetCurrentActCtx(HANDLE*);
-#endif
+
WINBASEAPI DWORD WINAPI GetCurrentDirectoryA(DWORD,LPSTR);
WINBASEAPI DWORD WINAPI GetCurrentDirectoryW(DWORD,LPWSTR);
WINBASEAPI BOOL WINAPI GetCurrentHwProfileA(LPHW_PROFILE_INFOA);
WINBASEAPI HANDLE WINAPI GetCurrentProcess(void);
WINBASEAPI DWORD WINAPI GetCurrentProcessId(void);
WINBASEAPI HANDLE WINAPI GetCurrentThread(void);
+
#ifdef _WIN32_WCE
extern DWORD GetCurrentThreadId(void);
#else
WINBASEAPI DWORD WINAPI GetCurrentThreadId(void);
#endif
+
#define GetCurrentTime GetTickCount
WINBASEAPI BOOL WINAPI GetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,PDWORD);
WINBASEAPI BOOL WINAPI GetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,PDWORD);
WINBASEAPI BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD);
WINBASEAPI BOOL WINAPI GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER);
WINBASEAPI BOOL WINAPI GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER);
-#if (_WIN32_WINNT >= 0x0502)
-WINBASEAPI DWORD WINAPI GetDllDirectoryA(DWORD,LPSTR);
-WINBASEAPI DWORD WINAPI GetDllDirectoryW(DWORD,LPWSTR);
-#endif
+
WINBASEAPI UINT WINAPI GetDriveTypeA(LPCSTR);
WINBASEAPI UINT WINAPI GetDriveTypeW(LPCWSTR);
WINBASEAPI LPCH WINAPI GetEnvironmentStrings(void);
WINBASEAPI BOOL WINAPI GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID);
WINBASEAPI BOOL WINAPI GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID);
WINBASEAPI BOOL WINAPI GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION);
-#if (_WIN32_WINNT >= 0x0600)
-/* http://msdn.microsoft.com/en-us/library/aa364953%28VS.85%29.aspx */
-WINBASEAPI BOOL WINAPI GetFileInformationByHandleEx(HANDLE,FILE_INFO_BY_HANDLE_CLASS,LPVOID,DWORD);
-#endif
+
WINBASEAPI BOOL WINAPI GetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
WINBASEAPI BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
WINBASEAPI DWORD WINAPI GetFileSize(HANDLE,PDWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI GetFileSizeEx(HANDLE,PLARGE_INTEGER);
-#endif
+
WINBASEAPI BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME);
WINBASEAPI DWORD WINAPI GetFileType(HANDLE);
-#if (_WIN32_WINNT >= 0x0600)
-/* http://msdn.microsoft.com/en-us/library/aa364962%28VS.85%29.aspx */
-WINBASEAPI DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD);
-WINBASEAPI DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD);
-#endif
+
#define GetFreeSpace(w) (0x100000L)
WINBASEAPI DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*);
WINBASEAPI DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*);
WINBASEAPI DWORD WINAPI GetLogicalDrives(void);
WINBASEAPI DWORD WINAPI GetLogicalDriveStringsA(DWORD,LPSTR);
WINBASEAPI DWORD WINAPI GetLogicalDriveStringsW(DWORD,LPWSTR);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINBASEAPI DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD);
-WINBASEAPI DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD);
-#endif
+
WINBASEAPI BOOL WINAPI GetMailslotInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD);
WINBASEAPI DWORD WINAPI GetModuleFileNameA(HINSTANCE,LPSTR,DWORD);
WINBASEAPI DWORD WINAPI GetModuleFileNameW(HINSTANCE,LPWSTR,DWORD);
WINBASEAPI HMODULE WINAPI GetModuleHandleA(LPCSTR);
WINBASEAPI HMODULE WINAPI GetModuleHandleW(LPCWSTR);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*);
-WINBASEAPI BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*);
-#endif
+
WINBASEAPI BOOL WINAPI GetNamedPipeHandleStateA(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD);
WINBASEAPI BOOL WINAPI GetNamedPipeHandleStateW(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD);
WINBASEAPI BOOL WINAPI GetNamedPipeInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
-#endif
+
WINBASEAPI BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD);
WINBASEAPI BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD);
WINBASEAPI BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL);
WINBASEAPI BOOL WINAPI GetPrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR);
WINBASEAPI FARPROC WINAPI GetProcAddress(HINSTANCE,LPCSTR);
WINBASEAPI BOOL WINAPI GetProcessAffinityMask(HANDLE,PDWORD,PDWORD);
-#if (_WIN32_WINNT >= 0x0601)
-WINBASEAPI BOOL WINAPI GetProcessDEPPolicy (HANDLE, LPDWORD, PBOOL);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetProcessHandleCount(HANDLE,PDWORD);
-#endif
+
WINBASEAPI HANDLE WINAPI GetProcessHeap(VOID);
WINBASEAPI DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI DWORD WINAPI GetProcessId(HANDLE);
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI GetProcessIoCounters(HANDLE,PIO_COUNTERS);
-#endif
+
WINBASEAPI BOOL WINAPI GetProcessPriorityBoost(HANDLE,PBOOL);
WINBASEAPI BOOL WINAPI GetProcessShutdownParameters(PDWORD,PDWORD);
WINBASEAPI BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
WINBASEAPI VOID WINAPI GetStartupInfoA(LPSTARTUPINFOA);
WINBASEAPI VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW);
WINBASEAPI HANDLE WINAPI GetStdHandle(DWORD);
-#if (_WIN32_WINNT >= 0x0601)
-WINBASEAPI DEP_SYSTEM_POLICY_TYPE WINAPI GetSystemDEPPolicy (void);
-#endif
+
WINBASEAPI UINT WINAPI GetSystemDirectoryA(LPSTR,UINT);
WINBASEAPI UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT);
WINBASEAPI VOID WINAPI GetSystemInfo(LPSYSTEM_INFO);
WINBASEAPI BOOL WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetSystemRegistryQuota(PDWORD,PDWORD);
-#endif
WINBASEAPI VOID WINAPI GetSystemTime(LPSYSTEMTIME);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetSystemTimes(LPFILETIME,LPFILETIME,LPFILETIME);
-#endif
+
WINBASEAPI BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL);
WINBASEAPI void WINAPI GetSystemTimeAsFileTime(LPFILETIME);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT);
-WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI UINT WINAPI GetSystemWow64DirectoryA(LPSTR,UINT);
-WINBASEAPI UINT WINAPI GetSystemWow64DirectoryW(LPWSTR,UINT);
-#endif
+
WINBASEAPI DWORD WINAPI GetTapeParameters(HANDLE,DWORD,PDWORD,PVOID);
WINBASEAPI DWORD WINAPI GetTapePosition(HANDLE,DWORD,PDWORD,PDWORD,PDWORD);
WINBASEAPI DWORD WINAPI GetTapeStatus(HANDLE);
WINBASEAPI DWORD WINAPI GetTempPathA(DWORD,LPSTR);
WINBASEAPI DWORD WINAPI GetTempPathW(DWORD,LPWSTR);
WINBASEAPI BOOL WINAPI GetThreadContext(HANDLE,LPCONTEXT);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetThreadIOPendingFlag(HANDLE,PBOOL);
-#endif
+
WINBASEAPI int WINAPI GetThreadPriority(HANDLE);
WINBASEAPI BOOL WINAPI GetThreadPriorityBoost(HANDLE,PBOOL);
WINBASEAPI BOOL WINAPI GetThreadSelectorEntry(HANDLE,DWORD,LPLDT_ENTRY);
WINBASEAPI BOOL WINAPI GetVersionExW(LPOSVERSIONINFOW);
WINBASEAPI BOOL WINAPI GetVolumeInformationA(LPCSTR,LPSTR,DWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD);
WINBASEAPI BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI GetVolumeNameForVolumeMountPointA(LPCSTR,LPSTR,DWORD);
-WINBASEAPI BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
-WINBASEAPI BOOL WINAPI GetVolumePathNameA(LPCSTR,LPSTR,DWORD);
-WINBASEAPI BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI GetVolumePathNamesForVolumeNameA(LPCSTR,LPSTR,DWORD,PDWORD);
-WINBASEAPI BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD);
-#endif
+
WINBASEAPI UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT);
WINBASEAPI UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT);
WINBASEAPI DWORD WINAPI GetWindowThreadProcessId(HWND,PDWORD);
WINBASEAPI HGLOBAL WINAPI GlobalHandle(PCVOID);
WINBASEAPI LPVOID WINAPI GlobalLock(HGLOBAL);
WINBASEAPI VOID WINAPI GlobalMemoryStatus(LPMEMORYSTATUS);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX);
-#endif
+
WINBASEAPI HGLOBAL WINAPI GlobalReAlloc(HGLOBAL,DWORD,UINT);
WINBASEAPI DWORD WINAPI GlobalSize(HGLOBAL);
WINBASEAPI VOID WINAPI GlobalUnfix(HGLOBAL); /* Obsolete: Has no effect. */
-WINBASEAPI BOOL WINAPI GlobalUnlock(HGLOBAL);
+WINBASEAPI BOOL WINAPI GlobalUnlock(HGLOBAL);
WINBASEAPI BOOL WINAPI GlobalUnWire(HGLOBAL); /* Obsolete: Has no effect. */
WINBASEAPI PVOID WINAPI GlobalWire(HGLOBAL); /* Obsolete: Has no effect. */
#define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING)
WINBASEAPI BOOL WINAPI HeapDestroy(HANDLE);
WINBASEAPI BOOL WINAPI HeapFree(HANDLE,DWORD,PVOID);
WINBASEAPI BOOL WINAPI HeapLock(HANDLE);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T);
-#endif
+
WINBASEAPI PVOID WINAPI HeapReAlloc(HANDLE,DWORD,PVOID,DWORD);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T);
-#endif
+
WINBASEAPI DWORD WINAPI HeapSize(HANDLE,DWORD,PCVOID);
WINBASEAPI BOOL WINAPI HeapUnlock(HANDLE);
WINBASEAPI BOOL WINAPI HeapValidate(HANDLE,DWORD,PCVOID);
WINBASEAPI BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD);
WINBASEAPI BOOL WINAPI InitializeSid (PSID,PSID_IDENTIFIER_AUTHORITY,BYTE);
+
#if !(__USE_NTOSKRNL__)
/* CAREFUL: These are exported from ntoskrnl.exe and declared in winddk.h
as __fastcall functions, but are exported from kernel32.dll as __stdcall */
-#if (_WIN32_WINNT >= 0x0501)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
WINBASEAPI VOID WINAPI InitializeSListHead(PSLIST_HEADER);
#endif
+
#ifndef __INTERLOCKED_DECLARED
#define __INTERLOCKED_DECLARED
LONG WINAPI InterlockedCompareExchange(LONG volatile *,LONG,LONG);
#define InterlockedExchangePointer(t,v) \
(PVOID)InterlockedExchange((LONG volatile *)(t),(LONG)(v))
LONG WINAPI InterlockedExchangeAdd(LONG volatile *,LONG);
-#if (_WIN32_WINNT >= 0x0501)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
PSLIST_ENTRY WINAPI InterlockedFlushSList(PSLIST_HEADER);
#endif
+
/* MSDN documents this as __cdecl but it is not. */
LONG WINAPI InterlockedIncrement(LONG volatile *);
-#if (_WIN32_WINNT >= 0x0501)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
PSLIST_ENTRY WINAPI InterlockedPopEntrySList(PSLIST_HEADER);
PSLIST_ENTRY WINAPI InterlockedPushEntrySList(PSLIST_HEADER,PSLIST_ENTRY);
#endif
+
#endif /* __INTERLOCKED_DECLARED */
+
#endif /* __USE_NTOSKRNL__ */
WINBASEAPI BOOL WINAPI IsBadCodePtr(FARPROC);
WINBASEAPI BOOL WINAPI IsBadStringPtrW(LPCWSTR,UINT);
WINBASEAPI BOOL WINAPI IsBadWritePtr(PVOID,UINT);
WINBASEAPI BOOL WINAPI IsDebuggerPresent(void);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL IsProcessInJob(HANDLE,HANDLE,PBOOL);
-#endif
+
WINBASEAPI BOOL WINAPI IsProcessorFeaturePresent(DWORD);
WINBASEAPI BOOL WINAPI IsSystemResumeAutomatic(void);
WINBASEAPI BOOL WINAPI IsTextUnicode(PCVOID,int,LPINT);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI IsTokenRestricted(HANDLE);
-#endif
+
WINBASEAPI BOOL WINAPI IsValidAcl(PACL);
WINBASEAPI BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR);
WINBASEAPI BOOL WINAPI IsValidSid(PSID);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI IsWow64Process(HANDLE,PBOOL);
-#endif
+
WINBASEAPI void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION);
#define LimitEmsPages(n)
WINBASEAPI HINSTANCE WINAPI LoadLibraryA(LPCSTR);
WINBASEAPI BOOL WINAPI MoveFileExA(LPCSTR,LPCSTR,DWORD);
WINBASEAPI BOOL WINAPI MoveFileExW(LPCWSTR,LPCWSTR,DWORD);
WINBASEAPI BOOL WINAPI MoveFileW(LPCWSTR,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI MoveFileWithProgressA(LPCSTR,LPCSTR,LPPROGRESS_ROUTINE,LPVOID,DWORD);
-WINBASEAPI BOOL WINAPI MoveFileWithProgressW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,DWORD);
-#endif
+
WINBASEAPI int WINAPI MulDiv(int,int,int);
WINBASEAPI BOOL WINAPI NotifyChangeEventLog(HANDLE,HANDLE);
WINBASEAPI BOOL WINAPI ObjectCloseAuditAlarmA(LPCSTR,PVOID,BOOL);
WINBASEAPI BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE);
WINBASEAPI HANDLE WINAPI OpenSemaphoreA(DWORD,BOOL,LPCSTR);
WINBASEAPI HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500) || (_WIN32_WINDOWS >= 0x0490)
-WINBASEAPI HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD);
-#endif
+
WINBASEAPI BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE);
WINBASEAPI HANDLE WINAPI OpenWaitableTimerA(DWORD,BOOL,LPCSTR);
WINBASEAPI HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR);
WINBASEAPI BOOL WINAPI PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL);
WINBASEAPI BOOL WINAPI PrivilegedServiceAuditAlarmA(LPCSTR,LPCSTR,HANDLE,PPRIVILEGE_SET,BOOL);
WINBASEAPI BOOL WINAPI PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*);
-#endif
+
WINBASEAPI BOOL WINAPI PulseEvent(HANDLE);
WINBASEAPI BOOL WINAPI PurgeComm(HANDLE,DWORD);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI QueryActCtxW(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T*);
-#endif
+
WINBASEAPI DWORD WINAPI QueryDosDeviceA(LPCSTR,LPSTR,DWORD);
WINBASEAPI DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI QueryMemoryResourceNotification(HANDLE,PBOOL);
-#endif
+
WINBASEAPI BOOL WINAPI QueryPerformanceCounter(PLARGE_INTEGER);
WINBASEAPI BOOL WINAPI QueryPerformanceFrequency(PLARGE_INTEGER);
WINBASEAPI DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,ULONG_PTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI QueueUserWorkItem(LPTHREAD_START_ROUTINE,PVOID,ULONG);
-#endif
+
WINBASEAPI void WINAPI RaiseException(DWORD,DWORD,DWORD,const DWORD*);
WINBASEAPI BOOL WINAPI ReadDirectoryChangesW(HANDLE,PVOID,DWORD,BOOL,DWORD,PDWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
WINBASEAPI BOOL WINAPI ReadEventLogA(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *);
WINBASEAPI BOOL WINAPI ReadProcessMemory(HANDLE,PCVOID,PVOID,DWORD,PDWORD);
WINBASEAPI HANDLE WINAPI RegisterEventSourceA (LPCSTR,LPCSTR);
WINBASEAPI HANDLE WINAPI RegisterEventSourceW(LPCWSTR,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI RegisterWaitForSingleObject(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
-WINBASEAPI HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI void WINAPI ReleaseActCtx(HANDLE);
-#endif
+
WINBASEAPI BOOL WINAPI ReleaseMutex(HANDLE);
WINBASEAPI BOOL WINAPI ReleaseSemaphore(HANDLE,LONG,LPLONG);
WINBASEAPI BOOL WINAPI RemoveDirectoryA(LPCSTR);
WINBASEAPI BOOL WINAPI RemoveDirectoryW(LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI ULONG WINAPI RemoveVectoredExceptionHandler(PVOID);
-#endif
-#if (_WIN32_WINNT >= 0x0502)
-WINBASEAPI HANDLE WINAPI ReOpenFile(HANDLE,DWORD,DWORD,DWORD);
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI ReplaceFileA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPVOID,LPVOID);
-WINBASEAPI BOOL WINAPI ReplaceFileW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPVOID,LPVOID);
-#endif
+
WINBASEAPI BOOL WINAPI ReportEventA(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCSTR*,PVOID);
WINBASEAPI BOOL WINAPI ReportEventW(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCWSTR*,PVOID);
+
#ifdef _WIN32_WCE
extern BOOL ResetEvent(HANDLE);
#else
WINBASEAPI BOOL WINAPI ResetEvent(HANDLE);
#endif
+
WINBASEAPI UINT WINAPI ResetWriteWatch(LPVOID,SIZE_T);
-#if (_WIN32_WINNT >= 0x0510)
-WINBASEAPI VOID WINAPI RestoreLastError(DWORD);
-#endif
+
WINBASEAPI DWORD WINAPI ResumeThread(HANDLE);
WINBASEAPI BOOL WINAPI RevertToSelf(void);
WINBASEAPI DWORD WINAPI SearchPathA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*);
WINBASEAPI BOOL WINAPI SetCommTimeouts(HANDLE,LPCOMMTIMEOUTS);
WINBASEAPI BOOL WINAPI SetComputerNameA(LPCSTR);
WINBASEAPI BOOL WINAPI SetComputerNameW(LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI SetComputerNameExA(COMPUTER_NAME_FORMAT,LPCSTR);
-WINBASEAPI BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR);
-#endif
+
WINBASEAPI BOOL WINAPI SetCurrentDirectoryA(LPCSTR);
WINBASEAPI BOOL WINAPI SetCurrentDirectoryW(LPCWSTR);
WINBASEAPI BOOL WINAPI SetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,DWORD);
WINBASEAPI BOOL WINAPI SetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,DWORD);
-#if (_WIN32_WINNT >= 0x0502)
-WINBASEAPI BOOL WINAPI SetDllDirectoryA(LPCSTR);
-WINBASEAPI BOOL WINAPI SetDllDirectoryW(LPCWSTR);
-#endif
+
WINBASEAPI BOOL WINAPI SetEndOfFile(HANDLE);
WINBASEAPI BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR);
WINBASEAPI BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR);
WINBASEAPI UINT WINAPI SetErrorMode(UINT);
+
#ifdef _WIN32_WCE
extern BOOL SetEvent(HANDLE);
#else
WINBASEAPI BOOL WINAPI SetEvent(HANDLE);
#endif
+
WINBASEAPI VOID WINAPI SetFileApisToANSI(void);
WINBASEAPI VOID WINAPI SetFileApisToOEM(void);
WINBASEAPI BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD);
WINBASEAPI BOOL WINAPI SetFilePointerEx(HANDLE,LARGE_INTEGER,PLARGE_INTEGER,DWORD);
WINBASEAPI BOOL WINAPI SetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
WINBASEAPI BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI SetFileShortNameA(HANDLE,LPCSTR);
-WINBASEAPI BOOL WINAPI SetFileShortNameW(HANDLE,LPCWSTR);
-#endif
WINBASEAPI BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*);
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI SetFileValidData(HANDLE,LONGLONG);
-#endif
-#if (_WIN32_WINNT >= 0x0502)
-WINBASEAPI BOOL WINAPI SetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD);
-WINBASEAPI BOOL WINAPI SetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD);
-#endif
+
WINBASEAPI UINT WINAPI SetHandleCount(UINT);
WINBASEAPI BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD);
WINBASEAPI BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
WINBASEAPI BOOL WINAPI SetPriorityClass(HANDLE,DWORD);
WINBASEAPI BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE);
WINBASEAPI BOOL WINAPI SetProcessAffinityMask(HANDLE,DWORD);
-#if (_WIN32_WINNT >= 0x0601)
-WINBASEAPI BOOL WINAPI SetProcessDEPPolicy (DWORD);
-#endif
+
WINBASEAPI BOOL WINAPI SetProcessPriorityBoost(HANDLE,BOOL);
WINBASEAPI BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD);
WINBASEAPI BOOL WINAPI SetProcessWorkingSetSize(HANDLE,SIZE_T,SIZE_T);
WINBASEAPI DWORD WINAPI SetTapePosition(HANDLE,DWORD,DWORD,DWORD,DWORD,BOOL);
WINBASEAPI DWORD WINAPI SetThreadAffinityMask(HANDLE,DWORD);
WINBASEAPI BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT*);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINBASEAPI EXECUTION_STATE WINAPI SetThreadExecutionState(EXECUTION_STATE);
-#endif
+
WINBASEAPI DWORD WINAPI SetThreadIdealProcessor(HANDLE,DWORD);
WINBASEAPI BOOL WINAPI SetThreadPriority(HANDLE,int);
WINBASEAPI BOOL WINAPI SetThreadPriorityBoost(HANDLE,BOOL);
WINBASEAPI BOOL WINAPI SetupComm(HANDLE,DWORD,DWORD);
WINBASEAPI BOOL WINAPI SetVolumeLabelA(LPCSTR,LPCSTR);
WINBASEAPI BOOL WINAPI SetVolumeLabelW(LPCWSTR,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI SetVolumeMountPointA(LPCSTR,LPCSTR);
-WINBASEAPI BOOL WINAPI SetVolumeMountPointW(LPCWSTR,LPCWSTR);
-#endif
+
WINBASEAPI BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL);
WINBASEAPI DWORD WINAPI SignalObjectAndWait(HANDLE,HANDLE,DWORD,BOOL);
WINBASEAPI DWORD WINAPI SizeofResource(HINSTANCE,HRSRC);
WINBASEAPI void WINAPI SwitchToFiber(PVOID);
WINBASEAPI BOOL WINAPI SwitchToThread(void);
WINBASEAPI BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME);
-#if (_WIN32_WINNT >= 0x501)
-WINBASEAPI BOOL WINAPI TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME);
-#endif
+
WINBASEAPI BOOL WINAPI SystemTimeToTzSpecificLocalTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME);
WINBASEAPI BOOL WINAPI TerminateProcess(HANDLE,UINT);
WINBASEAPI BOOL WINAPI TerminateThread(HANDLE,DWORD);
#define UnlockResource(h) (h)
#define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) /* Obsolete: Has no effect. */
WINBASEAPI BOOL WINAPI UnmapViewOfFile(LPCVOID);
-#if (_WIN32_WINNT >= 0x0500)
-WINBASEAPI BOOL WINAPI UnregisterWait(HANDLE);
-WINBASEAPI BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE);
-#endif
+
WINBASEAPI BOOL WINAPI UpdateResourceA(HANDLE,LPCSTR,LPCSTR,WORD,PVOID,DWORD);
WINBASEAPI BOOL WINAPI UpdateResourceW(HANDLE,LPCWSTR,LPCWSTR,WORD,PVOID,DWORD);
WINBASEAPI BOOL WINAPI VerifyVersionInfoA(LPOSVERSIONINFOEXA,DWORD,DWORDLONG);
WINBASEAPI BOOL WINAPI WriteProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR);
WINBASEAPI DWORD WINAPI WriteTapemark(HANDLE,DWORD,DWORD,BOOL);
#define Yield()
-#if (_WIN32_WINNT >= 0x0501)
-WINBASEAPI BOOL WINAPI ZombifyActCtx(HANDLE);
+
+typedef __AW(STARTUPINFO) STARTUPINFO,*LPSTARTUPINFO;
+typedef __AW(WIN32_FIND_DATA) WIN32_FIND_DATA,*PWIN32_FIND_DATA,*LPWIN32_FIND_DATA;
+typedef __AW(HW_PROFILE_INFO) HW_PROFILE_INFO,*LPHW_PROFILE_INFO;
+
+#define AccessCheckAndAuditAlarm __AW(AccessCheckAndAuditAlarm)
+#define AddAtom __AW(AddAtom)
+#define BackupEventLog __AW(BackupEventLog)
+#define BeginUpdateResource __AW(BeginUpdateResource)
+#define BuildCommDCB __AW(BuildCommDCB)
+#define BuildCommDCBAndTimeouts __AW(BuildCommDCBAndTimeouts)
+#define CallNamedPipe __AW(CallNamedPipe)
+
+#define ClearEventLog __AW(ClearEventLog)
+#define CommConfigDialog __AW(CommConfigDialog)
+#define CopyFile __AW(CopyFile)
+#define CopyFileEx __AW(CopyFileEx)
+
+#define CreateDirectory __AW(CreateDirectory)
+#define CreateDirectoryEx __AW(CreateDirectoryEx)
+#define CreateEvent __AW(CreateEvent)
+#define CreateFile __AW(CreateFile)
+#define CreateFileMapping __AW(CreateFileMapping)
+
+#define CreateMailslot __AW(CreateMailslot)
+#define CreateMutex __AW(CreateMutex)
+#define CreateNamedPipe __AW(CreateNamedPipe)
+#define CreateProcess __AW(CreateProcess)
+#define CreateProcessAsUser __AW(CreateProcessAsUser)
+#define CreateSemaphore __AW(CreateSemaphore)
+
+#define CreateWaitableTimer __AW(CreateWaitableTimer)
+#define DefineDosDevice __AW(DefineDosDevice)
+#define DeleteFile __AW(DeleteFile)
+
+#define EncryptFile __AW(EncryptFile)
+#define EndUpdateResource __AW(EndUpdateResource)
+#define EnumResourceLanguages __AW(EnumResourceLanguages)
+#define EnumResourceNames __AW(EnumResourceNames)
+#define EnumResourceTypes __AW(EnumResourceTypes)
+#define ExpandEnvironmentStrings __AW(ExpandEnvironmentStrings)
+#define FatalAppExit __AW(FatalAppExit)
+#define FileEncryptionStatus __AW(FileEncryptionStatus)
+
+#define FindAtom __AW(FindAtom)
+#define FindFirstChangeNotification __AW(FindFirstChangeNotification)
+#define FindFirstFile __AW(FindFirstFile)
+#define FindFirstFileEx __AW(FindFirstFileEx)
+
+#define FindNextFile __AW(FindNextFile)
+
+#define FindResource __AW(FindResource)
+#define FindResourceEx __AW(FindResourceEx)
+#define FormatMessage __AW(FormatMessage)
+#define FreeEnvironmentStrings __AW(FreeEnvironmentStrings)
+#define GetAtomName __AW(GetAtomName)
+#define GetBinaryType __AW(GetBinaryType)
+#define GetCommandLine __AW(GetCommandLine)
+#define GetCompressedFileSize __AW(GetCompressedFileSize)
+#define GetComputerName __AW(GetComputerName)
+
+#define GetCurrentDirectory __AW(GetCurrentDirectory)
+#define GetDefaultCommConfig __AW(GetDefaultCommConfig)
+#define GetDiskFreeSpace __AW(GetDiskFreeSpace)
+#define GetDiskFreeSpaceEx __AW(GetDiskFreeSpaceEx)
+
+#define GetDriveType __AW(GetDriveType)
+#define GetEnvironmentStrings __AW(GetEnvironmentStrings)
+#define GetEnvironmentVariable __AW(GetEnvironmentVariable)
+#define GetFileAttributes __AW(GetFileAttributes)
+#define GetFileSecurity __AW(GetFileSecurity)
+#define GetFileAttributesEx __AW(GetFileAttributesEx)
+
+#define GetFullPathName __AW(GetFullPathName)
+#define GetLogicalDriveStrings __AW(GetLogicalDriveStrings)
+
+#define GetModuleFileName __AW(GetModuleFileName)
+#define GetModuleHandle __AW(GetModuleHandle)
+
+#define GetNamedPipeHandleState __AW(GetNamedPipeHandleState)
+#define GetPrivateProfileInt __AW(GetPrivateProfileInt)
+#define GetPrivateProfileSection __AW(GetPrivateProfileSection)
+#define GetPrivateProfileSectionNames __AW(GetPrivateProfileSectionNames)
+#define GetPrivateProfileString __AW(GetPrivateProfileString)
+#define GetPrivateProfileStruct __AW(GetPrivateProfileStruct)
+#define GetProfileInt __AW(GetProfileInt)
+#define GetProfileSection __AW(GetProfileSection)
+#define GetProfileString __AW(GetProfileString)
+#define GetShortPathName __AW(GetShortPathName)
+#define GetStartupInfo __AW(GetStartupInfo)
+#define GetSystemDirectory __AW(GetSystemDirectory)
+
+#define GetTempFileName __AW(GetTempFileName)
+#define GetTempPath __AW(GetTempPath)
+#define GetUserName __AW(GetUserName)
+#define GetVersionEx __AW(GetVersionEx)
+#define GetVolumeInformation __AW(GetVolumeInformation)
+#define GetVolumeNameForVolumeMountPoint __AW(GetVolumeNameForVolumeMountPoint)
+#define GetWindowsDirectory __AW(GetWindowsDirectory)
+#define GlobalAddAtom __AW(GlobalAddAtom)
+#define GlobalFindAtom __AW(GlobalFindAtom)
+#define GlobalGetAtomName __AW(GlobalGetAtomName)
+#define IsBadStringPtr __AW(IsBadStringPtr)
+#define LoadLibrary __AW(LoadLibrary)
+#define LoadLibraryEx __AW(LoadLibraryEx)
+#define LogonUser __AW(LogonUser)
+#define LookupAccountName __AW(LookupAccountName)
+#define LookupAccountSid __AW(LookupAccountSid)
+#define LookupPrivilegeDisplayName __AW(LookupPrivilegeDisplayName)
+#define LookupPrivilegeName __AW(LookupPrivilegeName)
+#define LookupPrivilegeValue __AW(LookupPrivilegeValue)
+#define lstrcat __AW(lstrcat)
+#define lstrcmp __AW(lstrcmp)
+#define lstrcmpi __AW(lstrcmpi)
+#define lstrcpy __AW(lstrcpy)
+#define lstrcpyn __AW(lstrcpyn)
+#define lstrlen __AW(lstrlen)
+#define MoveFile __AW(MoveFile)
+#define MoveFileEx __AW(MoveFileEx)
+
+#define ObjectCloseAuditAlarm __AW(ObjectCloseAuditAlarm)
+#define ObjectDeleteAuditAlarm __AW(ObjectDeleteAuditAlarm)
+#define ObjectOpenAuditAlarm __AW(ObjectOpenAuditAlarm)
+#define ObjectPrivilegeAuditAlarm __AW(ObjectPrivilegeAuditAlarm)
+#define OpenBackupEventLog __AW(OpenBackupEventLog)
+#define OpenEvent __AW(OpenEvent)
+#define OpenEventLog __AW(OpenEventLog)
+#define OpenFileMapping __AW(OpenFileMapping)
+#define OpenMutex __AW(OpenMutex)
+#define OpenSemaphore __AW(OpenSemaphore)
+#define OutputDebugString __AW(OutputDebugString)
+#define PrivilegedServiceAuditAlarm __AW(PrivilegedServiceAuditAlarm)
+#define QueryDosDevice __AW(QueryDosDevice)
+#define ReadEventLog __AW(ReadEventLog)
+#define RegisterEventSource __AW(RegisterEventSource)
+#define RemoveDirectory __AW(RemoveDirectory)
+
+#define ReportEvent __AW(ReportEvent)
+#define SearchPath __AW(SearchPath)
+#define SetComputerName __AW(SetComputerName)
+#define SetCurrentDirectory __AW(SetCurrentDirectory)
+#define SetDefaultCommConfig __AW(SetDefaultCommConfig)
+
+#define SetEnvironmentVariable __AW(SetEnvironmentVariable)
+#define SetFileAttributes __AW(SetFileAttributes)
+#define SetFileSecurity __AW(SetFileSecurity)
+
+#define SetVolumeLabel __AW(SetVolumeLabel)
+#define UpdateResource __AW(UpdateResource)
+#define VerifyVersionInfo __AW(VerifyVersionInfo)
+#define WaitNamedPipe __AW(WaitNamedPipe)
+#define WritePrivateProfileSection __AW(WritePrivateProfileSection)
+#define WritePrivateProfileString __AW(WritePrivateProfileString)
+#define WritePrivateProfileStruct __AW(WritePrivateProfileStruct)
+#define WriteProfileSection __AW(WriteProfileSection)
+#define WriteProfileString __AW(WriteProfileString)
+
+#endif /* ! RC_DEFINED */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN98)
+WINBASEAPI EXECUTION_STATE WINAPI SetThreadExecutionState(EXECUTION_STATE);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN98) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINME)
+WINBASEAPI HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINME) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+#define DISABLE_MAX_PRIVILEGE 1
+#if (NTDDK_VERSION >= NTDDI_WIN2KSP2)
+#define FILE_FLAG_FIRST_PIPE_INSTANCE 524288
#endif
-#if (_WIN32_WINNT >= 0x0500)
+#define LOGON_WITH_PROFILE 0x00000001
+#define LOGON_NETCREDENTIALS_ONLY 0x00000002
+#define LOGON32_PROVIDER_WINNT50 3
+#define LOGON32_LOGON_NETWORK_CLEARTEXT 8
+#define LOGON32_LOGON_NEW_CREDENTIALS 9
+#define LUA_TOKEN 4
+#define REPLACEFILE_WRITE_THROUGH 0x00000001
+#define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
+#define SANDBOX_INERT 2
+#define WRITE_RESTRICTED 8
+
+#ifndef RC_INVOKED
+typedef struct _MEMORYSTATUSEX {
+ DWORD dwLength;
+ DWORD dwMemoryLoad;
+ DWORDLONG ullTotalPhys;
+ DWORDLONG ullAvailPhys;
+ DWORDLONG ullTotalPageFile;
+ DWORDLONG ullAvailPageFile;
+ DWORDLONG ullTotalVirtual;
+ DWORDLONG ullAvailVirtual;
+ DWORDLONG ullAvailExtendedVirtual;
+} MEMORYSTATUSEX,*LPMEMORYSTATUSEX;
+typedef enum _COMPUTER_NAME_FORMAT {
+ ComputerNameNetBIOS,
+ ComputerNameDnsHostname,
+ ComputerNameDnsDomain,
+ ComputerNameDnsFullyQualified,
+ ComputerNamePhysicalNetBIOS,
+ ComputerNamePhysicalDnsHostname,
+ ComputerNamePhysicalDnsDomain,
+ ComputerNamePhysicalDnsFullyQualified,
+ ComputerNameMax
+} COMPUTER_NAME_FORMAT;
+typedef DWORD EXECUTION_STATE, *PEXECUTION_STATE;
+typedef void(CALLBACK *WAITORTIMERCALLBACK)(PVOID,BOOLEAN);
+WINBASEAPI BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
+WINBASEAPI BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
+WINBASEAPI PVOID WINAPI AddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER);
+WINBASEAPI BOOL WINAPI ChangeTimerQueueTimer(HANDLE,HANDLE,ULONG,ULONG);
+WINBASEAPI BOOL WINAPI CheckTokenMembership(HANDLE,PSID,PBOOL);
+#define CreateHardLink __AW(CreateHardLink)
+WINBASEAPI BOOL WINAPI CreateHardLinkA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
+WINBASEAPI BOOL WINAPI CreateHardLinkW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
+#define CreateJobObject __AW(CreateJobObject)
+WINBASEAPI HANDLE WINAPI CreateJobObjectA(LPSECURITY_ATTRIBUTES,LPCSTR);
+WINBASEAPI HANDLE WINAPI CreateJobObjectW(LPSECURITY_ATTRIBUTES,LPCWSTR);
+WINBASEAPI BOOL WINAPI TerminateJobObject(HANDLE,UINT);
+WINBASEAPI BOOL WINAPI AssignProcessToJobObject(HANDLE,HANDLE);
+WINBASEAPI BOOL WINAPI SetInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, LPVOID, DWORD);
+WINBASEAPI BOOL WINAPI QueryInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, LPVOID, DWORD, LPDWORD);
+WINBASEAPI BOOL WINAPI CreateProcessWithLogonW (LPCWSTR,LPCWSTR,LPCWSTR,DWORD,
+ LPCWSTR,LPWSTR,DWORD,LPVOID,
+ LPCWSTR,LPSTARTUPINFOW,
+ LPPROCESS_INFORMATION);
+WINBASEAPI BOOL WINAPI CreateRestrictedToken(HANDLE,DWORD,DWORD,PSID_AND_ATTRIBUTES,DWORD,PLUID_AND_ATTRIBUTES,DWORD,PSID_AND_ATTRIBUTES,PHANDLE);
+WINBASEAPI HANDLE WINAPI CreateTimerQueue(void);
+WINBASEAPI BOOL WINAPI CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG);
+WINBASEAPI BOOL WINAPI DeleteTimerQueue(HANDLE);
+WINBASEAPI BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE);
+WINBASEAPI BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE);
+#define DeleteVolumeMountPoint __AW(DeleteVolumeMountPoint)
+WINBASEAPI BOOL WINAPI DeleteVolumeMountPointA(LPCSTR);
+WINBASEAPI BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR);
+#define DnsHostnameToComputerName __AW(DnsHostnameToComputerName)
+WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameA(LPCSTR,LPSTR,LPDWORD);
+WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameW(LPCWSTR,LPWSTR,LPDWORD);
+#define FindFirstVolume __AW(FindFirstVolume)
+WINBASEAPI HANDLE WINAPI FindFirstVolumeA(LPCSTR,DWORD);
+WINBASEAPI HANDLE WINAPI FindFirstVolumeW(LPCWSTR,DWORD);
+#define FindFirstVolumeMountPoint __AW(FindFirstVolumeMountPoint)
+WINBASEAPI HANDLE WINAPI FindFirstVolumeMountPointA(LPSTR,LPSTR,DWORD);
+WINBASEAPI HANDLE WINAPI FindFirstVolumeMountPointW(LPWSTR,LPWSTR,DWORD);
+#define FindNextVolume __AW(FindNextVolume)
+WINBASEAPI BOOL WINAPI FindNextVolumeA(HANDLE,LPCSTR,DWORD);
+WINBASEAPI BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD);
+#define FindNextVolumeMountPoint __AW(FindNextVolumeMountPoint)
+WINBASEAPI BOOL WINAPI FindNextVolumeMountPointA(HANDLE,LPSTR,DWORD);
+WINBASEAPI BOOL WINAPI FindNextVolumeMountPointW(HANDLE,LPWSTR,DWORD);
+WINBASEAPI BOOL WINAPI FindVolumeClose(HANDLE);
+WINBASEAPI BOOL WINAPI FindVolumeMountPointClose(HANDLE);
+#define GetComputerNameEx __AW(GetComputerNameEx)
+WINBASEAPI BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD);
+WINBASEAPI BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD);
+WINBASEAPI BOOL WINAPI GetFileSizeEx(HANDLE,PLARGE_INTEGER);
+#define GetLongPathName __AW(GetLongPathName)
+WINBASEAPI DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD);
+WINBASEAPI DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD);
+WINBASEAPI BOOL WINAPI GetProcessIoCounters(HANDLE,PIO_COUNTERS);
+#define GetSystemWindowsDirectory __AW(GetSystemWindowsDirectory)
+WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT);
+WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT);
+WINBASEAPI BOOL WINAPI GetVolumeNameForVolumeMountPointA(LPCSTR,LPSTR,DWORD);
+WINBASEAPI BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
+#define GetVolumePathName __AW(GetVolumePathName)
+WINBASEAPI BOOL WINAPI GetVolumePathNameA(LPCSTR,LPSTR,DWORD);
+WINBASEAPI BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD);
+WINBASEAPI BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX);
+WINBASEAPI BOOL WINAPI IsTokenRestricted(HANDLE);
+#define MoveFileWithProgress __AW(MoveFileWithProgress)
+WINBASEAPI BOOL WINAPI MoveFileWithProgressA(LPCSTR,LPCSTR,LPPROGRESS_ROUTINE,LPVOID,DWORD);
+WINBASEAPI BOOL WINAPI MoveFileWithProgressW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,DWORD);
+WINBASEAPI BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*);
+WINBASEAPI BOOL WINAPI QueueUserWorkItem(LPTHREAD_START_ROUTINE,PVOID,ULONG);
+WINBASEAPI BOOL WINAPI RegisterWaitForSingleObject(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
+WINBASEAPI HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
+WINBASEAPI ULONG WINAPI RemoveVectoredExceptionHandler(PVOID);
+#define ReplaceFile __AW(ReplaceFile)
+WINBASEAPI BOOL WINAPI ReplaceFileA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPVOID,LPVOID);
+WINBASEAPI BOOL WINAPI ReplaceFileW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPVOID,LPVOID);
+#define SetComputerNameEx _AW(SetComputerNameEx)
+WINBASEAPI BOOL WINAPI SetComputerNameExA(COMPUTER_NAME_FORMAT,LPCSTR);
+WINBASEAPI BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR);
+#define SetVolumeMountPoint __AW(SetVolumeMountPoint)
+WINBASEAPI BOOL WINAPI SetVolumeMountPointA(LPCSTR,LPCSTR);
+WINBASEAPI BOOL WINAPI SetVolumeMountPointW(LPCWSTR,LPCWSTR);
WINBASEAPI BOOL WINAPI AllocateUserPhysicalPages(HANDLE,PULONG_PTR,PULONG_PTR);
WINBASEAPI BOOL WINAPI FreeUserPhysicalPages(HANDLE,PULONG_PTR,PULONG_PTR);
WINBASEAPI BOOL WINAPI MapUserPhysicalPages(PVOID,ULONG_PTR,PULONG_PTR);
WINBASEAPI BOOL WINAPI MapUserPhysicalPagesScatter(PVOID*,ULONG_PTR,PULONG_PTR);
-#endif
+#endif /* !RC_INVOKED */
-#ifdef UNICODE
-typedef STARTUPINFOW STARTUPINFO,*LPSTARTUPINFO;
-typedef WIN32_FIND_DATAW WIN32_FIND_DATA,*PWIN32_FIND_DATA,*LPWIN32_FIND_DATA;
-typedef HW_PROFILE_INFOW HW_PROFILE_INFO,*LPHW_PROFILE_INFO;
-#if (_WIN32_WINNT >= 0x0501)
-typedef ACTCTXW ACTCTX,*PACTCTX;
-typedef PCACTCTXW PCACTCTX;
-#endif
-#define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW
-#define AddAtom AddAtomW
-#define BackupEventLog BackupEventLogW
-#define BeginUpdateResource BeginUpdateResourceW
-#define BuildCommDCB BuildCommDCBW
-#define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW
-#define CallNamedPipe CallNamedPipeW
-#if (_WIN32_WINNT >= 0x0501)
-#define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3W
-#endif
-#define ClearEventLog ClearEventLogW
-#define CommConfigDialog CommConfigDialogW
-#define CopyFile CopyFileW
-#define CopyFileEx CopyFileExW
-#if (_WIN32_WINNT >= 0x0501)
-#define CreateActCtx CreateActCtxW
-#endif
-#define CreateDirectory CreateDirectoryW
-#define CreateDirectoryEx CreateDirectoryExW
-#define CreateEvent CreateEventW
-#define CreateFile CreateFileW
-#define CreateFileMapping CreateFileMappingW
-#if (_WIN32_WINNT >= 0x0500)
-#define CreateHardLink CreateHardLinkW
-#define CreateJobObject CreateJobObjectW
-#endif
-#define CreateMailslot CreateMailslotW
-#define CreateMutex CreateMutexW
-#define CreateNamedPipe CreateNamedPipeW
-#define CreateProcess CreateProcessW
-#define CreateProcessAsUser CreateProcessAsUserW
-#define CreateSemaphore CreateSemaphoreW
-#if (_WIN32_WINNT >= 0x0600)
-#define CreateSymbolicLink CreateSymbolicLinkW
-#endif
-#define CreateWaitableTimer CreateWaitableTimerW
-#define DefineDosDevice DefineDosDeviceW
-#define DeleteFile DeleteFileW
-#if (_WIN32_WINNT >= 0x0500)
-#define DeleteVolumeMountPoint DeleteVolumeMountPointW
-#define DnsHostnameToComputerName DnsHostnameToComputerNameW
-#endif
-#define EncryptFile EncryptFileW
-#define EndUpdateResource EndUpdateResourceW
-#define EnumResourceLanguages EnumResourceLanguagesW
-#define EnumResourceNames EnumResourceNamesW
-#define EnumResourceTypes EnumResourceTypesW
-#define ExpandEnvironmentStrings ExpandEnvironmentStringsW
-#define FatalAppExit FatalAppExitW
-#define FileEncryptionStatus FileEncryptionStatusW
-#if (_WIN32_WINNT >= 0x0501)
-#define FindActCtxSectionString FindActCtxSectionStringW
-#endif
-#define FindAtom FindAtomW
-#define FindFirstChangeNotification FindFirstChangeNotificationW
-#define FindFirstFile FindFirstFileW
-#define FindFirstFileEx FindFirstFileExW
-#if (_WIN32_WINNT >= 0x0500)
-#define FindFirstVolume FindFirstVolumeW
-#define FindFirstVolumeMountPoint FindFirstVolumeMountPointW
-#endif
-#define FindNextFile FindNextFileW
-#if (_WIN32_WINNT >= 0x0500)
-#define FindNextVolume FindNextVolumeW
-#define FindNextVolumeMountPoint FindNextVolumeMountPointW
-#endif
-#define FindResource FindResourceW
-#define FindResourceEx FindResourceExW
-#define FormatMessage FormatMessageW
-#define FreeEnvironmentStrings FreeEnvironmentStringsW
-#define GetAtomName GetAtomNameW
-#define GetBinaryType GetBinaryTypeW
-#define GetCommandLine GetCommandLineW
-#define GetCompressedFileSize GetCompressedFileSizeW
-#define GetComputerName GetComputerNameW
-#if (_WIN32_WINNT >= 0x0500)
-#define GetComputerNameEx GetComputerNameExW
-#endif
-#define GetCurrentDirectory GetCurrentDirectoryW
-#define GetDefaultCommConfig GetDefaultCommConfigW
-#define GetDiskFreeSpace GetDiskFreeSpaceW
-#define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
-#if (_WIN32_WINNT >= 0x0502)
-#define GetDllDirectory GetDllDirectoryW
-#endif
-#define GetDriveType GetDriveTypeW
-#define GetEnvironmentStrings GetEnvironmentStringsW
-#define GetEnvironmentVariable GetEnvironmentVariableW
-#define GetFileAttributes GetFileAttributesW
-#define GetFileSecurity GetFileSecurityW
-#define GetFileAttributesEx GetFileAttributesExW
-#if (_WIN32_WINNT >= 0x0600)
-#define GetFinalPathNameByHandle GetFinalPathNameByHandleW
-#endif
-#define GetFullPathName GetFullPathNameW
-#define GetLogicalDriveStrings GetLogicalDriveStringsW
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-#define GetLongPathName GetLongPathNameW
-#endif
-#define GetModuleFileName GetModuleFileNameW
-#define GetModuleHandle GetModuleHandleW
-#if (_WIN32_WINNT >= 0x0501)
-#define GetModuleHandleEx GetModuleHandleExW
-#endif
-#define GetNamedPipeHandleState GetNamedPipeHandleStateW
-#define GetPrivateProfileInt GetPrivateProfileIntW
-#define GetPrivateProfileSection GetPrivateProfileSectionW
-#define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesW
-#define GetPrivateProfileString GetPrivateProfileStringW
-#define GetPrivateProfileStruct GetPrivateProfileStructW
-#define GetProfileInt GetProfileIntW
-#define GetProfileSection GetProfileSectionW
-#define GetProfileString GetProfileStringW
-#define GetShortPathName GetShortPathNameW
-#define GetStartupInfo GetStartupInfoW
-#define GetSystemDirectory GetSystemDirectoryW
-#if (_WIN32_WINNT >= 0x0500)
-#define GetSystemWindowsDirectory GetSystemWindowsDirectoryW
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-#define GetSystemWow64Directory GetSystemWow64DirectoryW
-#endif
-#define GetTempFileName GetTempFileNameW
-#define GetTempPath GetTempPathW
-#define GetUserName GetUserNameW
-#define GetVersionEx GetVersionExW
-#define GetVolumeInformation GetVolumeInformationW
-#define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointW
-#define GetVolumePathName GetVolumePathNameW
-#define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameW
-#define GetWindowsDirectory GetWindowsDirectoryW
-#define GlobalAddAtom GlobalAddAtomW
-#define GlobalFindAtom GlobalFindAtomW
-#define GlobalGetAtomName GlobalGetAtomNameW
-#define IsBadStringPtr IsBadStringPtrW
-#define LoadLibrary LoadLibraryW
-#define LoadLibraryEx LoadLibraryExW
-#define LogonUser LogonUserW
-#define LookupAccountName LookupAccountNameW
-#define LookupAccountSid LookupAccountSidW
-#define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameW
-#define LookupPrivilegeName LookupPrivilegeNameW
-#define LookupPrivilegeValue LookupPrivilegeValueW
-#define lstrcat lstrcatW
-#define lstrcmp lstrcmpW
-#define lstrcmpi lstrcmpiW
-#define lstrcpy lstrcpyW
-#define lstrcpyn lstrcpynW
-#define lstrlen lstrlenW
-#define MoveFile MoveFileW
-#define MoveFileEx MoveFileExW
-#if (_WIN32_WINNT >= 0x0500)
-#define MoveFileWithProgress MoveFileWithProgressW
-#endif
-#define ObjectCloseAuditAlarm ObjectCloseAuditAlarmW
-#define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmW
-#define ObjectOpenAuditAlarm ObjectOpenAuditAlarmW
-#define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmW
-#define OpenBackupEventLog OpenBackupEventLogW
-#define OpenEvent OpenEventW
-#define OpenEventLog OpenEventLogW
-#define OpenFileMapping OpenFileMappingW
-#define OpenMutex OpenMutexW
-#define OpenSemaphore OpenSemaphoreW
-#define OutputDebugString OutputDebugStringW
-#define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmW
-#define QueryDosDevice QueryDosDeviceW
-#define ReadEventLog ReadEventLogW
-#define RegisterEventSource RegisterEventSourceW
-#define RemoveDirectory RemoveDirectoryW
-#if (_WIN32_WINNT >= 0x0500)
-#define ReplaceFile ReplaceFileW
-#endif
-#define ReportEvent ReportEventW
-#define SearchPath SearchPathW
-#define SetComputerName SetComputerNameW
-#define SetCurrentDirectory SetCurrentDirectoryW
-#define SetDefaultCommConfig SetDefaultCommConfigW
-#if (_WIN32_WINNT >= 0x0502)
-#define SetDllDirectory SetDllDirectoryW
-#endif
-#define SetEnvironmentVariable SetEnvironmentVariableW
-#define SetFileAttributes SetFileAttributesW
-#define SetFileSecurity SetFileSecurityW
-#if (_WIN32_WINNT >= 0x0501)
-#define SetFileShortName SetFileShortNameW
-#endif
-#if (_WIN32_WINNT >= 0x0502)
-#define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableW
-#endif
-#define SetVolumeLabel SetVolumeLabelW
-#define SetVolumeMountPoint SetVolumeMountPointW
-#define UpdateResource UpdateResourceW
-#define VerifyVersionInfo VerifyVersionInfoW
-#define WaitNamedPipe WaitNamedPipeW
-#define WritePrivateProfileSection WritePrivateProfileSectionW
-#define WritePrivateProfileString WritePrivateProfileStringW
-#define WritePrivateProfileStruct WritePrivateProfileStructW
-#define WriteProfileSection WriteProfileSectionW
-#define WriteProfileString WriteProfileStringW
-#else
-typedef STARTUPINFOA STARTUPINFO,*LPSTARTUPINFO;
-typedef WIN32_FIND_DATAA WIN32_FIND_DATA,*PWIN32_FIND_DATA,*LPWIN32_FIND_DATA;
-typedef HW_PROFILE_INFOA HW_PROFILE_INFO,*LPHW_PROFILE_INFO;
-#if (_WIN32_WINNT >= 0x0501)
-typedef ACTCTXA ACTCTX,*PACTCTX;
-typedef PCACTCTXA PCACTCTX;
-#endif
-#define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA
-#define AddAtom AddAtomA
-#define BackupEventLog BackupEventLogA
-#define BeginUpdateResource BeginUpdateResourceA
-#define BuildCommDCB BuildCommDCBA
-#define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsA
-#define CallNamedPipe CallNamedPipeA
-#if (_WIN32_WINNT >= 0x0501)
-#define CheckNameLegalDOS8Dot3 CheckNameLegalDOS8Dot3A
-#endif
-#define ClearEventLog ClearEventLogA
-#define CommConfigDialog CommConfigDialogA
-#define CopyFile CopyFileA
-#define CopyFileEx CopyFileExA
-#if (_WIN32_WINNT >= 0x0501)
-#define CreateActCtx CreateActCtxA
-#endif
-#define CreateDirectory CreateDirectoryA
-#define CreateDirectoryEx CreateDirectoryExA
-#define CreateEvent CreateEventA
-#define CreateFile CreateFileA
-#define CreateFileMapping CreateFileMappingA
-#if (_WIN32_WINNT >= 0x0500)
-#define CreateHardLink CreateHardLinkA
-#define CreateJobObject CreateJobObjectA
-#endif
-#define CreateMailslot CreateMailslotA
-#define CreateMutex CreateMutexA
-#define CreateNamedPipe CreateNamedPipeA
-#define CreateProcess CreateProcessA
-#define CreateProcessAsUser CreateProcessAsUserA
-#define CreateSemaphore CreateSemaphoreA
-#if (_WIN32_WINNT >= 0x0600)
-#define CreateSymbolicLink CreateSymbolicLinkA
-#endif
-#define CreateWaitableTimer CreateWaitableTimerA
-#define DefineDosDevice DefineDosDeviceA
-#define DeleteFile DeleteFileA
-#if (_WIN32_WINNT >= 0x0500)
-#define DeleteVolumeMountPoint DeleteVolumeMountPointA
-#define DnsHostnameToComputerName DnsHostnameToComputerNameA
-#endif
-#define EncryptFile EncryptFileA
-#define EndUpdateResource EndUpdateResourceA
-#define EnumResourceLanguages EnumResourceLanguagesA
-#define EnumResourceNames EnumResourceNamesA
-#define EnumResourceTypes EnumResourceTypesA
-#define ExpandEnvironmentStrings ExpandEnvironmentStringsA
-#define FatalAppExit FatalAppExitA
-#define FileEncryptionStatus FileEncryptionStatusA
-#if (_WIN32_WINNT >= 0x0501)
-#define FindActCtxSectionString FindActCtxSectionStringA
-#endif
-#define FindAtom FindAtomA
-#define FindFirstChangeNotification FindFirstChangeNotificationA
-#define FindFirstFile FindFirstFileA
-#define FindFirstFileEx FindFirstFileExA
-#if (_WIN32_WINNT >= 0x0500)
-#define FindFirstVolume FindFirstVolumeA
-#define FindFirstVolumeMountPoint FindFirstVolumeMountPointA
-#endif
-#define FindNextFile FindNextFileA
-#if (_WIN32_WINNT >= 0x0500)
-#define FindNextVolume FindNextVolumeA
-#define FindNextVolumeMountPoint FindNextVolumeMountPointA
-#endif
-#define FindResource FindResourceA
-#define FindResourceEx FindResourceExA
-#define FormatMessage FormatMessageA
-#define FreeEnvironmentStrings FreeEnvironmentStringsA
-#define GetAtomName GetAtomNameA
-#define GetBinaryType GetBinaryTypeA
-#define GetCommandLine GetCommandLineA
-#define GetComputerName GetComputerNameA
-#if (_WIN32_WINNT >= 0x0500)
-#define GetComputerNameEx GetComputerNameExA
-#endif
-#define GetCompressedFileSize GetCompressedFileSizeA
-#define GetCurrentDirectory GetCurrentDirectoryA
-#define GetDefaultCommConfig GetDefaultCommConfigA
-#define GetDiskFreeSpace GetDiskFreeSpaceA
-#define GetDiskFreeSpaceEx GetDiskFreeSpaceExA
-#if (_WIN32_WINNT >= 0x0502)
-#define GetDllDirectory GetDllDirectoryA
-#endif
-#define GetDriveType GetDriveTypeA
-#define GetEnvironmentVariable GetEnvironmentVariableA
-#define GetFileAttributes GetFileAttributesA
-#define GetFileSecurity GetFileSecurityA
-#define GetFileAttributesEx GetFileAttributesExA
-#if (_WIN32_WINNT >= 0x0600)
-#define GetFinalPathNameByHandle GetFinalPathNameByHandleA
-#endif
-#define GetFullPathName GetFullPathNameA
-#define GetLogicalDriveStrings GetLogicalDriveStringsA
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-#define GetLongPathName GetLongPathNameA
-#endif
-#define GetNamedPipeHandleState GetNamedPipeHandleStateA
-#define GetModuleHandle GetModuleHandleA
-#if (_WIN32_WINNT >= 0x0501)
-#define GetModuleHandleEx GetModuleHandleExA
-#endif
-#define GetModuleFileName GetModuleFileNameA
-#define GetPrivateProfileInt GetPrivateProfileIntA
-#define GetPrivateProfileSection GetPrivateProfileSectionA
-#define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesA
-#define GetPrivateProfileString GetPrivateProfileStringA
-#define GetPrivateProfileStruct GetPrivateProfileStructA
-#define GetProfileInt GetProfileIntA
-#define GetProfileSection GetProfileSectionA
-#define GetProfileString GetProfileStringA
-#define GetShortPathName GetShortPathNameA
-#define GetStartupInfo GetStartupInfoA
-#define GetSystemDirectory GetSystemDirectoryA
-#if (_WIN32_WINNT >= 0x0500)
-#define GetSystemWindowsDirectory GetSystemWindowsDirectoryA
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-#define GetSystemWow64Directory GetSystemWow64DirectoryA
-#endif
-#define GetTempFileName GetTempFileNameA
-#define GetTempPath GetTempPathA
-#define GetUserName GetUserNameA
-#define GetVersionEx GetVersionExA
-#define GetVolumeInformation GetVolumeInformationA
-#define GetVolumeNameForVolumeMountPoint GetVolumeNameForVolumeMountPointA
-#define GetVolumePathName GetVolumePathNameA
-#define GetVolumePathNamesForVolumeName GetVolumePathNamesForVolumeNameA
-#define GetWindowsDirectory GetWindowsDirectoryA
-#define GlobalAddAtom GlobalAddAtomA
-#define GlobalFindAtom GlobalFindAtomA
-#define GlobalGetAtomName GlobalGetAtomNameA
-#define IsBadStringPtr IsBadStringPtrA
-#define LoadLibrary LoadLibraryA
-#define LoadLibraryEx LoadLibraryExA
-#define LogonUser LogonUserA
-#define LookupAccountName LookupAccountNameA
-#define LookupAccountSid LookupAccountSidA
-#define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameA
-#define LookupPrivilegeName LookupPrivilegeNameA
-#define LookupPrivilegeValue LookupPrivilegeValueA
-#define lstrcat lstrcatA
-#define lstrcmp lstrcmpA
-#define lstrcmpi lstrcmpiA
-#define lstrcpy lstrcpyA
-#define lstrcpyn lstrcpynA
-#define lstrlen lstrlenA
-#define MoveFile MoveFileA
-#define MoveFileEx MoveFileExA
-#if (_WIN32_WINNT >= 0x0500)
-#define MoveFileWithProgress MoveFileWithProgressA
-#endif
-#define ObjectCloseAuditAlarm ObjectCloseAuditAlarmA
-#define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmA
-#define ObjectOpenAuditAlarm ObjectOpenAuditAlarmA
-#define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmA
-#define OpenBackupEventLog OpenBackupEventLogA
-#define OpenEvent OpenEventA
-#define OpenEventLog OpenEventLogA
-#define OpenFileMapping OpenFileMappingA
-#define OpenMutex OpenMutexA
-#define OpenSemaphore OpenSemaphoreA
-#define OutputDebugString OutputDebugStringA
-#define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmA
-#define QueryDosDevice QueryDosDeviceA
-#define ReadEventLog ReadEventLogA
-#define RegisterEventSource RegisterEventSourceA
-#define RemoveDirectory RemoveDirectoryA
-#if (_WIN32_WINNT >= 0x0500)
-#define ReplaceFile ReplaceFileA
-#endif
-#define ReportEvent ReportEventA
-#define SearchPath SearchPathA
-#define SetComputerName SetComputerNameA
-#define SetCurrentDirectory SetCurrentDirectoryA
-#define SetDefaultCommConfig SetDefaultCommConfigA
-#if (_WIN32_WINNT >= 0x0502)
-#define SetDllDirectory SetDllDirectoryA
-#endif
-#define SetEnvironmentVariable SetEnvironmentVariableA
-#define SetFileAttributes SetFileAttributesA
-#define SetFileSecurity SetFileSecurityA
-#if (_WIN32_WINNT >= 0x0501)
-#define SetFileShortName SetFileShortNameA
-#endif
-#if (_WIN32_WINNT >= 0x0502)
-#define SetFirmwareEnvironmentVariable SetFirmwareEnvironmentVariableA
-#endif
-#define SetVolumeLabel SetVolumeLabelA
-#define SetVolumeMountPoint SetVolumeMountPointA
-#define UpdateResource UpdateResourceA
-#define VerifyVersionInfo VerifyVersionInfoA
-#define WaitNamedPipe WaitNamedPipeA
-#define WritePrivateProfileSection WritePrivateProfileSectionA
-#define WritePrivateProfileString WritePrivateProfileStringA
-#define WritePrivateProfileStruct WritePrivateProfileStructA
-#define WriteProfileSection WriteProfileSectionA
-#define WriteProfileString WriteProfileStringA
-#endif
-#endif
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+#define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x0008
+#define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID 0x00000001
+#define ACTCTX_FLAG_LANGID_VALID 0x00000002
+#define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID 0x00000004
+#define ACTCTX_FLAG_RESOURCE_NAME_VALID 0x00000008
+#define ACTCTX_FLAG_SET_PROCESS_DEFAULT 0x00000010
+#define ACTCTX_FLAG_APPLICATION_NAME_VALID 0x00000020
+#define ACTCTX_FLAG_HMODULE_VALID 0x00000080
+#define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION 0x00000001
+#define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX 0x00000001
+#define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
+#define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
+#define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
+
+#ifndef RC_INVOKED
+typedef struct tagACTCTXA {
+ ULONG cbSize;
+ DWORD dwFlags;
+ LPCSTR lpSource;
+ USHORT wProcessorArchitecture;
+ LANGID wLangId;
+ LPCSTR lpAssemblyDirectory;
+ LPCSTR lpResourceName;
+ LPCSTR lpApplicationName;
+ HMODULE hModule;
+} ACTCTXA,*PACTCTXA;
+typedef const ACTCTXA *PCACTCTXA;
+typedef struct tagACTCTXW {
+ ULONG cbSize;
+ DWORD dwFlags;
+ LPCWSTR lpSource;
+ USHORT wProcessorArchitecture;
+ LANGID wLangId;
+ LPCWSTR lpAssemblyDirectory;
+ LPCWSTR lpResourceName;
+ LPCWSTR lpApplicationName;
+ HMODULE hModule;
+} ACTCTXW,*PACTCTXW;
+typedef const ACTCTXW *PCACTCTXW;
+typedef struct tagACTCTX_SECTION_KEYED_DATA {
+ ULONG cbSize;
+ ULONG ulDataFormatVersion;
+ PVOID lpData;
+ ULONG ulLength;
+ PVOID lpSectionGlobalData;
+ ULONG ulSectionGlobalDataLength;
+ PVOID lpSectionBase;
+ ULONG ulSectionTotalLength;
+ HANDLE hActCtx;
+ HANDLE ulAssemblyRosterIndex;
+} ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
+typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
+typedef enum {
+ LowMemoryResourceNotification ,
+ HighMemoryResourceNotification
+} MEMORY_RESOURCE_NOTIFICATION_TYPE;
+WINBASEAPI BOOL WINAPI ActivateActCtx(HANDLE,ULONG_PTR*);
+WINBASEAPI void WINAPI AddRefActCtx(HANDLE);
+#define CheckNameLegalDOS8Dot3 __AW(CheckNameLegalDOS8Dot3)
+WINBASEAPI BOOL WINAPI CheckNameLegalDOS8Dot3A(LPCSTR,LPSTR,DWORD,PBOOL,PBOOL);
+WINBASEAPI BOOL WINAPI CheckNameLegalDOS8Dot3W(LPCWSTR,LPSTR,DWORD,PBOOL,PBOOL);
+WINBASEAPI BOOL WINAPI CheckRemoteDebuggerPresent(HANDLE,PBOOL);
+#define CreateActCtx __AW(CreateActCtx)
+WINBASEAPI HANDLE WINAPI CreateActCtxA(PCACTCTXA);
+WINBASEAPI HANDLE WINAPI CreateActCtxW(PCACTCTXW);
+WINBASEAPI HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE);
+WINBASEAPI BOOL WINAPI DeactivateActCtx(DWORD,ULONG_PTR);
+WINBASEAPI BOOL WINAPI DebugActiveProcessStop(DWORD);
+WINBASEAPI BOOL WINAPI DebugBreakProcess(HANDLE);
+WINBASEAPI BOOL WINAPI DebugSetProcessKillOnExit(BOOL);
+WINBASEAPI BOOL WINAPI FindActCtxSectionGuid(DWORD,const GUID*,ULONG,const GUID*,PACTCTX_SECTION_KEYED_DATA);
+#define FindActCtxSectionString __AW(FindActCtxSectionString)
+WINBASEAPI BOOL WINAPI FindActCtxSectionStringA(DWORD,const GUID*,ULONG,LPCSTR,PACTCTX_SECTION_KEYED_DATA);
+WINBASEAPI BOOL WINAPI FindActCtxSectionStringW(DWORD,const GUID*,ULONG,LPCWSTR,PACTCTX_SECTION_KEYED_DATA);
+WINBASEAPI BOOL WINAPI GetCurrentActCtx(HANDLE*);
+#define GetModuleHandleEx __AW(GetModuleHandleEx)
+WINBASEAPI BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*);
+WINBASEAPI BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*);
+WINBASEAPI VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
+WINBASEAPI BOOL WINAPI GetProcessDEPPolicy (HANDLE, LPDWORD, PBOOL);
+WINBASEAPI BOOL WINAPI GetProcessHandleCount(HANDLE,PDWORD);
+WINBASEAPI DWORD WINAPI GetProcessId(HANDLE);
+WINBASEAPI BOOL WINAPI GetSystemRegistryQuota(PDWORD,PDWORD);
+WINBASEAPI BOOL WINAPI GetSystemTimes(LPFILETIME,LPFILETIME,LPFILETIME);
+#define GetSystemWow64Directory __AW(GetSystemWow64Directory)
+WINBASEAPI UINT WINAPI GetSystemWow64DirectoryA(LPSTR,UINT);
+WINBASEAPI UINT WINAPI GetSystemWow64DirectoryW(LPWSTR,UINT);
+WINBASEAPI BOOL WINAPI GetThreadIOPendingFlag(HANDLE,PBOOL);
+#define GetVolumePathNamesForVolumeName __AW(GetVolumePathNamesForVolumeName)
+WINBASEAPI BOOL WINAPI GetVolumePathNamesForVolumeNameA(LPCSTR,LPSTR,DWORD,PDWORD);
+WINBASEAPI BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD);
+WINBASEAPI BOOL WINAPI HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T);
+WINBASEAPI BOOL WINAPI HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T);
+WINBASEAPI BOOL IsProcessInJob(HANDLE,HANDLE,PBOOL);
+WINBASEAPI BOOL WINAPI IsWow64Process(HANDLE,PBOOL);
+WINBASEAPI BOOL WINAPI QueryActCtxW(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T*);
+WINBASEAPI BOOL WINAPI QueryMemoryResourceNotification(HANDLE,PBOOL);
+WINBASEAPI void WINAPI ReleaseActCtx(HANDLE);
+#define SetFileShortName __AW(SetFileShortName)
+WINBASEAPI BOOL WINAPI SetFileShortNameA(HANDLE,LPCSTR);
+WINBASEAPI BOOL WINAPI SetFileShortNameW(HANDLE,LPCWSTR);
+WINBASEAPI BOOL WINAPI SetFileValidData(HANDLE,LONGLONG);
+WINBASEAPI BOOL WINAPI TzSpecificLocalTimeToSystemTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME);
+WINBASEAPI BOOL WINAPI UnregisterWait(HANDLE);
+WINBASEAPI BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE);
+WINBASEAPI BOOL WINAPI ZombifyActCtx(HANDLE);
+typedef __AW(ACTCTX) ACTCTX,*PACTCTX;
+typedef __AW(PCACTCTX) PCACTCTX;
+
+#if (NTDDI_VERSION >= NTDDI_WINXPSP1)
+#define GetFirmwareEnvironmentVariable __AW(GetFirmwareEnvironmentVariable)
+WINBASEAPI DWORD WINAPI GetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD);
+WINBASEAPI DWORD WINAPI GetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD);
+#define GetDllDirectory __AW(GetDllDirectory)
+WINBASEAPI DWORD WINAPI GetDllDirectoryA(DWORD,LPSTR);
+WINBASEAPI DWORD WINAPI GetDllDirectoryW(DWORD,LPWSTR);
+WINBASEAPI VOID WINAPI RestoreLastError(DWORD);
+#define SetDllDirectory __AW(SetDllDirectory)
+WINBASEAPI BOOL WINAPI SetDllDirectoryA(LPCSTR);
+WINBASEAPI BOOL WINAPI SetDllDirectoryW(LPCWSTR);
+WINBASEAPI BOOL WINAPI SetFirmwareEnvironmentVariableA(LPCSTR,LPCSTR,PVOID,DWORD);
+WINBASEAPI BOOL WINAPI SetFirmwareEnvironmentVariableW(LPCWSTR,LPCWSTR,PVOID,DWORD);
+#endif /* (NTDDI_VERSION >= NTDDI_WINXPSP1) */
+
+#endif /* !RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
+#define COPY_FILE_COPY_SYMLINK 0x0800
+#define COPY_FILE_NO_BUFFERING 0x1000
+#define THREAD_MODE_BACKGROUND_BEGIN 0x00010000
+#define THREAD_MODE_BACKGROUND_END 0x00020000
+/* http://msdn.microsoft.com/en-us/library/aa363866%28VS.85%29.aspx */
+#define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
+/* http://msdn.microsoft.com/en-us/library/aa364962%28VS.85%29.aspx */
+#define FILE_NAME_NORMALIZED 0x0
+#define FILE_NAME_OPENED 0x8
+#define VOLUME_NAME_DOS 0x0
+#define VOLUME_NAME_GUID 0x1
+#define VOLUME_NAME_NONE 0x4
+#define VOLUME_NAME_NT 0x2
+
+#ifndef RC_INVOKED
+/* http://msdn.microsoft.com/en-us/library/aa364217%28VS.85%29.aspx */
+typedef struct _FILE_BASIC_INFO {
+ LARGE_INTEGER CreationTime;
+ LARGE_INTEGER LastAccessTime;
+ LARGE_INTEGER LastWriteTime;
+ LARGE_INTEGER ChangeTime;
+ DWORD FileAttributes;
+} FILE_BASIC_INFO,*PFILE_BASIC_INFO,*LPFILE_BASIC_INFO;
+/* http://msdn.microsoft.com/en-us/library/aa364401%28VS.85%29.aspx */
+typedef struct _FILE_STANDARD_INFO {
+ LARGE_INTEGER AllocationSize;
+ LARGE_INTEGER EndOfFile;
+ DWORD NumberOfLinks;
+ BOOL DeletePending;
+ BOOL Directory;
+} FILE_STANDARD_INFO,*PFILE_STANDARD_INFO,*LPFILE_STANDARD_INFO;
+/* http://msdn.microsoft.com/en-us/library/aa364388%28v=VS.85%29.aspx */
+typedef struct _FILE_NAME_INFO {
+ DWORD FileNameLength;
+ WCHAR FileName[1];
+} FILE_NAME_INFO,*PFILE_NAME_INFO,*LPFILE_NAME_INFO;
+/* http://msdn.microsoft.com/en-us/library/aa364406%28v=VS.85%29.aspx */
+typedef struct _FILE_STREAM_INFO {
+ DWORD NextEntryOffset;
+ DWORD StreamNameLength;
+ LARGE_INTEGER StreamSize;
+ LARGE_INTEGER StreamAllocationSize;
+ WCHAR StreamName[1];
+} FILE_STREAM_INFO,*PFILE_STREAM_INFO,*LPFILE_STREAM_INFO;
+/* http://msdn.microsoft.com/en-us/library/aa364220%28v=VS.85%29.aspx */
+typedef struct _FILE_COMPRESSION_INFO {
+ LARGE_INTEGER CompressedFileSize;
+ WORD CompressionFormat;
+ UCHAR CompressionUnitShift;
+ UCHAR ChunkShift;
+ UCHAR ClusterShift;
+ UCHAR Reserved[3];
+} FILE_COMPRESSION_INFO,*PFILE_COMPRESSION_INFO,*LPFILE_COMPRESSION_INFO;
+/* http://msdn.microsoft.com/en-us/library/aa364216%28v=VS.85%29.aspx */
+typedef struct _FILE_ATTRIBUTE_TAG_INFO {
+ DWORD FileAttributes;
+ DWORD ReparseTag;
+} FILE_ATTRIBUTE_TAG_INFO,*PFILE_ATTRIBUTE_TAG_INFO,*LPFILE_ATTRIBUTE_TAG_INFO;
+/* http://msdn.microsoft.com/en-us/library/aa364226%28v=VS.85%29.aspx */
+typedef struct _FILE_ID_BOTH_DIR_INFO {
+ DWORD NextEntryOffset;
+ DWORD FileIndex;
+ LARGE_INTEGER CreationTime;
+ LARGE_INTEGER LastAccessTime;
+ LARGE_INTEGER LastWriteTime;
+ LARGE_INTEGER ChangeTime;
+ LARGE_INTEGER EndOfFile;
+ LARGE_INTEGER AllocationSize;
+ DWORD FileAttributes;
+ DWORD FileNameLength;
+ DWORD EaSize;
+ CCHAR ShortNameLength;
+ WCHAR ShortName[12];
+ LARGE_INTEGER FileId;
+ WCHAR FileName[1];
+} FILE_ID_BOTH_DIR_INFO,*PFILE_ID_BOTH_DIR_INFO,*LPFILE_ID_BOTH_DIR_INFO;
+/* http://msdn.microsoft.com/en-us/library/dd979524%28v=VS.85%29.aspx */
+typedef struct _FILE_REMOTE_PROTOCOL_INFO {
+ USHORT StructureVersion;
+ USHORT StructureSize;
+ ULONG Protocol;
+ USHORT ProtocolMajorVersion;
+ USHORT ProtocolMinorVersion;
+ USHORT ProtocolRevision;
+ USHORT Reserved;
+ ULONG Flags;
+ struct {
+ ULONG Reserved[8];
+ } GenericReserved;
+ struct {
+ ULONG Reserved[16];
+ } ProtocolSpecificReserved;
+} FILE_REMOTE_PROTOCOL_INFO,*PFILE_REMOTE_PROTOCOL_INFO,*LPFILE_REMOTE_PROTOCOL_INFO;
+typedef enum _DEP_SYSTEM_POLICY_TYPE {
+ AlwaysOn,
+ AlwaysOff,
+ OptIn,
+ OptOut
+} DEP_SYSTEM_POLICY_TYPE;
+/* http://msdn.microsoft.com/en-us/library/aa364228%28v=VS.85%29.aspx */
+typedef enum _FILE_INFO_BY_HANDLE_CLASS {
+ FileBasicInfo,
+ FileStandardInfo,
+ FileNameInfo,
+ FileRenameInfo,
+ FileDispositionInfo,
+ FileAllocationInfo,
+ FileEndOfFileInfo,
+ FileStreamInfo,
+ FileCompressionInfo,
+ FileAttributeTagInfo,
+ FileIdBothDirectoryInfo,
+ FileIdBothDirectoryRestartInfo,
+ FileIoPriorityHintInfo,
+ FileRemoteProtocolInfo,
+ MaximumFileInfoByHandlesClass
+} FILE_INFO_BY_HANDLE_CLASS,*PFILE_INFO_BY_HANDLE_CLASS;
+#define CreateSymbolicLink __AW(CreateSymbolicLink)
+WINBASEAPI BOOL WINAPI CreateSymbolicLinkA(LPCSTR,LPCSTR,DWORD);
+WINBASEAPI BOOL WINAPI CreateSymbolicLinkW(LPCWSTR,LPCWSTR,DWORD);
+/* http://msdn.microsoft.com/en-us/library/aa364953%28VS.85%29.aspx */
+WINBASEAPI BOOL WINAPI GetFileInformationByHandleEx(HANDLE,FILE_INFO_BY_HANDLE_CLASS,LPVOID,DWORD);
+/* http://msdn.microsoft.com/en-us/library/aa364962%28VS.85%29.aspx */
+#define GetFinalPathNameByHandle __AW(GetFinalPathNameByHandle)
+WINBASEAPI DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD);
+WINBASEAPI DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD);
+WINBASEAPI HANDLE WINAPI ReOpenFile(HANDLE,DWORD,DWORD,DWORD);
+#endif /* !RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_VISTA) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN7)
+#define PROCESS_DEP_ENABLE 1
+#define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 2
+
+#ifndef RC_INVOKED
+WINBASEAPI DEP_SYSTEM_POLICY_TYPE WINAPI GetSystemDEPPolicy (void);
+WINBASEAPI BOOL WINAPI SetProcessDEPPolicy (DWORD);
+#endif /* !RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN7) */
#ifdef __cplusplus
}
#endif
+
#endif /* _WINBASE_H */
#ifndef _WINBER_H
#define _WINBER_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* LDAP Basic Encoding Rules API
#ifdef __cplusplus
}
#endif
+
#endif /* _WINBER_H */
#ifndef _WINCON_H
#define _WINCON_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#define BACKGROUND_GREEN 32
#define BACKGROUND_RED 64
#define BACKGROUND_INTENSITY 128
-#if (_WIN32_WINNT >= 0x0501)
-#define CONSOLE_FULLSCREEN_MODE 1
-#define CONSOLE_WINDOWED_MODE 2
-#endif
+
#define CTRL_C_EVENT 0
#define CTRL_BREAK_EVENT 1
#define CTRL_CLOSE_EVENT 2
} INPUT_RECORD,*PINPUT_RECORD;
BOOL WINAPI AllocConsole(void);
-#if (_WIN32_WINNT >= 0x0501)
-#define ATTACH_PARENT_PROCESS ((DWORD)-1)
-BOOL WINAPI AttachConsole(DWORD);
-#endif
+
HANDLE WINAPI CreateConsoleScreenBuffer(DWORD,DWORD,CONST SECURITY_ATTRIBUTES*,DWORD,LPVOID);
BOOL WINAPI FillConsoleOutputAttribute(HANDLE,WORD,DWORD,COORD,PDWORD);
BOOL WINAPI FillConsoleOutputCharacterA(HANDLE,CHAR,DWORD,COORD,PDWORD);
BOOL WINAPI GetConsoleScreenBufferInfo(HANDLE,PCONSOLE_SCREEN_BUFFER_INFO);
DWORD WINAPI GetConsoleTitleA(LPSTR,DWORD);
DWORD WINAPI GetConsoleTitleW(LPWSTR,DWORD);
-#if (_WIN32_WINNT >= 0x0500)
-BOOL WINAPI GetConsoleDisplayMode(LPDWORD);
-HWND WINAPI GetConsoleWindow(void);
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-DWORD WINAPI GetConsoleProcessList(LPDWORD, DWORD);
-#endif
+
COORD WINAPI GetLargestConsoleWindowSize(HANDLE);
BOOL WINAPI GetNumberOfConsoleInputEvents(HANDLE,PDWORD);
BOOL WINAPI GetNumberOfConsoleMouseButtons(PDWORD);
BOOL WINAPI SetConsoleCtrlHandler(PHANDLER_ROUTINE,BOOL);
BOOL WINAPI SetConsoleCursorInfo(HANDLE,const CONSOLE_CURSOR_INFO*);
BOOL WINAPI SetConsoleCursorPosition(HANDLE,COORD);
-#if (_WIN32_WINNT >= 0x0501)
-BOOL WINAPI SetConsoleDisplayMode(HANDLE,DWORD,PCOORD);
-#endif
+
BOOL WINAPI SetConsoleMode(HANDLE,DWORD);
BOOL WINAPI SetConsoleOutputCP(UINT);
BOOL WINAPI SetConsoleScreenBufferSize(HANDLE,COORD);
BOOL WINAPI WriteConsoleOutputCharacterA(HANDLE,LPCSTR,DWORD,COORD,PDWORD);
BOOL WINAPI WriteConsoleOutputCharacterW(HANDLE,LPCWSTR,DWORD,COORD,PDWORD);
-#ifdef UNICODE
-#define FillConsoleOutputCharacter FillConsoleOutputCharacterW
-#define GetConsoleTitle GetConsoleTitleW
-#define PeekConsoleInput PeekConsoleInputW
-#define ReadConsole ReadConsoleW
-#define ReadConsoleInput ReadConsoleInputW
-#define ReadConsoleOutput ReadConsoleOutputW
-#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW
-#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW
-#define SetConsoleTitle SetConsoleTitleW
-#define WriteConsole WriteConsoleW
-#define WriteConsoleInput WriteConsoleInputW
-#define WriteConsoleOutput WriteConsoleOutputW
-#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW
-#else
-#define FillConsoleOutputCharacter FillConsoleOutputCharacterA
-#define GetConsoleTitle GetConsoleTitleA
-#define PeekConsoleInput PeekConsoleInputA
-#define ReadConsole ReadConsoleA
-#define ReadConsoleInput ReadConsoleInputA
-#define ReadConsoleOutput ReadConsoleOutputA
-#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA
-#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA
-#define SetConsoleTitle SetConsoleTitleA
-#define WriteConsole WriteConsoleA
-#define WriteConsoleInput WriteConsoleInputA
-#define WriteConsoleOutput WriteConsoleOutputA
-#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA
-#endif
+#define FillConsoleOutputCharacter __AW(FillConsoleOutputCharacter)
+#define GetConsoleTitle __AW(GetConsoleTitle)
+#define PeekConsoleInput __AW(PeekConsoleInput)
+#define ReadConsole __AW(ReadConsole)
+#define ReadConsoleInput __AW(ReadConsoleInput)
+#define ReadConsoleOutput __AW(ReadConsoleOutput)
+#define ReadConsoleOutputCharacter __AW(ReadConsoleOutputCharacter)
+#define ScrollConsoleScreenBuffer __AW(ScrollConsoleScreenBuffer)
+#define SetConsoleTitle __AW(SetConsoleTitle)
+#define WriteConsole __AW(WriteConsole)
+#define WriteConsoleInput __AW(WriteConsoleInput)
+#define WriteConsoleOutput __AW(WriteConsoleOutput)
+#define WriteConsoleOutputCharacter __AW(WriteConsoleOutputCharacter)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+BOOL WINAPI GetConsoleDisplayMode(LPDWORD);
+HWND WINAPI GetConsoleWindow(void);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+#define CONSOLE_FULLSCREEN_MODE 1
+#define CONSOLE_WINDOWED_MODE 2
+#define ATTACH_PARENT_PROCESS ((DWORD)-1)
+BOOL WINAPI AttachConsole(DWORD);
+DWORD WINAPI GetConsoleProcessList(LPDWORD, DWORD);
+BOOL WINAPI SetConsoleDisplayMode(HANDLE,DWORD,PCOORD);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
#ifdef __cplusplus
}
#endif
+
#endif
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
- *
+ *
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
- *
+ *
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
#ifndef _WINCRYPT_H
#define _WINCRYPT_H
#pragma GCC system_header
+#include <_mingw.h>
#ifndef WINADVAPI
#define WINADVAPI
#ifdef __cplusplus
extern "C" {
#endif
+
#define MS_DEF_PROV_A "Microsoft Base Cryptographic Provider v1.0"
#define MS_DEF_PROV_W L"Microsoft Base Cryptographic Provider v1.0"
#define MS_ENHANCED_PROV_A "Microsoft Enhanced Cryptographic Provider v1.0"
#define MS_DEF_DH_SCHANNEL_PROV_W L"Microsoft DH SChannel Cryptographic Provider"
#define MS_SCARD_PROV_A "Microsoft Base Smart Card Crypto Provider"
#define MS_SCARD_PROV_W L"Microsoft Base Smart Card Crypto Provider"
-#if (_WIN32_WINNT == 0x0501)
-#define MS_ENH_RSA_AES_PROV_A "Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"
-#define MS_ENH_RSA_AES_PROV_W L"Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"
-#elif (_WIN32_WINNT > 0x0501)
-#define MS_ENH_RSA_AES_PROV_A "Microsoft Enhanced RSA and AES Cryptographic Provider"
-#define MS_ENH_RSA_AES_PROV_W L"Microsoft Enhanced RSA and AES Cryptographic Provider"
-#endif
#define GET_ALG_CLASS(x) (x&57344)
#define GET_ALG_TYPE(x) (x&7680)
#define SCHANNEL_MAC_KEY 0x00000000
#define SCHANNEL_ENC_KEY 0x00000001
#define INTERNATIONAL_USAGE 0x00000001
-#if (WINVER >= 0x0501) /* Windows Server 2003, Windows XP */
-#define CMC_ADD_ATTRIBUTES (LPCSTR) 63
-#define CMC_ADD_EXTENSIONS (LPCSTR) 62
-#define X509_CERT_PAIR (LPCSTR) 53
-#define X509_CERTIFICATE_TEMPLATE (LPCSTR) 64
-#define X509_CROSS_CERT_DIST_POINTS (LPCSTR) 58
-#define CMC_DATA (LPCSTR) 59
-#define X509_NAME_CONSTRAINTS (LPCSTR) 55
-#define X509_POLICY_CONSTRAINTS (LPCSTR) 57
-#define X509_POLICY_MAPPINGS (LPCSTR) 56
-#define CMC_RESPONSE (LPCSTR) 60
-#define CMC_STATUS (LPCSTR) 61
-#endif /* (WINVER >= 0x0501) */ /* Windows Server 2003, Windows XP */
+
#define X509_ALGORITHM_IDENTIFIER (LPCSTR) 74
#define X509_ALTERNATE_NAME (LPCSTR) 12
/* need X509_ANY_STRING */
#define szOID_BIOMETRIC_EXT "1.3.6.1.5.5.7.1.2"
#define szOID_CERT_EXTENSIONS "1.3.6.1.4.1.311.2.1.14"
#define szOID_CERT_POLICIES "2.5.29.32"
-#if (WINVER >= 0x0501) /* Windows Server 2003, Windows XP */
-#define szOID_CERTIFICATE_TEMPLATE "1.3.6.1.4.1.311.21.7"
-#define szOID_CRL_NUMBER "2.5.29.20"
-#define szOID_CROSS_CERT_DIST_POINTS "1.3.6.1.4.1.311.10.9.1"
-#define szOID_DELTA_CRL_INDICATOR "2.5.29.27"
-#define szOID_ENROLLMENT_NAME_VALUE_PAIR "1.3.6.1.4.1.311.13.2.1"
-#define szOID_FRESHEST_CRL "2.5.29.46"
-#define szOID_ISSUING_DIST_POINT "2.5.29.28"
-#define szOID_NAME_CONSTRAINTS "2.5.29.30"
-#endif /* (WINVER >= 0x0501) */ /* Windows Server 2003, Windows XP */
+
#define szOID_CRL_DIST_POINTS 2.5.29.31
#define szOID_CRL_REASON_CODE "2.5.29.21"
#define szOID_CRL_VIRTUAL_BASE "1.3.6.1.4.1.311.21.3"
BOOL fCA;
BOOL fPathLenConstraint;
DWORD dwPathLenConstraint;
-} CERT_BASIC_CONSTRAINTS2_INFO,
+} CERT_BASIC_CONSTRAINTS2_INFO,
*PCERT_BASIC_CONSTRAINTS2_INFO;
typedef VOID (WINAPI *PFN_CRYPT_FREE)(LPVOID pv);
DWORD cbSize;
PFN_CRYPT_ALLOC pfnAlloc;
PFN_CRYPT_FREE pfnFree;
-} CRYPT_ENCODE_PARA,
+} CRYPT_ENCODE_PARA,
*PCRYPT_ENCODE_PARA;
/* Definition missing. */
CRYPT_DIGEST_BLOB, *PCRYPT_DIGEST_BLOB,
CRYPT_DER_BLOB, *PCRYPT_DER_BLOB,
CRYPT_ATTR_BLOB, *PCRYPT_ATTR_BLOB;
+typedef struct _CERT_OTHER_NAME {
+ LPSTR pszObjId;
+ CRYPT_OBJID_BLOB Value;
+} CERT_OTHER_NAME, *PCERT_OTHER_NAME;
/* not described in SDK; has the same layout as HTTPSPolicyCallbackData */
typedef struct _SSL_EXTRA_CERT_CHAIN_POLICY_PARA {
DWORD cbStruct;
BYTE* pbOuterString;
DWORD cbOuterString;
} HMAC_INFO, *PHMAC_INFO;
-#if (WINVER >= 0x0501) /* Windows Server 2003, Windows XP */
-typedef struct _CMC_ADD_ATTRIBUTES_INFO {
- DWORD dwCmcDataReference;
- DWORD cCertReference;
- DWORD* rgdwCertReference;
- DWORD cAttribute;
- PCRYPT_ATTRIBUTE rgAttribute;
-} CMC_ADD_ATTRIBUTES_INFO,
- *PCMC_ADD_ATTRIBUTES_INFO;
-typedef struct _CMC_ADD_EXTENSIONS_INFO {
- DWORD dwCmcDataReference;
- DWORD cCertReference;
- DWORD* rgdwCertReference;
- DWORD cExtension;
- PCERT_EXTENSION rgExtension;
-} CMC_ADD_EXTENSIONS_INFO,
- *PCMC_ADD_EXTENSIONS_INFO;
-#endif /* (WINVER >= 0x0501) */ /* Windows Server 2003, Windows XP */
-#if (WINVER >= 0x0410) /* Windows 98 */
-/* need PCERT_OTHER_NAME & CERT_DATA_BLOB!
-typedef struct _CERT_ALT_NAME_ENTRY {
- DWORD dwAltNameChoice;
- union {
- PCERT_OTHER_NAME pOtherName;
- LPWSTR pwszRfc822Name;
- LPWSTR pwszDNSName;
- CERT_DATA_BLOB x400Address;
- CERT_NAME_BLOB DirectoryName;
- LPWSTR pEdiPartyName;
- LPWSTR pwszURL;
- CRYPT_DATA_BLOB IPAddress;
- LPSTR pszRegisteredID;
- };
-} CERT_ALT_NAME_ENTRY,
- *PCERT_ALT_NAME_ENTRY;
-*/
-/* needs CERT_ALT_NAME_ENTRY above, which lacks prereqs
-typedef struct _CERT_ALT_NAME_INFO {
- DWORD cAltEntry;
- PCERT_ALT_NAME_ENTRY rgAltEntry;
-} CERT_ALT_NAME_INFO,
- *PCERT_ALT_NAME_INFO;
- */
-typedef struct _CERT_NAME_VALUE {
- DWORD dwValueType;
- CERT_RDN_VALUE_BLOB Value;
-} CERT_NAME_VALUE,
- *PCERT_NAME_VALUE;
-typedef struct _CERT_POLICY_QUALIFIER_INFO {
- LPSTR pszPolicyQualifierId;
- CRYPT_OBJID_BLOB Qualifier;
-} CERT_POLICY_QUALIFIER_INFO,
- *PCERT_POLICY_QUALIFIER_INFO;
-typedef struct _CERT_POLICY_CONSTRAINTS_INFO {
- BOOL fRequireExplicitPolicy;
- DWORD dwRequireExplicitPolicySkipCerts;
- BOOL fInhibitPolicyMapping;
- DWORD dwInhibitPolicyMappingSkipCerts;
-} CERT_POLICY_CONSTRAINTS_INFO,
- *PCERT_POLICY_CONSTRAINTS_INFO;
-#endif /* (WINVER >= 0x0410) */ /* Windows 98 */
-#if (WINVER >= 0x0501) /* Windows Server 2003, Windows XP */
-typedef struct _CERT_POLICY_MAPPING {
- LPSTR pszIssuerDomainPolicy;
- LPSTR pszSubjectDomainPolicy;
-} CERT_POLICY_MAPPING,
- *PCERT_POLICY_MAPPING;
-typedef struct _CERT_POLICY_MAPPINGS_INFO {
- DWORD cPolicyMapping;
- PCERT_POLICY_MAPPING rgPolicyMapping;
-} CERT_POLICY_MAPPINGS_INFO,
- *PCERT_POLICY_MAPPINGS_INFO;
-
-#endif /* (WINVER >= 0x0501) */ /* Windows Server 2003, Windows XP */
//http://msdn.microsoft.com/en-us/library/aa922935.aspx
//Some Crypto Key Provider Information structures.
WINADVAPI BOOL WINAPI CryptGenKey(HCRYPTPROV,ALG_ID,DWORD,HCRYPTKEY*);
WINADVAPI BOOL WINAPI CryptDeriveKey(HCRYPTPROV,ALG_ID,HCRYPTHASH,DWORD,HCRYPTKEY*);
WINADVAPI BOOL WINAPI CryptDestroyKey(HCRYPTKEY);
-#if (WINVER >= 0x0500)
-WINADVAPI BOOL WINAPI CryptDuplicateHash(HCRYPTHASH,DWORD*,DWORD,HCRYPTHASH*);
-WINADVAPI BOOL WINAPI CryptDuplicateKey(HCRYPTKEY,DWORD*,DWORD,HCRYPTKEY*);
-#endif
+
WINADVAPI BOOL WINAPI CryptSetKeyParam(HCRYPTKEY,DWORD,PBYTE,DWORD);
WINADVAPI BOOL WINAPI CryptGetKeyParam(HCRYPTKEY,DWORD,PBYTE,PDWORD,DWORD);
WINADVAPI BOOL WINAPI CryptSetHashParam(HCRYPTHASH,DWORD,PBYTE,DWORD);
WINADVAPI BOOL WINAPI CryptEnumProvidersA(DWORD,DWORD*,DWORD,DWORD*,LPTSTR,DWORD*);
WINADVAPI BOOL WINAPI CryptEnumProvidersW(DWORD,DWORD*,DWORD,DWORD*,LPTSTR,DWORD*);
-#ifdef UNICODE
-#define CertGetNameString CertGetNameStringW
-#else
-#define CertGetNameString CertGetNameStringA
-#endif
+#define CertGetNameString __AW(CertGetNameString)
+
+#define CertNameToStr __AW(CertNameToStr)
+#define CryptAcquireContext __AW(CryptAcquireContext)
+#define CryptSignHash __AW(CryptSignHash)
+#define CryptVerifySignature __AW(CryptVerifySignature)
+#define CryptSetProvider __AW(CryptSetProvider)
+#define CryptEnumProviders __AW(CryptEnumProviders)
+#define CertOpenSystemStore __AW(CertOpenSystemStore)
+#define CERT_FIND_SUBJECT_STR __AW(CERT_FIND_SUBJECT_STR_)
+#define CERT_FIND_ISSUER_STR __AW(CERT_FIND_ISSUER_STR_)
+#define MS_DEF_PROV __AW(MS_DEF_PROV_)
+#define MS_ENHANCED_PROV __AW(MS_ENHANCED_PROV_)
+#define MS_STRONG_PROV __AW(MS_STRONG_PROV_)
+#define MS_DEF_RSA_SIG_PROV __AW(MS_DEF_RSA_SIG_PROV_)
+#define MS_DEF_RSA_SCHANNEL_PROV __AW(MS_DEF_RSA_SCHANNEL_PROV_)
+#define MS_DEF_DSS_PROV __AW(MS_DEF_DSS_PROV_)
+#define MS_DEF_DSS_DH_PROV __AW(MS_DEF_DSS_DH_PROV_)
+#define MS_ENH_DSS_DH_PROV __AW(MS_ENH_DSS_DH_PROV_)
+#define MS_DEF_DH_SCHANNEL_PROV __AW(MS_DEF_DH_SCHANNEL_PROV_)
+#define MS_SCARD_PROV __AW(MS_SCARD_PROV_)
-#ifdef UNICODE
-#define CertNameToStr CertNameToStrW
-#define CryptAcquireContext CryptAcquireContextW
-#define CryptSignHash CryptSignHashW
-#define CryptVerifySignature CryptVerifySignatureW
-#define CryptSetProvider CryptSetProviderW
-#define CryptEnumProviders CryptEnumProvidersW
-#define CertOpenSystemStore CertOpenSystemStoreW
-#define CERT_FIND_SUBJECT_STR CERT_FIND_SUBJECT_STR_W
-#define CERT_FIND_ISSUER_STR CERT_FIND_ISSUER_STR_W
-#define MS_DEF_PROV MS_DEF_PROV_W
-#define MS_ENHANCED_PROV MS_ENHANCED_PROV_W
-#define MS_STRONG_PROV MS_STRONG_PROV_W
-#define MS_DEF_RSA_SIG_PROV MS_DEF_RSA_SIG_PROV_W
-#define MS_DEF_RSA_SCHANNEL_PROV MS_DEF_RSA_SCHANNEL_PROV_W
-#define MS_DEF_DSS_PROV MS_DEF_DSS_PROV_W
-#define MS_DEF_DSS_DH_PROV MS_DEF_DSS_DH_PROV_W
-#define MS_ENH_DSS_DH_PROV MS_ENH_DSS_DH_PROV_W
-#define MS_DEF_DH_SCHANNEL_PROV MS_DEF_DH_SCHANNEL_PROV_W
-#define MS_SCARD_PROV MS_SCARD_PROV_W
-#if (_WIN32_WINNT >= 0x0501)
-#define MS_ENH_RSA_AES_PROV MS_ENH_RSA_AES_PROV_W
-#endif
-#else
-#define CertNameToStr CertNameToStrA
-#define CryptAcquireContext CryptAcquireContextA
-#define CryptSignHash CryptSignHashA
-#define CryptVerifySignature CryptVerifySignatureA
-#define CryptSetProvider CryptSetProviderA
-#define CryptEnumProviders CryptEnumProvidersA
-#define CertOpenSystemStore CertOpenSystemStoreA
-#define CERT_FIND_SUBJECT_STR CERT_FIND_SUBJECT_STR_A
-#define CERT_FIND_ISSUER_STR CERT_FIND_ISSUER_STR_A
-#define MS_DEF_PROV MS_DEF_PROV_A
-#define MS_ENHANCED_PROV MS_ENHANCED_PROV_A
-#define MS_STRONG_PROV MS_STRONG_PROV_A
-#define MS_DEF_RSA_SIG_PROV MS_DEF_RSA_SIG_PROV_A
-#define MS_DEF_RSA_SCHANNEL_PROV MS_DEF_RSA_SCHANNEL_PROV_A
-#define MS_DEF_DSS_PROV MS_DEF_DSS_PROV_A
-#define MS_DEF_DSS_DH_PROV MS_DEF_DSS_DH_PROV_A
-#define MS_ENH_DSS_DH_PROV MS_ENH_DSS_DH_PROV_A
-#define MS_DEF_DH_SCHANNEL_PROV MS_DEF_DH_SCHANNEL_PROV_A
-#define MS_SCARD_PROV MS_SCARD_PROV_A
-#if (_WIN32_WINNT >= 0x0501)
-#define MS_ENH_RSA_AES_PROV MS_ENH_RSA_AES_PROV_A
-#endif
-#endif
/* from http://msdn2.microsoft.com/en-us/library/Aa380263.aspx: */
typedef struct _CRYPTPROTECT_PROMPTSTRUCT {
DWORD cbSize;
DWORD dwPromptFlags;
HWND hwndApp;
LPCWSTR szPrompt;
-} CRYPTPROTECT_PROMPTSTRUCT,
+} CRYPTPROTECT_PROMPTSTRUCT,
*PCRYPTPROTECT_PROMPTSTRUCT;
BOOL WINAPI CryptGetDefaultProviderA(DWORD,DWORD,DWORD,LPSTR,DWORD);
BOOL WINAPI CryptGetDefaultProviderW(DWORD,DWORD,DWORD,LPSTR,DWORD);
-#ifdef UNICODE
-#define CryptGetDefaultProvider CryptGetDefaultProviderW
-#else
-#define CryptGetDefaultProvider CryptGetDefaultProviderA
-#endif // !UNICODE
+#define CryptGetDefaultProvider __AW(CryptGetDefaultProvider)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN98) /* Windows 98 */
+typedef struct _CERT_ALT_NAME_ENTRY {
+ DWORD dwAltNameChoice;
+ union {
+ PCERT_OTHER_NAME pOtherName;
+ LPWSTR pwszRfc822Name;
+ LPWSTR pwszDNSName;
+ CRYPT_DATA_BLOB x400Address;
+ CERT_NAME_BLOB DirectoryName;
+ LPWSTR pEdiPartyName;
+ LPWSTR pwszURL;
+ CRYPT_DATA_BLOB IPAddress;
+ LPSTR pszRegisteredID;
+ };
+} CERT_ALT_NAME_ENTRY, *PCERT_ALT_NAME_ENTRY;
+typedef struct _CERT_ALT_NAME_INFO {
+ DWORD cAltEntry;
+ PCERT_ALT_NAME_ENTRY rgAltEntry;
+} CERT_ALT_NAME_INFO, *PCERT_ALT_NAME_INFO;
+typedef struct _CERT_NAME_VALUE {
+ DWORD dwValueType;
+ CERT_RDN_VALUE_BLOB Value;
+} CERT_NAME_VALUE,
+ *PCERT_NAME_VALUE;
+typedef struct _CERT_POLICY_QUALIFIER_INFO {
+ LPSTR pszPolicyQualifierId;
+ CRYPT_OBJID_BLOB Qualifier;
+} CERT_POLICY_QUALIFIER_INFO, *PCERT_POLICY_QUALIFIER_INFO;
+typedef struct _CERT_POLICY_CONSTRAINTS_INFO {
+ BOOL fRequireExplicitPolicy;
+ DWORD dwRequireExplicitPolicySkipCerts;
+ BOOL fInhibitPolicyMapping;
+ DWORD dwInhibitPolicyMappingSkipCerts;
+} CERT_POLICY_CONSTRAINTS_INFO, *PCERT_POLICY_CONSTRAINTS_INFO;
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN98) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+WINADVAPI BOOL WINAPI CryptDuplicateHash(HCRYPTHASH,DWORD*,DWORD,HCRYPTHASH*);
+WINADVAPI BOOL WINAPI CryptDuplicateKey(HCRYPTKEY,DWORD*,DWORD,HCRYPTKEY*);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT == _WIN32_WINNT_WINXP)
+#define MS_ENH_RSA_AES_PROV_A "Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"
+#define MS_ENH_RSA_AES_PROV_W L"Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"
+#endif /* (_WIN32_WINNT == _WIN32_WINNT_WINXP) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+#define CMC_ADD_ATTRIBUTES (LPCSTR) 63
+#define CMC_ADD_EXTENSIONS (LPCSTR) 62
+#define X509_CERT_PAIR (LPCSTR) 53
+#define X509_CERTIFICATE_TEMPLATE (LPCSTR) 64
+#define X509_CROSS_CERT_DIST_POINTS (LPCSTR) 58
+#define CMC_DATA (LPCSTR) 59
+#define X509_NAME_CONSTRAINTS (LPCSTR) 55
+#define X509_POLICY_CONSTRAINTS (LPCSTR) 57
+#define X509_POLICY_MAPPINGS (LPCSTR) 56
+#define CMC_RESPONSE (LPCSTR) 60
+#define CMC_STATUS (LPCSTR) 61
+#define szOID_CERTIFICATE_TEMPLATE "1.3.6.1.4.1.311.21.7"
+#define szOID_CRL_NUMBER "2.5.29.20"
+#define szOID_CROSS_CERT_DIST_POINTS "1.3.6.1.4.1.311.10.9.1"
+#define szOID_DELTA_CRL_INDICATOR "2.5.29.27"
+#define szOID_ENROLLMENT_NAME_VALUE_PAIR "1.3.6.1.4.1.311.13.2.1"
+#define szOID_FRESHEST_CRL "2.5.29.46"
+#define szOID_ISSUING_DIST_POINT "2.5.29.28"
+#define szOID_NAME_CONSTRAINTS "2.5.29.30"
+typedef struct _CMC_ADD_ATTRIBUTES_INFO {
+ DWORD dwCmcDataReference;
+ DWORD cCertReference;
+ DWORD* rgdwCertReference;
+ DWORD cAttribute;
+ PCRYPT_ATTRIBUTE rgAttribute;
+} CMC_ADD_ATTRIBUTES_INFO,
+ *PCMC_ADD_ATTRIBUTES_INFO;
+typedef struct _CMC_ADD_EXTENSIONS_INFO {
+ DWORD dwCmcDataReference;
+ DWORD cCertReference;
+ DWORD* rgdwCertReference;
+ DWORD cExtension;
+ PCERT_EXTENSION rgExtension;
+} CMC_ADD_EXTENSIONS_INFO,
+ *PCMC_ADD_EXTENSIONS_INFO;
+typedef struct _CERT_POLICY_MAPPING {
+ LPSTR pszIssuerDomainPolicy;
+ LPSTR pszSubjectDomainPolicy;
+} CERT_POLICY_MAPPING,
+ *PCERT_POLICY_MAPPING;
+typedef struct _CERT_POLICY_MAPPINGS_INFO {
+ DWORD cPolicyMapping;
+ PCERT_POLICY_MAPPING rgPolicyMapping;
+} CERT_POLICY_MAPPINGS_INFO,
+ *PCERT_POLICY_MAPPINGS_INFO;
+#define MS_ENH_RSA_AES_PROV __AW(MS_ENH_RSA_AES_PROV_)
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
+#define MS_ENH_RSA_AES_PROV_A "Microsoft Enhanced RSA and AES Cryptographic Provider"
+#define MS_ENH_RSA_AES_PROV_W L"Microsoft Enhanced RSA and AES Cryptographic Provider"
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_VISTA) */
-
#ifdef __cplusplus
}
#endif
+
#endif /* _WINCRYPT_H */
#ifndef _WINDEF_H
#define _WINDEF_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
* the windef.h header.
*/
#endif
+
#ifndef _WIN32_WINNT
#define _WIN32_WINNT WINVER
/*
* including windows.h or any other method of including the windef.h header.
*/
#endif
+
#define FAR
#define far
#define NEAR
#define near
+
#ifndef CONST
#define CONST const
#endif
+
#undef MAX_PATH
#define MAX_PATH 260
#ifndef NULL
+
#ifdef __cplusplus
#define NULL 0
#else
#define NULL ((void*)0)
#endif
+
#endif
+
#ifndef FALSE
#define FALSE 0
#endif
+
#ifndef TRUE
#define TRUE 1
#endif
#ifndef _NO_W32_PSEUDO_MODIFIERS
#define IN
#define OUT
+
#ifndef OPTIONAL
#define OPTIONAL
#endif
+
#endif
#ifndef _declspec
#ifndef _export
#define _export
#endif
+
#ifndef __export
#define __export
#endif
#ifndef NOMINMAX
+
#ifndef max
#define max(a,b) ((a)>(b)?(a):(b))
#endif
+
#ifndef min
#define min(a,b) ((a)<(b)?(a):(b))
#endif
+
#endif
#define UNREFERENCED_PARAMETER(P) {(P)=(P);}
#define DUMMYUNIONNAME7 u7
#define DUMMYUNIONNAME8 u8
#else
+
#define _UNION_NAME(x)
#define DUMMYUNIONNAME
#define DUMMYUNIONNAME2
#define DUMMYUNIONNAME7
#define DUMMYUNIONNAME8
#endif
+
#ifndef _ANONYMOUS_STRUCT
#define _ANONYMOUS_STRUCT
#define _STRUCT_NAME(x) x
#define DUMMYSTRUCTNAME2 s2
#define DUMMYSTRUCTNAME3 s3
#else
+
#define _STRUCT_NAME(x)
#define DUMMYSTRUCTNAME
#define DUMMYSTRUCTNAME2
#endif
#ifndef NO_STRICT
+
#ifndef STRICT
#define STRICT 1
#endif
+
#endif
/* FIXME: This will make some code compile. The programs will most
typedef UINT_PTR WPARAM;
typedef LONG_PTR LPARAM;
typedef LONG_PTR LRESULT;
+
#ifndef _HRESULT_DEFINED
typedef LONG HRESULT;
#define _HRESULT_DEFINED
#endif
+
typedef WORD ATOM;
typedef HANDLE HHOOK;
typedef HANDLE HGLOBAL;
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINDNS_H
#define _WINDNS_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
BOOL WINAPI DnsWriteQuestionToBuffer_W(PDNS_MESSAGE_BUFFER,LPDWORD,LPWSTR,WORD,WORD,BOOL);
BOOL WINAPI DnsWriteQuestionToBuffer_UTF8(PDNS_MESSAGE_BUFFER,LPDWORD,LPSTR,WORD,WORD,BOOL);
-#ifdef UNICODE
-#define DnsAcquireContextHandle DnsAcquireContextHandle_W
-#define DnsModifyRecordsInSet DnsModifyRecordsInSet_W
-#define DnsNameCompare DnsNameCompare_W
-#define DnsQuery DnsQuery_W
-#define DnsReplaceRecordSet DnsReplaceRecordSetW
-#define DnsValidateName DnsValidateName_W
-#else
-#define DnsAcquireContextHandle DnsAcquireContextHandle_A
-#define DnsModifyRecordsInSet DnsModifyRecordsInSet_A
-#define DnsNameCompare DnsNameCompare_A
-#define DnsQuery DnsQuery_A
-#define DnsReplaceRecordSet DnsReplaceRecordSetA
-#define DnsValidateName DnsValidateName_A
-#endif
+#define DnsAcquireContextHandle __AW(DnsAcquireContextHandle_)
+#define DnsModifyRecordsInSet __AW(DnsModifyRecordsInSet_)
+#define DnsNameCompare __AW(DnsNameCompare_)
+#define DnsQuery __AW(DnsQuery_)
+#define DnsReplaceRecordSet __AW(DnsReplaceRecordSet)
+#define DnsValidateName __AW(DnsValidateName_)
#endif /* RC_INVOKED */
#ifndef _WINDOWS_H
#define _WINDOWS_H
#pragma GCC system_header
-
-#include <sdkddkver.h>
+#include <_mingw.h>
/* translate GCC target defines to MS equivalents. Keep this synchronized
with winnt.h. */
#elif defined(__i386__) && !defined(_M_IX86)
#define _M_IX86 300
#endif
+
#if defined(_M_IX86) && !defined(_X86_)
#define _X86_
#elif defined(_M_ALPHA) && !defined(_ALPHA_)
#include <rpc.h>
#include <shellapi.h>
#include <winperf.h>
+
#ifndef NOGDI
#include <commdlg.h>
#include <winspool.h>
#endif
-#if defined(Win32_Winsock)
-#warning "The Win32_Winsock macro name is deprecated.\
- Please use __USE_W32_SOCKETS instead"
-#ifndef __USE_W32_SOCKETS
-#define __USE_W32_SOCKETS
-#endif
-#endif
-#if defined(__USE_W32_SOCKETS) || !(defined(__CYGWIN__) || defined(__MSYS__) || defined(_UWIN))
-#if (_WIN32_WINNT >= 0x0400)
-#include <winsock2.h>
-/*
- * MS likes to include mswsock.h here as well,
- * but that can cause undefined symbols if
- * winsock2.h is included before windows.h
- */
-#else
+
+/* __USE_W32_SOCKETS is a __CYGWIN__ guard */
+#if defined(__USE_W32_SOCKETS) || !(defined(__CYGWIN__) || defined(__MSYS__))
#include <winsock.h>
-#endif /* (_WIN32_WINNT >= 0x0400) */
#endif
+
#ifndef NOGDI
/* In older versions we disallowed COM declarations in __OBJC__
because of conflicts with @interface directive. Define _OBJC_NO_COM
#ifndef _WINDOWSX_H
#define _WINDOWSX_H
#pragma GCC system_header
+#include <_mingw.h>
#ifndef SNDMSG
#ifdef __cplusplus
#ifndef _WINERROR_H
#define _WINERROR_H
#pragma GCC system_header
+#include <_mingw.h>
#define _HRESULT_TYPEDEF_(_sc) ((HRESULT)_sc)
#define ERROR_VC_DISCONNECTED 240L
#define ERROR_INVALID_EA_NAME 254L
#define ERROR_EA_LIST_INCONSISTENT 255L
+
#ifndef WAIT_TIMEOUT /* also in winbase.h */
#define WAIT_TIMEOUT 258L
#endif
+
#define ERROR_NO_MORE_ITEMS 259L
#define ERROR_CANNOT_COPY 266L
#define ERROR_DIRECTORY 267L
#define _WINGDI_H
#define _WINGDI_
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#define EMR_PIXELFORMAT 104
#define ENHMETA_SIGNATURE 1179469088
#define EPS_SIGNATURE 0x46535045
-#if (_WIN32_WINNT >= 0x0500)
-#define FR_PRIVATE 0x10
-#define FR_NOT_ENUM 0x20
-#endif
+
#define META_SETBKCOLOR 0x201
#define META_SETBKMODE 0x102
#define META_SETMAPMODE 0x103
#define PROOF_QUALITY 2
#define NONANTIALIASED_QUALITY 3
#define ANTIALIASED_QUALITY 4
-#if _WIN32_WINNT >= 0x0500
-#define CLEARTYPE_QUALITY 5
-#endif
+
#define DEFAULT_PITCH 0
#define FIXED_PITCH 1
#define VARIABLE_PITCH 2
#define DC_DATATYPE_PRODUCED 21
#define DC_MANUFACTURER 23
#define DC_MODEL 24
-#if (WINVER >= 0x0500)
-#define DC_PERSONALITY 25
-#define DC_PRINTRATE 26
-#define DC_PRINTRATEUNIT 27
-#define DC_PRINTERMEM 28
-#define DC_MEDIAREADY 29
-#define DC_STAPLE 30
-#define DC_PRINTRATEPPM 31
-#define DC_COLORDEVICE 32
-#define DC_NUP 33
-#endif
-#if (WINVER >= 0x0501)
-#define DC_MEDIATYPENAMES 34
-#define DC_MEDIATYPES 35
-#endif
+
#define DCBA_FACEUPNONE 0
#define DCBA_FACEUPCENTER 1
#define DCBA_FACEUPLEFT 2
#define ETO_NUMERICSLATIN 0x0800
#define ETO_NUMERICSLOCAL 0x0400
#define ETO_RTLREADING 0x0080
-#if (_WIN32_WINNT >= 0x0400)
#define ETO_IGNORELANGUAGE 0x1000
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-#define ETO_PDY 0x2000
-#endif
+
#define GDICOMMENT_WINDOWS_METAFILE (-2147483647)
#define GDICOMMENT_BEGINGROUP 2
#define GDICOMMENT_ENDGROUP 3
#define DESKTOPHORZRES 118
#define DESKTOPVERTRES 117
#define BLTALIGNMENT 119
-#if(WINVER >= 0x0500)
-#define SHADEBLENDCAPS 120
-#define SB_NONE 0x00
-#define SB_CONST_ALPHA 0x01
-#define SB_PIXEL_ALPHA 0x02
-#define SB_PREMULT_ALPHA 0x04
-#define SB_GRAD_RECT 0x10
-#define SB_GRAD_TRI 0x20
-#define COLORMGMTCAPS 121
-#define CM_NONE 0x00
-#define CM_DEVICE_ICM 0x01
-#define CM_GAMMA_RAMP 0x02
-#define CM_CMYK_COLOR 0x04
-#endif
+
#define RASTERCAPS 38
#define RC_BANDING 2
#define RC_BITBLT 1
#define GGO_GRAY4_BITMAP 5
#define GGO_GRAY8_BITMAP 6
#define GGO_GLYPH_INDEX 128
-#if (WINVER >= 0x0500)
-#define GGO_UNHINTED 256
-#endif
+
#define GM_COMPATIBLE 1
#define GM_ADVANCED 2
#define MM_ANISOTROPIC 8
#define SYSTEM_FONT 13
#define SYSTEM_FIXED_FONT 16
#define DEFAULT_PALETTE 15
-#if (_WIN32_WINNT >= 0x0500)
-#define DC_BRUSH 18
-#define DC_PEN 19
-#endif
+
#define SYSPAL_ERROR 0
#define SYSPAL_STATIC 1
#define SYSPAL_NOSTATIC 2
#define DMPAPER_A2 66
#define DMPAPER_A3_TRANSVERSE 67
#define DMPAPER_A3_EXTRA_TRANSVERSE 68
-#if (WINVER >= 0x0500)
-#define DMPAPER_DBL_JAPANESE_POSTCARD 69
-#define DMPAPER_A6 70
-#define DMPAPER_JENV_KAKU2 71
-#define DMPAPER_JENV_KAKU3 72
-#define DMPAPER_JENV_CHOU3 73
-#define DMPAPER_JENV_CHOU4 74
-#define DMPAPER_LETTER_ROTATED 75
-#define DMPAPER_A3_ROTATED 76
-#define DMPAPER_A4_ROTATED 77
-#define DMPAPER_A5_ROTATED 78
-#define DMPAPER_B4_JIS_ROTATED 79
-#define DMPAPER_B5_JIS_ROTATED 80
-#define DMPAPER_JAPANESE_POSTCARD_ROTATED 81
-#define DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 82
-#define DMPAPER_A6_ROTATED 83
-#define DMPAPER_JENV_KAKU2_ROTATED 84
-#define DMPAPER_JENV_KAKU3_ROTATED 85
-#define DMPAPER_JENV_CHOU3_ROTATED 86
-#define DMPAPER_JENV_CHOU4_ROTATED 87
-#define DMPAPER_B6_JIS 88
-#define DMPAPER_B6_JIS_ROTATED 89
-#define DMPAPER_12X11 90
-#define DMPAPER_JENV_YOU4 91
-#define DMPAPER_JENV_YOU4_ROTATED 92
-#define DMPAPER_P16K 93
-#define DMPAPER_P32K 94
-#define DMPAPER_P32KBIG 95
-#define DMPAPER_PENV_1 96
-#define DMPAPER_PENV_2 97
-#define DMPAPER_PENV_3 98
-#define DMPAPER_PENV_4 99
-#define DMPAPER_PENV_5 100
-#define DMPAPER_PENV_6 101
-#define DMPAPER_PENV_7 102
-#define DMPAPER_PENV_8 103
-#define DMPAPER_PENV_9 104
-#define DMPAPER_PENV_10 105
-#define DMPAPER_P16K_ROTATED 106
-#define DMPAPER_P32K_ROTATED 107
-#define DMPAPER_P32KBIG_ROTATED 108
-#define DMPAPER_PENV_1_ROTATED 109
-#define DMPAPER_PENV_2_ROTATED 110
-#define DMPAPER_PENV_3_ROTATED 111
-#define DMPAPER_PENV_4_ROTATED 112
-#define DMPAPER_PENV_5_ROTATED 113
-#define DMPAPER_PENV_6_ROTATED 114
-#define DMPAPER_PENV_7_ROTATED 115
-#define DMPAPER_PENV_8_ROTATED 116
-#define DMPAPER_PENV_9_ROTATED 117
-#define DMPAPER_PENV_10_ROTATED 118
-#define DMPAPER_LAST 118
-#else
#define DMPAPER_LAST 68
-#endif
+
#define DMPAPER_USER 256
#define DMBIN_FIRST 1
#define DMBIN_UPPER 1
#define DM_ICMINTENT 0x01000000
#define DM_MEDIATYPE 0x02000000
#define DM_DITHERTYPE 0x04000000
-#if(WINVER >= 0x0500)
-#define DM_PANNINGWIDTH 0x08000000
-#define DM_PANNINGHEIGHT 0x10000000
-#endif
-#if(WINVER >= 0x0501)
-#define DM_DISPLAYFIXEDOUTPUT 0x20000000
-#define DM_DISPLAYORIENTATION 0x00000080
-#define DMDO_DEFAULT 0x00000000
-#define DMDO_90 0x00000001
-#define DMDO_180 0x00000002
-#define DMDO_270 0x00000003
-#define DMDFO_DEFAULT 0x00000000
-#define DMDFO_STRETCH 0x00000001
-#define DMDFO_CENTER 0x00000002
-#endif
+
#define DMICMMETHOD_NONE 1
#define DMICMMETHOD_SYSTEM 2
#define DMICMMETHOD_DRIVER 3
#define AC_DST_NO_ALPHA 0x20
#define LAYOUT_RTL 1
#define LAYOUT_BITMAPORIENTATIONPRESERVED 8
-#if (WINVER >= 0x0400)
#define CS_ENABLE 0x00000001
#define CS_DISABLE 0x00000002
#define CS_DELETE_TRANSFORM 0x00000003
-#endif
-#if (WINVER >= 0x0500)
-#define GRADIENT_FILL_RECT_H 0x00
-#define GRADIENT_FILL_RECT_V 0x01
-#define GRADIENT_FILL_TRIANGLE 0x02
-#define GRADIENT_FILL_OP_FLAG 0xff
-#define COLORMATCHTOTARGET_EMBEDED 0x00000001
-#define CREATECOLORSPACE_EMBEDED 0x00000001
-#define SETICMPROFILE_EMBEDED 0x00000001
-#endif
#define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP 0x00000001
#define DISPLAY_DEVICE_MULTI_DRIVER 0x00000002
#define DISPLAY_DEVICE_REMOVABLE 0x00000020
#define DISPLAY_DEVICE_MODESPRUNED 0x08000000
-#if (_WIN32_WINNT >= 0x0500)
-#define NTM_NONNEGATIVE_AC 0x00010000
-#define NTM_PS_OPENTYPE 0x00020000
-#define NTM_TT_OPENTYPE 0x00040000
-#define NTM_MULTIPLEMASTER 0x00080000
-#define NTM_TYPE1 0x00100000
-#define NTM_DSIG 0x00200000
-#endif
-
-#if (_WIN32_WINNT >= 0x0500)
-#define GGI_MARK_NONEXISTING_GLYPHS 1
-#endif
-
#ifndef RC_INVOKED
typedef struct _ABC {
int abcA;
DWORD dmNup;
} DUMMYUNIONNAME2;
DWORD dmDisplayFrequency;
-#if(WINVER >= 0x0400)
DWORD dmICMMethod;
DWORD dmICMIntent;
DWORD dmMediaType;
DWORD dmDitherType;
DWORD dmReserved1;
DWORD dmReserved2;
-#if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)
DWORD dmPanningWidth;
DWORD dmPanningHeight;
-#endif
-#endif /* WINVER >= 0x0400 */
} DEVMODEA,*LPDEVMODEA,*PDEVMODEA;
+
typedef struct _devicemodeW {
WCHAR dmDeviceName[CCHDEVICENAME];
WORD dmSpecVersion;
DWORD dmNup;
} DUMMYUNIONNAME2;
DWORD dmDisplayFrequency;
-#if(WINVER >= 0x0400)
DWORD dmICMMethod;
DWORD dmICMIntent;
DWORD dmMediaType;
DWORD dmDitherType;
DWORD dmReserved1;
DWORD dmReserved2;
-#if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)
DWORD dmPanningWidth;
DWORD dmPanningHeight;
-#endif
-#endif /* WINVER >= 0x0400 */
} DEVMODEW,*LPDEVMODEW,*PDEVMODEW;
+
typedef struct tagDIBSECTION {
BITMAP dsBm;
BITMAPINFOHEADER dsBmih;
DWORD nPalEntries;
SIZEL szlDevice;
SIZEL szlMillimeters;
-#if (WINVER >= 0x0400)
DWORD cbPixelFormat;
DWORD offPixelFormat;
DWORD bOpenGL;
-#endif
-#if (WINVER >= 0x0500)
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
SIZEL szlMicrometers;
#endif
+
} ENHMETAHEADER,*LPENHMETAHEADER;
+
typedef struct tagMETARECORD {
DWORD rdSize;
WORD rdFunction;
short gmCellIncX;
short gmCellIncY;
} GLYPHMETRICS,*LPGLYPHMETRICS;
-#if (_WIN32_WINNT >= 0x0500)
-typedef struct tagWCRANGE
-{
- WCHAR wcLow;
- USHORT cGlyphs;
-} WCRANGE, *PWCRANGE, *LPWCRANGE;
-typedef struct tagGLYPHSET
-{
- DWORD cbThis;
- DWORD flAccel;
- DWORD cGlyphsSupported;
- DWORD cRanges;
- WCRANGE ranges[1];
-} GLYPHSET, *PGLYPHSET, *LPGLYPHSET;
-#endif
+
typedef struct tagKERNINGPAIR {
WORD wFirst;
WORD wSecond;
DWORD dvNumAxes;
LONG dvValues[MM_MAX_NUMAXES];
} DESIGNVECTOR, *PDESIGNVECTOR, FAR *LPDESIGNVECTOR;
-#if _WIN32_WINNT >= 0x0500
-typedef struct tagENUMLOGFONTEXDVA
-{
- ENUMLOGFONTEXA elfEnumLogfontEx;
- DESIGNVECTOR elfDesignVector;
-} ENUMLOGFONTEXDVA, *PENUMLOGFONTEXDVA, *LPENUMLOGFONTEXDVA;
-typedef struct tagENUMLOGFONTEXDVW
-{
- ENUMLOGFONTEXW elfEnumLogfontEx;
- DESIGNVECTOR elfDesignVector;
-} ENUMLOGFONTEXDVW, *PENUMLOGFONTEXDVW, *LPENUMLOGFONTEXDVW;
-#endif /* _WIN32_WINNT >= 0x0500 */
+
typedef USHORT COLOR16;
typedef struct _TRIVERTEX {
LONG x;
WINGDIAPI BOOL WINAPI AbortPath(HDC);
WINGDIAPI int WINAPI AddFontResourceA(LPCSTR);
WINGDIAPI int WINAPI AddFontResourceW(LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINGDIAPI HANDLE WINAPI AddFontMemResourceEx(PVOID,DWORD,PVOID,DWORD *);
-WINGDIAPI int WINAPI AddFontResourceExA(LPCSTR,DWORD,PVOID);
-WINGDIAPI int WINAPI AddFontResourceExW(LPCWSTR,DWORD,PVOID);
-#endif
+
WINGDIAPI BOOL WINAPI AngleArc(HDC,int,int,DWORD,FLOAT,FLOAT);
WINGDIAPI BOOL WINAPI AnimatePalette(HPALETTE,UINT,UINT,const PALETTEENTRY*);
WINGDIAPI BOOL WINAPI Arc(HDC,int,int,int,int,int,int,int,int);
WINGDIAPI HENHMETAFILE WINAPI CloseEnhMetaFile(HDC);
WINGDIAPI BOOL WINAPI CloseFigure(HDC);
WINGDIAPI HMETAFILE WINAPI CloseMetaFile(HDC);
-#if (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500)
-WINGDIAPI BOOL WINAPI ColorCorrectPalette(HDC,HPALETTE,DWORD,DWORD);
-WINGDIAPI BOOL WINAPI ColorMatchToTarget(HDC,HDC,DWORD);
-#endif
+
WINGDIAPI int WINAPI CombineRgn(HRGN,HRGN,HRGN,int);
WINGDIAPI BOOL WINAPI CombineTransform(LPXFORM,const XFORM*,const XFORM*);
WINGDIAPI HENHMETAFILE WINAPI CopyEnhMetaFileA(HENHMETAFILE,LPCSTR);
WINGDIAPI HGDIOBJ WINAPI GetCurrentObject(HDC,UINT);
WINGDIAPI BOOL WINAPI GetCurrentPositionEx(HDC,LPPOINT);
WINGDIAPI HCURSOR WINAPI GetCursor(void);
-#if (WINVER >= 0x0500)
-WINGDIAPI COLORREF WINAPI GetDCBrushColor(HDC);
-WINGDIAPI COLORREF WINAPI GetDCPenColor(HDC);
-#endif
+
WINGDIAPI BOOL WINAPI GetDCOrgEx(HDC,LPPOINT);
WINGDIAPI int WINAPI GetDeviceCaps(HDC,int);
WINGDIAPI BOOL WINAPI GetDeviceGammaRamp(HDC,PVOID);
WINGDIAPI BOOL WINAPI GetTextExtentExPointW( HDC,LPCWSTR,int,int,LPINT,LPINT,LPSIZE );
WINGDIAPI BOOL WINAPI GetTextExtentPointA(HDC,LPCSTR,int,LPSIZE);
WINGDIAPI BOOL WINAPI GetTextExtentPointW(HDC,LPCWSTR,int,LPSIZE);
-#if (_WIN32_WINNT >= 0x0500)
-WINGDIAPI BOOL WINAPI GetTextExtentExPointI(HDC, LPWORD, int, int, LPINT, LPINT, LPSIZE);
-#endif
+
#ifdef _WIN32_WCE
extern BOOL GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE);
extern BOOL GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE);
WINGDIAPI BOOL WINAPI GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE);
WINGDIAPI BOOL WINAPI GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE);
#endif
+
WINGDIAPI int WINAPI GetTextFaceA(HDC,int,LPSTR);
WINGDIAPI int WINAPI GetTextFaceW(HDC,int,LPWSTR);
WINGDIAPI BOOL WINAPI GetTextMetricsA(HDC,LPTEXTMETRICA);
WINGDIAPI BOOL WINAPI RectVisible(HDC,LPCRECT);
WINGDIAPI BOOL WINAPI RemoveFontResourceA(LPCSTR);
WINGDIAPI BOOL WINAPI RemoveFontResourceW(LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500)
-WINGDIAPI BOOL WINAPI RemoveFontMemResourceEx(HANDLE);
-WINGDIAPI BOOL WINAPI RemoveFontResourceExA(LPCSTR,DWORD,PVOID);
-WINGDIAPI BOOL WINAPI RemoveFontResourceExW(LPCWSTR,DWORD,PVOID);
-#endif
+
WINGDIAPI HDC WINAPI ResetDCA(HDC,const DEVMODEA*);
WINGDIAPI HDC WINAPI ResetDCW(HDC,const DEVMODEW*);
WINGDIAPI BOOL WINAPI ResizePalette(HPALETTE,UINT);
WINGDIAPI BOOL WINAPI SetBrushOrgEx(HDC,int,int,LPPOINT);
WINGDIAPI BOOL WINAPI SetColorAdjustment(HDC,const COLORADJUSTMENT*);
WINGDIAPI BOOL WINAPI SetColorSpace(HDC,HCOLORSPACE);
-#if (_WIN32_WINNT >= 0x0500)
-WINGDIAPI COLORREF WINAPI SetDCBrushColor(HDC,COLORREF);
-WINGDIAPI COLORREF WINAPI SetDCPenColor(HDC,COLORREF);
-#endif
+
WINGDIAPI BOOL WINAPI SetDeviceGammaRamp(HDC,PVOID);
WINGDIAPI UINT WINAPI SetDIBColorTable(HDC,UINT,UINT,const RGBQUAD*);
WINGDIAPI int WINAPI SetDIBits(HDC,HBITMAP,UINT,UINT,PCVOID,const BITMAPINFO*,UINT);
WINGDIAPI BOOL WINAPI wglUseFontBitmapsW(HDC,DWORD,DWORD,DWORD);
WINGDIAPI BOOL WINAPI wglUseFontOutlinesA(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
WINGDIAPI BOOL WINAPI wglUseFontOutlinesW(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
-#if (WINVER >= 0x0410)
+
+/* Cannot use __AW(). */
+#ifdef UNICODE
+typedef WCHAR BCHAR;
+#else
+typedef BYTE BCHAR;
+#endif
+
+typedef __AW(DOCINFO) DOCINFO, *LPDOCINFO;
+typedef __AW(LOGFONT) LOGFONT,*PLOGFONT,*LPLOGFONT;
+typedef __AW(TEXTMETRIC) TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC;
+#define ICMENUMPROC __AW(ICMENUMPROC)
+#define FONTENUMPROC __AW(FONTENUMPROC)
+typedef __AW(DEVMODE) DEVMODE,*PDEVMODE,*LPDEVMODE;
+typedef __AW(EXTLOGFONT) EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT;
+typedef __AW(GCP_RESULTS) GCP_RESULTS,*LPGCP_RESULTS;
+typedef __AW(OUTLINETEXTMETRIC) OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC;
+typedef __AW(POLYTEXT) POLYTEXT,*PPOLYTEXT,*LPPOLYTEXT;
+typedef __AW(LOGCOLORSPACE) LOGCOLORSPACE,*LPLOGCOLORSPACE;
+typedef __AW(NEWTEXTMETRIC) NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC;
+typedef __AW(NEWTEXTMETRICEX) NEWTEXTMETRICEX;
+typedef __AW(ENUMLOGFONT) ENUMLOGFONT,*LPENUMLOGFONT;
+typedef __AW(ENUMLOGFONTEX) ENUMLOGFONTEX,*LPENUMLOGFONTEX;
+typedef __AW(DISPLAY_DEVICE) DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
+#define AddFontResource __AW(AddFontResource)
+
+#define CopyEnhMetaFile __AW(CopyEnhMetaFile)
+#define CopyMetaFile __AW(CopyMetaFile)
+#define CreateColorSpace __AW(CreateColorSpace)
+#define CreateDC __AW(CreateDC)
+#define CreateEnhMetaFile __AW(CreateEnhMetaFile)
+#define CreateFont __AW(CreateFont)
+#define CreateFontIndirect __AW(CreateFontIndirect)
+#define CreateIC __AW(CreateIC)
+#define CreateMetaFile __AW(CreateMetaFile)
+#define CreateScalableFontResource __AW(CreateScalableFontResource)
+#define DeviceCapabilities __AW(DeviceCapabilities)
+#define EnumFontFamilies __AW(EnumFontFamilies)
+#define EnumFontFamiliesEx __AW(EnumFontFamiliesEx)
+#define EnumFonts __AW(EnumFonts)
+#define EnumICMProfiles __AW(EnumICMProfiles)
+#define ExtTextOut __AW(ExtTextOut)
+#define GetCharABCWidthsFloat __AW(GetCharABCWidthsFloat)
+#define GetCharABCWidths __AW(GetCharABCWidths)
+#define GetCharacterPlacement __AW(GetCharacterPlacement)
+#define GetCharWidth32 __AW(GetCharWidth32)
+#define GetCharWidthFloat __AW(GetCharWidthFloat)
+#define GetCharWidth __AW(GetCharWidth)
+#define GetEnhMetaFile __AW(GetEnhMetaFile)
+#define GetEnhMetaFileDescription __AW(GetEnhMetaFileDescription)
+#define GetGlyphOutline __AW(GetGlyphOutline)
+#define GetICMProfile __AW(GetICMProfile)
+#define GetKerningPairs __AW(GetKerningPairs)
+#define GetLogColorSpace __AW(GetLogColorSpace)
+#define GetMetaFile __AW(GetMetaFile)
+#define GetObject __AW(GetObject)
+#define GetOutlineTextMetrics __AW(GetOutlineTextMetrics)
+#define GetTextExtentPoint __AW(GetTextExtentPoint)
+#define GetTextExtentExPoint __AW(GetTextExtentExPoint)
+#define GetTextExtentPoint32 __AW(GetTextExtentPoint32)
+#define GetTextFace __AW(GetTextFace)
+#define GetTextMetrics __AW(GetTextMetrics)
+#define PolyTextOut __AW(PolyTextOut)
+#define RemoveFontResource __AW(RemoveFontResource)
+
+#define ResetDC __AW(ResetDC)
+#define SetICMProfile __AW(SetICMProfile)
+#define StartDoc __AW(StartDoc)
+#define TextOut __AW(TextOut)
+#define UpdateICMRegKey __AW(UpdateICMRegKey)
+#define wglUseFontBitmaps __AW(wglUseFontBitmaps)
+#define wglUseFontOutlines __AW(wglUseFontOutlines)
+
+#endif /* RC_INVOKED */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN98)
+
+#ifndef RC_INVOKED
+WINGDIAPI BOOL WINAPI ColorCorrectPalette(HDC,HPALETTE,DWORD,DWORD);
+WINGDIAPI BOOL WINAPI ColorMatchToTarget(HDC,HDC,DWORD);
WINGDIAPI BOOL WINAPI AlphaBlend(HDC,int,int,int,int,HDC,int,int,int,int,BLENDFUNCTION);
WINGDIAPI BOOL WINAPI GradientFill(HDC,PTRIVERTEX,ULONG,PVOID,ULONG,ULONG);
WINGDIAPI BOOL WINAPI TransparentBlt(HDC,int,int,int,int,HDC,int,int,int,int,UINT);
-#endif
-#if (_WIN32_WINNT >= 0x0500)
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN98) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+#define FR_PRIVATE 0x10
+#define FR_NOT_ENUM 0x20
+#define CLEARTYPE_QUALITY 5
+#define DC_PERSONALITY 25
+#define DC_PRINTRATE 26
+#define DC_PRINTRATEUNIT 27
+#define DC_PRINTERMEM 28
+#define DC_MEDIAREADY 29
+#define DC_STAPLE 30
+#define DC_PRINTRATEPPM 31
+#define DC_COLORDEVICE 32
+#define DC_NUP 33
+#define ETO_PDY 0x2000
+#define SHADEBLENDCAPS 120
+#define SB_NONE 0x00
+#define SB_CONST_ALPHA 0x01
+#define SB_PIXEL_ALPHA 0x02
+#define SB_PREMULT_ALPHA 0x04
+#define SB_GRAD_RECT 0x10
+#define SB_GRAD_TRI 0x20
+#define COLORMGMTCAPS 121
+#define CM_NONE 0x00
+#define CM_DEVICE_ICM 0x01
+#define CM_GAMMA_RAMP 0x02
+#define CM_CMYK_COLOR 0x04
+#define GGO_UNHINTED 256
+#define DC_BRUSH 18
+#define DC_PEN 19
+#define DMPAPER_DBL_JAPANESE_POSTCARD 69
+#define DMPAPER_A6 70
+#define DMPAPER_JENV_KAKU2 71
+#define DMPAPER_JENV_KAKU3 72
+#define DMPAPER_JENV_CHOU3 73
+#define DMPAPER_JENV_CHOU4 74
+#define DMPAPER_LETTER_ROTATED 75
+#define DMPAPER_A3_ROTATED 76
+#define DMPAPER_A4_ROTATED 77
+#define DMPAPER_A5_ROTATED 78
+#define DMPAPER_B4_JIS_ROTATED 79
+#define DMPAPER_B5_JIS_ROTATED 80
+#define DMPAPER_JAPANESE_POSTCARD_ROTATED 81
+#define DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 82
+#define DMPAPER_A6_ROTATED 83
+#define DMPAPER_JENV_KAKU2_ROTATED 84
+#define DMPAPER_JENV_KAKU3_ROTATED 85
+#define DMPAPER_JENV_CHOU3_ROTATED 86
+#define DMPAPER_JENV_CHOU4_ROTATED 87
+#define DMPAPER_B6_JIS 88
+#define DMPAPER_B6_JIS_ROTATED 89
+#define DMPAPER_12X11 90
+#define DMPAPER_JENV_YOU4 91
+#define DMPAPER_JENV_YOU4_ROTATED 92
+#define DMPAPER_P16K 93
+#define DMPAPER_P32K 94
+#define DMPAPER_P32KBIG 95
+#define DMPAPER_PENV_1 96
+#define DMPAPER_PENV_2 97
+#define DMPAPER_PENV_3 98
+#define DMPAPER_PENV_4 99
+#define DMPAPER_PENV_5 100
+#define DMPAPER_PENV_6 101
+#define DMPAPER_PENV_7 102
+#define DMPAPER_PENV_8 103
+#define DMPAPER_PENV_9 104
+#define DMPAPER_PENV_10 105
+#define DMPAPER_P16K_ROTATED 106
+#define DMPAPER_P32K_ROTATED 107
+#define DMPAPER_P32KBIG_ROTATED 108
+#define DMPAPER_PENV_1_ROTATED 109
+#define DMPAPER_PENV_2_ROTATED 110
+#define DMPAPER_PENV_3_ROTATED 111
+#define DMPAPER_PENV_4_ROTATED 112
+#define DMPAPER_PENV_5_ROTATED 113
+#define DMPAPER_PENV_6_ROTATED 114
+#define DMPAPER_PENV_7_ROTATED 115
+#define DMPAPER_PENV_8_ROTATED 116
+#define DMPAPER_PENV_9_ROTATED 117
+#define DMPAPER_PENV_10_ROTATED 118
+#undef DMPAPER_LAST
+#define DMPAPER_LAST 118
+#define DM_PANNINGWIDTH 0x08000000
+#define DM_PANNINGHEIGHT 0x10000000
+#define GRADIENT_FILL_RECT_H 0x00
+#define GRADIENT_FILL_RECT_V 0x01
+#define GRADIENT_FILL_TRIANGLE 0x02
+#define GRADIENT_FILL_OP_FLAG 0xff
+#define COLORMATCHTOTARGET_EMBEDED 0x00000001
+#define CREATECOLORSPACE_EMBEDED 0x00000001
+#define SETICMPROFILE_EMBEDED 0x00000001
+#define NTM_NONNEGATIVE_AC 0x00010000
+#define NTM_PS_OPENTYPE 0x00020000
+#define NTM_TT_OPENTYPE 0x00040000
+#define NTM_MULTIPLEMASTER 0x00080000
+#define NTM_TYPE1 0x00100000
+#define NTM_DSIG 0x00200000
+#define GGI_MARK_NONEXISTING_GLYPHS 1
+
+#ifndef RC_INVOKED
+typedef struct tagWCRANGE
+{
+ WCHAR wcLow;
+ USHORT cGlyphs;
+} WCRANGE, *PWCRANGE, *LPWCRANGE;
+typedef struct tagGLYPHSET
+{
+ DWORD cbThis;
+ DWORD flAccel;
+ DWORD cGlyphsSupported;
+ DWORD cRanges;
+ WCRANGE ranges[1];
+} GLYPHSET, *PGLYPHSET, *LPGLYPHSET;
+typedef struct tagENUMLOGFONTEXDVA
+{
+ ENUMLOGFONTEXA elfEnumLogfontEx;
+ DESIGNVECTOR elfDesignVector;
+} ENUMLOGFONTEXDVA, *PENUMLOGFONTEXDVA, *LPENUMLOGFONTEXDVA;
+typedef struct tagENUMLOGFONTEXDVW
+{
+ ENUMLOGFONTEXW elfEnumLogfontEx;
+ DESIGNVECTOR elfDesignVector;
+} ENUMLOGFONTEXDVW, *PENUMLOGFONTEXDVW, *LPENUMLOGFONTEXDVW;
+WINGDIAPI HANDLE WINAPI AddFontMemResourceEx(PVOID,DWORD,PVOID,DWORD *);
+WINGDIAPI int WINAPI AddFontResourceExA(LPCSTR,DWORD,PVOID);
+WINGDIAPI int WINAPI AddFontResourceExW(LPCWSTR,DWORD,PVOID);
+WINGDIAPI COLORREF WINAPI GetDCBrushColor(HDC);
+WINGDIAPI COLORREF WINAPI GetDCPenColor(HDC);
+WINGDIAPI BOOL WINAPI GetTextExtentExPointI(HDC, LPWORD, int, int, LPINT, LPINT, LPSIZE);
+WINGDIAPI BOOL WINAPI RemoveFontMemResourceEx(HANDLE);
+WINGDIAPI BOOL WINAPI RemoveFontResourceExA(LPCSTR,DWORD,PVOID);
+WINGDIAPI BOOL WINAPI RemoveFontResourceExW(LPCWSTR,DWORD,PVOID);
+WINGDIAPI COLORREF WINAPI SetDCBrushColor(HDC,COLORREF);
+WINGDIAPI COLORREF WINAPI SetDCPenColor(HDC,COLORREF);
WINGDIAPI DWORD WINAPI GetFontUnicodeRanges(HDC,LPGLYPHSET);
WINGDIAPI DWORD WINAPI GetGlyphIndicesA(HDC,LPCSTR,int,LPWORD,DWORD);
WINGDIAPI DWORD WINAPI GetGlyphIndicesW(HDC,LPCWSTR,int,LPWORD,DWORD);
-#endif
-#if (WINVER >= 0x0500)
WINGDIAPI DWORD WINAPI GetLayout(HDC);
WINGDIAPI DWORD WINAPI SetLayout(HDC, DWORD);
-#endif
+typedef __AW(ENUMLOGFONTEXDV) ENUMLOGFONTEXDV;
+typedef __AW(PENUMLOGFONTEXDV) PENUMLOGFONTEXDV;
+typedef __AW(LPENUMLOGFONTEXDV) LPENUMLOGFONTEXDV;
+#define AddFontResourceEx __AW(AddFontResourceEx)
+#define RemoveFontResourceEx __AW(RemoveFontResourceEx)
+#define GetGlyphIndices __AW(GetGlyphIndices)
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+#define DC_MEDIATYPENAMES 34
+#define DC_MEDIATYPES 35
+#define DM_DISPLAYFIXEDOUTPUT 0x20000000
+#define DM_DISPLAYORIENTATION 0x00000080
+#define DMDO_DEFAULT 0x00000000
+#define DMDO_90 0x00000001
+#define DMDO_180 0x00000002
+#define DMDO_270 0x00000003
+#define DMDFO_DEFAULT 0x00000000
+#define DMDFO_STRETCH 0x00000001
+#define DMDFO_CENTER 0x00000002
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
-#ifdef UNICODE
-typedef WCHAR BCHAR;
-typedef DOCINFOW DOCINFO, *LPDOCINFO;
-typedef LOGFONTW LOGFONT,*PLOGFONT,*LPLOGFONT;
-typedef TEXTMETRICW TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC;
-#define ICMENUMPROC ICMENUMPROCW
-#define FONTENUMPROC FONTENUMPROCW
-typedef DEVMODEW DEVMODE,*PDEVMODE,*LPDEVMODE;
-#if _WIN32_WINNT >= 0x0500
-typedef ENUMLOGFONTEXDVW ENUMLOGFONTEXDV;
-typedef PENUMLOGFONTEXDVW PENUMLOGFONTEXDV;
-typedef LPENUMLOGFONTEXDVW LPENUMLOGFONTEXDV;
-#endif
-typedef EXTLOGFONTW EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT;
-typedef GCP_RESULTSW GCP_RESULTS,*LPGCP_RESULTS;
-typedef OUTLINETEXTMETRICW OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC;
-typedef POLYTEXTW POLYTEXT,*PPOLYTEXT,*LPPOLYTEXT;
-typedef LOGCOLORSPACEW LOGCOLORSPACE,*LPLOGCOLORSPACE;
-typedef NEWTEXTMETRICW NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC;
-typedef NEWTEXTMETRICEXW NEWTEXTMETRICEX;
-typedef ENUMLOGFONTW ENUMLOGFONT,*LPENUMLOGFONT;
-typedef ENUMLOGFONTEXW ENUMLOGFONTEX,*LPENUMLOGFONTEX;
-typedef DISPLAY_DEVICEW DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
-#define AddFontResource AddFontResourceW
-#if (_WIN32_WINNT >= 0x0500)
-#define AddFontResourceEx AddFontResourceExW
-#endif
-#define CopyEnhMetaFile CopyEnhMetaFileW
-#define CopyMetaFile CopyMetaFileW
-#define CreateColorSpace CreateColorSpaceW
-#define CreateDC CreateDCW
-#define CreateEnhMetaFile CreateEnhMetaFileW
-#define CreateFont CreateFontW
-#define CreateFontIndirect CreateFontIndirectW
-#define CreateIC CreateICW
-#define CreateMetaFile CreateMetaFileW
-#define CreateScalableFontResource CreateScalableFontResourceW
-#define DeviceCapabilities DeviceCapabilitiesW
-#define EnumFontFamilies EnumFontFamiliesW
-#define EnumFontFamiliesEx EnumFontFamiliesExW
-#define EnumFonts EnumFontsW
-#define EnumICMProfiles EnumICMProfilesW
-#define ExtTextOut ExtTextOutW
-#define GetCharABCWidthsFloat GetCharABCWidthsFloatW
-#define GetCharABCWidths GetCharABCWidthsW
-#define GetCharacterPlacement GetCharacterPlacementW
-#define GetCharWidth32 GetCharWidth32W
-#define GetCharWidthFloat GetCharWidthFloatW
-#define GetCharWidth GetCharWidthW
-#define GetEnhMetaFile GetEnhMetaFileW
-#define GetEnhMetaFileDescription GetEnhMetaFileDescriptionW
-#define GetGlyphOutline GetGlyphOutlineW
-#define GetICMProfile GetICMProfileW
-#define GetKerningPairs GetKerningPairsW
-#define GetLogColorSpace GetLogColorSpaceW
-#define GetMetaFile GetMetaFileW
-#define GetObject GetObjectW
-#define GetOutlineTextMetrics GetOutlineTextMetricsW
-#define GetTextExtentPoint GetTextExtentPointW
-#define GetTextExtentExPoint GetTextExtentExPointW
-#define GetTextExtentPoint32 GetTextExtentPoint32W
-#define GetTextFace GetTextFaceW
-#define GetTextMetrics GetTextMetricsW
-#define PolyTextOut PolyTextOutW
-#define RemoveFontResource RemoveFontResourceW
-#if (_WIN32_WINNT >= 0x0500)
-#define RemoveFontResourceEx RemoveFontResourceExW
-#endif
-#define ResetDC ResetDCW
-#define SetICMProfile SetICMProfileW
-#define StartDoc StartDocW
-#define TextOut TextOutW
-#define UpdateICMRegKey UpdateICMRegKeyW
-#define wglUseFontBitmaps wglUseFontBitmapsW
-#define wglUseFontOutlines wglUseFontOutlinesW
-#if (_WIN32_WINNT >= 0x0500)
-#define GetGlyphIndices GetGlyphIndicesW
-#endif
-#else /* UNICODE */
-typedef BYTE BCHAR;
-typedef DOCINFOA DOCINFO, *LPDOCINFO;
-typedef LOGFONTA LOGFONT,*PLOGFONT,*LPLOGFONT;
-typedef TEXTMETRICA TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC;
-#define ICMENUMPROC ICMENUMPROCA
-#define FONTENUMPROC FONTENUMPROCA
-typedef DEVMODEA DEVMODE,*PDEVMODE,*LPDEVMODE;
-#if _WIN32_WINNT >= 0x0500
-typedef ENUMLOGFONTEXDVA ENUMLOGFONTEXDV;
-typedef PENUMLOGFONTEXDVA PENUMLOGFONTEXDV;
-typedef LPENUMLOGFONTEXDVA LPENUMLOGFONTEXDV;
-#endif
-typedef EXTLOGFONTA EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT;
-typedef GCP_RESULTSA GCP_RESULTS,*LPGCP_RESULTS;
-typedef OUTLINETEXTMETRICA OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC;
-typedef POLYTEXTA POLYTEXT,*PPOLYTEXT,*LPPOLYTEXT;
-typedef LOGCOLORSPACEA LOGCOLORSPACE,*LPLOGCOLORSPACE;
-typedef NEWTEXTMETRICA NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC;
-typedef NEWTEXTMETRICEXA NEWTEXTMETRICEX;
-typedef ENUMLOGFONTA ENUMLOGFONT,*LPENUMLOGFONT;
-typedef ENUMLOGFONTEXA ENUMLOGFONTEX,*LPENUMLOGFONTEX;
-typedef DISPLAY_DEVICEA DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
-#define AddFontResource AddFontResourceA
-#if (_WIN32_WINNT >= 0x0500)
-#define AddFontResourceEx AddFontResourceExA
-#endif
-#define CopyEnhMetaFile CopyEnhMetaFileA
-#define CopyMetaFile CopyMetaFileA
-#define CreateColorSpace CreateColorSpaceA
-#define CreateDC CreateDCA
-#define CreateEnhMetaFile CreateEnhMetaFileA
-#define CreateFont CreateFontA
-#define CreateFontIndirect CreateFontIndirectA
-#define CreateIC CreateICA
-#define CreateMetaFile CreateMetaFileA
-#define CreateScalableFontResource CreateScalableFontResourceA
-#define DeviceCapabilities DeviceCapabilitiesA
-#define EnumFontFamilies EnumFontFamiliesA
-#define EnumFontFamiliesEx EnumFontFamiliesExA
-#define EnumFonts EnumFontsA
-#define EnumICMProfiles EnumICMProfilesA
-#define ExtTextOut ExtTextOutA
-#define GetCharWidthFloat GetCharWidthFloatA
-#define GetCharWidth GetCharWidthA
-#define GetCharacterPlacement GetCharacterPlacementA
-#define GetCharABCWidths GetCharABCWidthsA
-#define GetCharABCWidthsFloat GetCharABCWidthsFloatA
-#define GetCharWidth32 GetCharWidth32A
-#define GetEnhMetaFile GetEnhMetaFileA
-#define GetEnhMetaFileDescription GetEnhMetaFileDescriptionA
-#define GetGlyphOutline GetGlyphOutlineA
-#define GetICMProfile GetICMProfileA
-#define GetKerningPairs GetKerningPairsA
-#define GetLogColorSpace GetLogColorSpaceA
-#define GetMetaFile GetMetaFileA
-#define GetObject GetObjectA
-#define GetOutlineTextMetrics GetOutlineTextMetricsA
-#define GetTextExtentPoint GetTextExtentPointA
-#define GetTextExtentExPoint GetTextExtentExPointA
-#define GetTextExtentPoint32 GetTextExtentPoint32A
-#define GetTextFace GetTextFaceA
-#define GetTextMetrics GetTextMetricsA
-#define PolyTextOut PolyTextOutA
-#define RemoveFontResource RemoveFontResourceA
-#if (_WIN32_WINNT >= 0x0500)
-#define RemoveFontResourceEx RemoveFontResourceExA
-#endif
-#define ResetDC ResetDCA
-#define SetICMProfile SetICMProfileA
-#define StartDoc StartDocA
-#define TextOut TextOutA
-#define UpdateICMRegKey UpdateICMRegKeyA
-#define wglUseFontBitmaps wglUseFontBitmapsA
-#define wglUseFontOutlines wglUseFontOutlinesA
-#if (_WIN32_WINNT >= 0x0500)
-#define GetGlyphIndices GetGlyphIndicesA
-#endif
-#endif /* UNICODE */
-#endif /* RC_INVOKED */
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WININET_H
#define _WININET_H
#pragma GCC system_header
+#include <_mingw.h>
#include <windows.h>
+
#ifdef __cplusplus
extern "C" {
#endif
+
#define INTERNET_INVALID_PORT_NUMBER 0
#define INTERNET_DEFAULT_FTP_PORT 21
#define INTERNET_DEFAULT_GOPHER_PORT 70
DWORD dwFlags;
} INTERNET_CONNECTED_INFO, * LPINTERNET_CONNECTED_INFO;
-#ifdef UNICODE
-typedef URL_COMPONENTSW URL_COMPONENTS;
-typedef LPURL_COMPONENTSW LPURL_COMPONENTS;
-typedef GOPHER_FIND_DATAW GOPHER_FIND_DATA;
-typedef LPGOPHER_FIND_DATAW LPGOPHER_FIND_DATA;
-typedef INTERNET_CACHE_ENTRY_INFOW INTERNET_CACHE_ENTRY_INFO;
-typedef LPINTERNET_CACHE_ENTRY_INFOW LPINTERNET_CACHE_ENTRY_INFO;
-typedef INTERNET_BUFFERSW INTERNET_BUFFERS,*LPINTERNET_BUFFERS;
-typedef INTERNET_CACHE_GROUP_INFOW INTERNET_CACHE_GROUP_INFO;
-typedef LPINTERNET_CACHE_GROUP_INFOW LPINTERNET_CACHE_GROUP_INFO;
-#else
-typedef URL_COMPONENTSA URL_COMPONENTS;
-typedef LPURL_COMPONENTSA LPURL_COMPONENTS;
-typedef GOPHER_FIND_DATAA GOPHER_FIND_DATA;
-typedef LPGOPHER_FIND_DATAA LPGOPHER_FIND_DATA;
-typedef INTERNET_CACHE_ENTRY_INFOA INTERNET_CACHE_ENTRY_INFO;
-typedef LPINTERNET_CACHE_ENTRY_INFOA LPINTERNET_CACHE_ENTRY_INFO;
-typedef INTERNET_BUFFERSA INTERNET_BUFFERS,*LPINTERNET_BUFFERS;
-typedef INTERNET_CACHE_GROUP_INFOA INTERNET_CACHE_GROUP_INFO;
-typedef LPINTERNET_CACHE_GROUP_INFOA LPINTERNET_CACHE_GROUP_INFO;
-#endif
+typedef __AW(URL_COMPONENTS) URL_COMPONENTS;
+typedef __AW(LPURL_COMPONENTS) LPURL_COMPONENTS;
+typedef __AW(GOPHER_FIND_DATA) GOPHER_FIND_DATA;
+typedef __AW(LPGOPHER_FIND_DATA) LPGOPHER_FIND_DATA;
+typedef __AW(INTERNET_CACHE_ENTRY_INFO) INTERNET_CACHE_ENTRY_INFO;
+typedef __AW(LPINTERNET_CACHE_ENTRY_INFO) LPINTERNET_CACHE_ENTRY_INFO;
+typedef __AW(INTERNET_BUFFERS) INTERNET_BUFFERS,*LPINTERNET_BUFFERS;
+typedef __AW(INTERNET_CACHE_GROUP_INFO) INTERNET_CACHE_GROUP_INFO;
+typedef __AW(LPINTERNET_CACHE_GROUP_INFO) LPINTERNET_CACHE_GROUP_INFO;
BOOL WINAPI InternetTimeFromSystemTime(SYSTEMTIME*,DWORD,LPSTR,DWORD);
BOOL WINAPI InternetTimeToSystemTime(LPCSTR,SYSTEMTIME*,DWORD);
BOOL WINAPI InternetDebugGetLocalTime(SYSTEMTIME*,PDWORD);
BOOL WINAPI SetUrlCacheGroupAttributeA(GROUPID,DWORD,DWORD,LPINTERNET_CACHE_GROUP_INFOA,LPVOID);
BOOL WINAPI SetUrlCacheGroupAttributeW(GROUPID,DWORD,DWORD,LPINTERNET_CACHE_GROUP_INFOW,LPVOID);
-#ifdef UNICODE
-#define InternetCrackUrl InternetCrackUrlW
-#define InternetCreateUrl InternetCreateUrlW
-#define InternetCanonicalizeUrl InternetCanonicalizeUrlW
-#define InternetCheckConnection InternetCheckConnectionW
-#define InternetCombineUrl InternetCombineUrlW
-#define InternetOpen InternetOpenW
-#define InternetConnect InternetConnectW
-#define InternetOpenUrl InternetOpenUrlW
-#define InternetFindNextFile InternetFindNextFileW
-#define InternetQueryOption InternetQueryOptionW
-#define InternetSetOption InternetSetOptionW
-#define InternetSetOptionEx InternetSetOptionExW
-#define InternetGetLastResponseInfo InternetGetLastResponseInfoW
-#define InternetReadFileEx InternetReadFileExW
-#define FtpFindFirstFile FtpFindFirstFileW
-#define FtpGetFile FtpGetFileW
-#define FtpPutFile FtpPutFileW
-#define FtpDeleteFile FtpDeleteFileW
-#define FtpRenameFile FtpRenameFileW
-#define FtpOpenFile FtpOpenFileW
-#define FtpCreateDirectory FtpCreateDirectoryW
-#define FtpRemoveDirectory FtpRemoveDirectoryW
-#define FtpSetCurrentDirectory FtpSetCurrentDirectoryW
-#define FtpGetCurrentDirectory FtpGetCurrentDirectoryW
-#define FtpCommand FtpCommandW
-#define GopherGetLocatorType GopherGetLocatorTypeW
-#define GopherCreateLocator GopherCreateLocatorW
-#define GopherFindFirstFile GopherFindFirstFileW
-#define GopherOpenFile GopherOpenFileW
-#define GopherGetAttribute GopherGetAttributeW
-#define HttpSendRequest HttpSendRequestW
-#define HttpOpenRequest HttpOpenRequestW
-#define HttpAddRequestHeaders HttpAddRequestHeadersW
-#define HttpQueryInfo HttpQueryInfoW
-#define InternetSetCookie InternetSetCookieW
-#define InternetGetCookie InternetGetCookieW
-#define CreateUrlCacheEntry CreateUrlCacheEntryW
-#define RetrieveUrlCacheEntryStream RetrieveUrlCacheEntryStreamW
-#define FindNextUrlCacheEntry FindNextUrlCacheEntryW
-#define CommitUrlCacheEntry CommitUrlCacheEntryW
-#define GetUrlCacheEntryInfo GetUrlCacheEntryInfoW
-#define SetUrlCacheEntryInfo SetUrlCacheEntryInfoW
-#define FindFirstUrlCacheEntry FindFirstUrlCacheEntryW
-#define RetrieveUrlCacheEntryFile RetrieveUrlCacheEntryFileW
-#define HttpSendRequestEx HttpSendRequestExW
-#define HttpEndRequest HttpEndRequestW
-#define GetUrlCacheGroupAttribute GetUrlCacheGroupAttributeW
-#define SetUrlCacheGroupAttribute SetUrlCacheGroupAttributeW
-#define DeleteUrlCacheEntry DeleteUrlCacheEntryW
-
-#else
-#define GopherGetAttribute GopherGetAttributeA
-#define InternetCrackUrl InternetCrackUrlA
-#define InternetCreateUrl InternetCreateUrlA
-#define InternetCanonicalizeUrl InternetCanonicalizeUrlA
-#define InternetCheckConnection InternetCheckConnectionA
-#define InternetCombineUrl InternetCombineUrlA
-#define InternetOpen InternetOpenA
-#define InternetConnect InternetConnectA
-#define InternetOpenUrl InternetOpenUrlA
-#define InternetFindNextFile InternetFindNextFileA
-#define InternetQueryOption InternetQueryOptionA
-#define InternetSetOption InternetSetOptionA
-#define InternetSetOptionEx InternetSetOptionExA
-#define InternetGetLastResponseInfo InternetGetLastResponseInfoA
-#define InternetReadFileEx InternetReadFileExA
-#define FtpFindFirstFile FtpFindFirstFileA
-#define FtpGetFile FtpGetFileA
-#define FtpPutFile FtpPutFileA
-#define FtpDeleteFile FtpDeleteFileA
-#define FtpRenameFile FtpRenameFileA
-#define FtpOpenFile FtpOpenFileA
-#define FtpCreateDirectory FtpCreateDirectoryA
-#define FtpRemoveDirectory FtpRemoveDirectoryA
-#define FtpSetCurrentDirectory FtpSetCurrentDirectoryA
-#define FtpGetCurrentDirectory FtpGetCurrentDirectoryA
-#define FtpCommand FtpCommandA
-#define GopherGetLocatorType GopherGetLocatorTypeA
-#define GopherCreateLocator GopherCreateLocatorA
-#define GopherFindFirstFile GopherFindFirstFileA
-#define GopherOpenFile GopherOpenFileA
-#define HttpSendRequest HttpSendRequestA
-#define HttpOpenRequest HttpOpenRequestA
-#define HttpAddRequestHeaders HttpAddRequestHeadersA
-#define HttpQueryInfo HttpQueryInfoA
-#define InternetSetCookie InternetSetCookieA
-#define InternetGetCookie InternetGetCookieA
-#define CreateUrlCacheEntry CreateUrlCacheEntryA
-#define RetrieveUrlCacheEntryStream RetrieveUrlCacheEntryStreamA
-#define FindNextUrlCacheEntry FindNextUrlCacheEntryA
-#define CommitUrlCacheEntry CommitUrlCacheEntryA
-#define GetUrlCacheEntryInfo GetUrlCacheEntryInfoA
-#define SetUrlCacheEntryInfo SetUrlCacheEntryInfoA
-#define FindFirstUrlCacheEntry FindFirstUrlCacheEntryA
-#define RetrieveUrlCacheEntryFile RetrieveUrlCacheEntryFileA
-#define HttpSendRequestEx HttpSendRequestExA
-#define HttpEndRequest HttpEndRequestA
-#define GetUrlCacheGroupAttribute GetUrlCacheGroupAttributeA
-#define SetUrlCacheGroupAttribute SetUrlCacheGroupAttributeA
-#define DeleteUrlCacheEntry DeleteUrlCacheEntryA
-
-#endif /* UNICODE */
+#define InternetCrackUrl __AW(InternetCrackUrl)
+#define InternetCreateUrl __AW(InternetCreateUrl)
+#define InternetCanonicalizeUrl __AW(InternetCanonicalizeUrl)
+#define InternetCheckConnection __AW(InternetCheckConnection)
+#define InternetCombineUrl __AW(InternetCombineUrl)
+#define InternetOpen __AW(InternetOpen)
+#define InternetConnect __AW(InternetConnect)
+#define InternetOpenUrl __AW(InternetOpenUrl)
+#define InternetFindNextFile __AW(InternetFindNextFile)
+#define InternetQueryOption __AW(InternetQueryOption)
+#define InternetSetOption __AW(InternetSetOption)
+#define InternetSetOptionEx __AW(InternetSetOptionEx)
+#define InternetGetLastResponseInfo __AW(InternetGetLastResponseInfo)
+#define InternetReadFileEx __AW(InternetReadFileEx)
+#define FtpFindFirstFile __AW(FtpFindFirstFile)
+#define FtpGetFile __AW(FtpGetFile)
+#define FtpPutFile __AW(FtpPutFile)
+#define FtpDeleteFile __AW(FtpDeleteFile)
+#define FtpRenameFile __AW(FtpRenameFile)
+#define FtpOpenFile __AW(FtpOpenFile)
+#define FtpCreateDirectory __AW(FtpCreateDirectory)
+#define FtpRemoveDirectory __AW(FtpRemoveDirectory)
+#define FtpSetCurrentDirectory __AW(FtpSetCurrentDirectory)
+#define FtpGetCurrentDirectory __AW(FtpGetCurrentDirectory)
+#define FtpCommand __AW(FtpCommand)
+#define GopherGetLocatorType __AW(GopherGetLocatorType)
+#define GopherCreateLocator __AW(GopherCreateLocator)
+#define GopherFindFirstFile __AW(GopherFindFirstFile)
+#define GopherOpenFile __AW(GopherOpenFile)
+#define GopherGetAttribute __AW(GopherGetAttribute)
+#define HttpSendRequest __AW(HttpSendRequest)
+#define HttpOpenRequest __AW(HttpOpenRequest)
+#define HttpAddRequestHeaders __AW(HttpAddRequestHeaders)
+#define HttpQueryInfo __AW(HttpQueryInfo)
+#define InternetSetCookie __AW(InternetSetCookie)
+#define InternetGetCookie __AW(InternetGetCookie)
+#define CreateUrlCacheEntry __AW(CreateUrlCacheEntry)
+#define RetrieveUrlCacheEntryStream __AW(RetrieveUrlCacheEntryStream)
+#define FindNextUrlCacheEntry __AW(FindNextUrlCacheEntry)
+#define CommitUrlCacheEntry __AW(CommitUrlCacheEntry)
+#define GetUrlCacheEntryInfo __AW(GetUrlCacheEntryInfo)
+#define SetUrlCacheEntryInfo __AW(SetUrlCacheEntryInfo)
+#define FindFirstUrlCacheEntry __AW(FindFirstUrlCacheEntry)
+#define RetrieveUrlCacheEntryFile __AW(RetrieveUrlCacheEntryFile)
+#define HttpSendRequestEx __AW(HttpSendRequestEx)
+#define HttpEndRequest __AW(HttpEndRequest)
+#define GetUrlCacheGroupAttribute __AW(GetUrlCacheGroupAttribute)
+#define SetUrlCacheGroupAttribute __AW(SetUrlCacheGroupAttribute)
+#define DeleteUrlCacheEntry __AW(DeleteUrlCacheEntry)
#endif /* RC_INVOKED */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINIOCTL_H
#define _WINIOCTL_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define HIST_NO_OF_BUCKETS 24
#define HISTOGRAM_BUCKET_SIZE sizeof(HISTOGRAM_BUCKET)
#define DISK_HISTOGRAM_SIZE sizeof(DISK_HISTOGRAM)
LARGE_INTEGER UsableLength;
ULONG MaxPartitionCount;
} DRIVE_LAYOUT_INFORMATION_GPT,*PDRIVE_LAYOUT_INFORMATION_GPT;
+
#ifndef _DRIVE_LAYOUT_INFORMATION_MBR_DEFINED
#define _DRIVE_LAYOUT_INFORMATION_MBR_DEFINED
typedef struct _DRIVE_LAYOUT_INFORMATION_MBR {
ULONG Signature;
} DRIVE_LAYOUT_INFORMATION_MBR, *PDRIVE_LAYOUT_INFORMATION_MBR;
#endif
+
typedef struct _PARTITION_INFORMATION_MBR {
BYTE PartitionType;
BOOLEAN BootIndicator;
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINLDAP_H
#define _WINLDAP_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* LDAP API
WINLDAPAPI INT LdapUnicodeToUTF8(LPCWSTR,int,LPSTR,int);
WINLDAPAPI INT LdapUTF8ToUnicode(LPCSTR,int,LPWSTR,int);
-#ifdef UNICODE
-#define LDAPControl LDAPControlW
-#define PLDAPControl PLDAPControlW
-#define LDAPMod LDAPModW
-#define PLDAPMod LDAPModW
-#define LDAPSortKey LDAPSortKeyW
-#define PLDAPSortKey PLDAPSortKeyW
-#define LDAPAPIInfo LDAPAPIInfoW
-#define PLDAPAPIInfo PLDAPAPIInfoW
-#define LDAPAPIFeatureInfo LDAPAPIFeatureInfoW
-#define PLDAPAPIFeatureInfo PLDAPAPIFeatureInfoW
-#define cldap_open cldap_openW
-#define ldap_open ldap_openW
-#define ldap_bind ldap_bindW
-#define ldap_bind_s ldap_bind_sW
-#define ldap_simple_bind ldap_simple_bindW
-#define ldap_simple_bind_s ldap_simple_bind_sW
-#define ldap_sasl_bind ldap_sasl_bindW
-#define ldap_sasl_bind_s ldap_sasl_bind_sW
-#define ldap_init ldap_initW
-#define ldap_sslinit ldap_sslinitW
-#define ldap_get_option ldap_get_optionW
-#define ldap_set_option ldap_set_optionW
-#define ldap_start_tls_s ldap_start_tls_sW
-#define ldap_add ldap_addW
-#define ldap_add_ext ldap_add_extW
-#define ldap_add_s ldap_add_sW
-#define ldap_add_ext_s ldap_add_ext_sW
-#define ldap_compare ldap_compareW
-#define ldap_compare_ext ldap_compare_extW
-#define ldap_compare_s ldap_compare_sW
-#define ldap_compare_ext_s ldap_compare_ext_sW
-#define ldap_delete ldap_deleteW
-#define ldap_delete_ext ldap_delete_extW
-#define ldap_delete_s ldap_delete_sW
-#define ldap_delete_ext_s ldap_delete_ext_sW
-#define ldap_extended_operation_s ldap_extended_operation_sW
-#define ldap_extended_operation ldap_extended_operationW
-#define ldap_modify ldap_modifyW
-#define ldap_modify_ext ldap_modify_extW
-#define ldap_modify_s ldap_modify_sW
-#define ldap_modify_ext_s ldap_modify_ext_sW
-#define ldap_check_filter ldap_check_filterW
-#define ldap_count_values ldap_count_valuesW
-#define ldap_create_page_control ldap_create_page_controlW
-#define ldap_create_sort_control ldap_create_sort_controlW
-#define ldap_create_vlv_control ldap_create_vlv_controlW
-#define ldap_encode_sort_control ldap_encode_sort_controlW
-#define ldap_escape_filter_element ldap_escape_filter_elementW
-#define ldap_first_attribute ldap_first_attributeW
-#define ldap_next_attribute ldap_next_attributeW
-#define ldap_get_values ldap_get_valuesW
-#define ldap_get_values_len ldap_get_values_lenW
-#define ldap_parse_extended_result ldap_parse_extended_resultW
-#define ldap_parse_page_control ldap_parse_page_controlW
-#define ldap_parse_reference ldap_parse_referenceW
-#define ldap_parse_result ldap_parse_resultW
-#define ldap_parse_sort_control ldap_parse_sort_controlW
-#define ldap_parse_vlv_control ldap_parse_vlv_controlW
-#define ldap_search ldap_searchW
-#define ldap_search_s ldap_search_sW
-#define ldap_search_st ldap_search_stW
-#define ldap_search_ext ldap_search_extW
-#define ldap_search_ext_s ldap_search_ext_sW
-#define ldap_search_init_page ldap_search_init_pageW
-#define ldap_err2string ldap_err2stringW
-#define ldap_control_free ldap_control_freeW
-#define ldap_controls_free ldap_controls_freeW
-#define ldap_free_controls ldap_free_controlsW
-#define ldap_memfree ldap_memfreeW
-#define ldap_value_free ldap_value_freeW
-#define ldap_dn2ufn ldap_dn2ufnW
-#define ldap_ufn2dn ldap_ufn2dnW
-#define ldap_explode_dn ldap_explode_dnW
-#define ldap_get_dn ldap_get_dnW
-#define ldap_modrdn ldap_modrdnW
-#define ldap_modrdn_s ldap_modrdn_sW
-#define ldap_modrdn2 ldap_modrdn2W
-#define ldap_modrdn2_s ldap_modrdn2_sW
-#define ldap_rename ldap_rename_extW
-#define ldap_rename_s ldap_rename_ext_sW
-#define ldap_rename_ext ldap_rename_extW
-#define ldap_rename_ext_s ldap_rename_ext_sW
-#else
-#define LDAPControl LDAPControlA
-#define PLDAPControl PLDAPControlA
-#define LDAPMod LDAPModA
-#define PLDAPMod LDAPModA
-#define LDAPSortKey LDAPSortKeyA
-#define PLDAPSortKey PLDAPSortKeyA
-#define LDAPAPIInfo LDAPAPIInfoA
-#define PLDAPAPIInfo PLDAPAPIInfoA
-#define LDAPAPIFeatureInfo LDAPAPIFeatureInfoA
-#define PLDAPAPIFeatureInfo PLDAPAPIFeatureInfoA
-#define cldap_open cldap_openA
-#define ldap_open ldap_openA
-#define ldap_bind ldap_bindA
-#define ldap_bind_s ldap_bind_sA
-#define ldap_simple_bind ldap_simple_bindA
-#define ldap_simple_bind_s ldap_simple_bind_sA
-#define ldap_sasl_bind ldap_sasl_bindA
-#define ldap_sasl_bind_s ldap_sasl_bind_sA
-#define ldap_init ldap_initA
-#define ldap_sslinit ldap_sslinitA
-#define ldap_get_option ldap_get_optionA
-#define ldap_set_option ldap_set_optionA
-#define ldap_start_tls_s ldap_start_tls_sA
-#define ldap_add ldap_addA
-#define ldap_add_ext ldap_add_extA
-#define ldap_add_s ldap_add_sA
-#define ldap_add_ext_s ldap_add_ext_sA
-#define ldap_compare ldap_compareA
-#define ldap_compare_ext ldap_compare_extA
-#define ldap_compare_s ldap_compare_sA
-#define ldap_compare_ext_s ldap_compare_ext_sA
-#define ldap_delete ldap_deleteA
-#define ldap_delete_ext ldap_delete_extA
-#define ldap_delete_s ldap_delete_sA
-#define ldap_delete_ext_s ldap_delete_ext_sA
-#define ldap_extended_operation_s ldap_extended_operation_sA
-#define ldap_extended_operation ldap_extended_operationA
-#define ldap_modify ldap_modifyA
-#define ldap_modify_ext ldap_modify_extA
-#define ldap_modify_s ldap_modify_sA
-#define ldap_modify_ext_s ldap_modify_ext_sA
-#define ldap_check_filter ldap_check_filterA
-#define ldap_count_values ldap_count_valuesA
-#define ldap_create_page_control ldap_create_page_controlA
-#define ldap_create_sort_control ldap_create_sort_controlA
-#define ldap_create_vlv_control ldap_create_vlv_controlA
-#define ldap_encode_sort_control ldap_encode_sort_controlA
-#define ldap_escape_filter_element ldap_escape_filter_elementA
-#define ldap_first_attribute ldap_first_attributeA
-#define ldap_next_attribute ldap_next_attributeA
-#define ldap_get_values ldap_get_valuesA
-#define ldap_get_values_len ldap_get_values_lenA
-#define ldap_parse_extended_result ldap_parse_extended_resultA
-#define ldap_parse_page_control ldap_parse_page_controlA
-#define ldap_parse_reference ldap_parse_referenceA
-#define ldap_parse_result ldap_parse_resultA
-#define ldap_parse_sort_control ldap_parse_sort_controlA
-#define ldap_parse_vlv_control ldap_parse_vlv_controlA
-#define ldap_search ldap_searchA
-#define ldap_search_s ldap_search_sA
-#define ldap_search_st ldap_search_stA
-#define ldap_search_ext ldap_search_extA
-#define ldap_search_ext_s ldap_search_ext_sA
-#define ldap_search_init_page ldap_search_init_pageA
-#define ldap_err2string ldap_err2stringA
-#define ldap_control_free ldap_control_freeA
-#define ldap_controls_free ldap_controls_freeA
-#define ldap_free_controls ldap_free_controlsA
-#define ldap_memfree ldap_memfreeA
-#define ldap_value_free ldap_value_freeA
-#define ldap_dn2ufn ldap_dn2ufnA
-#define ldap_ufn2dn ldap_ufn2dnA
-#define ldap_explode_dn ldap_explode_dnA
-#define ldap_get_dn ldap_get_dnA
-#define ldap_modrdn ldap_modrdnA
-#define ldap_modrdn_s ldap_modrdn_sA
-#define ldap_modrdn2 ldap_modrdn2A
-#define ldap_modrdn2_s ldap_modrdn2_sA
-#define ldap_rename ldap_rename_extA
-#define ldap_rename_s ldap_rename_ext_sA
-#define ldap_rename_ext ldap_rename_extA
-#define ldap_rename_ext_s ldap_rename_ext_sA
-#endif
+#define LDAPControl __AW(LDAPControl)
+#define PLDAPControl __AW(PLDAPControl)
+#define LDAPMod __AW(LDAPMod)
+#define PLDAPMod __AW(LDAPMod)
+#define LDAPSortKey __AW(LDAPSortKey)
+#define PLDAPSortKey __AW(PLDAPSortKey)
+#define LDAPAPIInfo __AW(LDAPAPIInfo)
+#define PLDAPAPIInfo __AW(PLDAPAPIInfo)
+#define LDAPAPIFeatureInfo __AW(LDAPAPIFeatureInfo)
+#define PLDAPAPIFeatureInfo __AW(PLDAPAPIFeatureInfo)
+#define cldap_open __AW(cldap_open)
+#define ldap_open __AW(ldap_open)
+#define ldap_bind __AW(ldap_bind)
+#define ldap_bind_s __AW(ldap_bind_s)
+#define ldap_simple_bind __AW(ldap_simple_bind)
+#define ldap_simple_bind_s __AW(ldap_simple_bind_s)
+#define ldap_sasl_bind __AW(ldap_sasl_bind)
+#define ldap_sasl_bind_s __AW(ldap_sasl_bind_s)
+#define ldap_init __AW(ldap_init)
+#define ldap_sslinit __AW(ldap_sslinit)
+#define ldap_get_option __AW(ldap_get_option)
+#define ldap_set_option __AW(ldap_set_option)
+#define ldap_start_tls_s __AW(ldap_start_tls_s)
+#define ldap_add __AW(ldap_add)
+#define ldap_add_ext __AW(ldap_add_ext)
+#define ldap_add_s __AW(ldap_add_s)
+#define ldap_add_ext_s __AW(ldap_add_ext_s)
+#define ldap_compare __AW(ldap_compare)
+#define ldap_compare_ext __AW(ldap_compare_ext)
+#define ldap_compare_s __AW(ldap_compare_s)
+#define ldap_compare_ext_s __AW(ldap_compare_ext_s)
+#define ldap_delete __AW(ldap_delete)
+#define ldap_delete_ext __AW(ldap_delete_ext)
+#define ldap_delete_s __AW(ldap_delete_s)
+#define ldap_delete_ext_s __AW(ldap_delete_ext_s)
+#define ldap_extended_operation_s __AW(ldap_extended_operation_s)
+#define ldap_extended_operation __AW(ldap_extended_operation)
+#define ldap_modify __AW(ldap_modify)
+#define ldap_modify_ext __AW(ldap_modify_ext)
+#define ldap_modify_s __AW(ldap_modify_s)
+#define ldap_modify_ext_s __AW(ldap_modify_ext_s)
+#define ldap_check_filter __AW(ldap_check_filter)
+#define ldap_count_values __AW(ldap_count_values)
+#define ldap_create_page_control __AW(ldap_create_page_control)
+#define ldap_create_sort_control __AW(ldap_create_sort_control)
+#define ldap_create_vlv_control __AW(ldap_create_vlv_control)
+#define ldap_encode_sort_control __AW(ldap_encode_sort_control)
+#define ldap_escape_filter_element __AW(ldap_escape_filter_element)
+#define ldap_first_attribute __AW(ldap_first_attribute)
+#define ldap_next_attribute __AW(ldap_next_attribute)
+#define ldap_get_values __AW(ldap_get_values)
+#define ldap_get_values_len __AW(ldap_get_values_len)
+#define ldap_parse_extended_result __AW(ldap_parse_extended_result)
+#define ldap_parse_page_control __AW(ldap_parse_page_control)
+#define ldap_parse_reference __AW(ldap_parse_reference)
+#define ldap_parse_result __AW(ldap_parse_result)
+#define ldap_parse_sort_control __AW(ldap_parse_sort_control)
+#define ldap_parse_vlv_control __AW(ldap_parse_vlv_control)
+#define ldap_search __AW(ldap_search)
+#define ldap_search_s __AW(ldap_search_s)
+#define ldap_search_st __AW(ldap_search_st)
+#define ldap_search_ext __AW(ldap_search_ext)
+#define ldap_search_ext_s __AW(ldap_search_ext_s)
+#define ldap_search_init_page __AW(ldap_search_init_page)
+#define ldap_err2string __AW(ldap_err2string)
+#define ldap_control_free __AW(ldap_control_free)
+#define ldap_controls_free __AW(ldap_controls_free)
+#define ldap_free_controls __AW(ldap_free_controls)
+#define ldap_memfree __AW(ldap_memfree)
+#define ldap_value_free __AW(ldap_value_free)
+#define ldap_dn2ufn __AW(ldap_dn2ufn)
+#define ldap_ufn2dn __AW(ldap_ufn2dn)
+#define ldap_explode_dn __AW(ldap_explode_dn)
+#define ldap_get_dn __AW(ldap_get_dn)
+#define ldap_modrdn __AW(ldap_modrdn)
+#define ldap_modrdn_s __AW(ldap_modrdn_s)
+#define ldap_modrdn2 __AW(ldap_modrdn2)
+#define ldap_modrdn2_s __AW(ldap_modrdn2_s)
+#define ldap_rename __AW(ldap_rename_ext)
+#define ldap_rename_s __AW(ldap_rename_ext_s)
+#define ldap_rename_ext __AW(ldap_rename_ext)
+#define ldap_rename_ext_s __AW(ldap_rename_ext_s)
#ifdef __cplusplus
}
#ifndef _WINNETWK_H
#define _WINNETWK_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define WNNC_NET_MSNET 0x00010000
#define WNNC_NET_LANMAN 0x00020000
#define WNNC_NET_NETWARE 0x00030000
DWORD APIENTRY WNetGetLastErrorW(PDWORD,LPWSTR,DWORD,LPWSTR,DWORD);
DWORD APIENTRY MultinetGetConnectionPerformanceA(LPNETRESOURCEA,LPNETCONNECTINFOSTRUCT);
DWORD APIENTRY MultinetGetConnectionPerformanceW(LPNETRESOURCEW,LPNETCONNECTINFOSTRUCT);
-#ifdef UNICODE
-#define PFNPROCESSPOLICIES PFNPROCESSPOLICIESW
-#define PFNRECONCILEPROFILE PFNRECONCILEPROFILEW
-#define PFNGETPROFILEPATH PFNGETPROFILEPATHW
-typedef NETRESOURCEW NETRESOURCE,*LPNETRESOURCE;
-typedef CONNECTDLGSTRUCTW CONNECTDLGSTRUCT,*LPCONNECTDLGSTRUCT;
-typedef DISCDLGSTRUCTW DISCDLGSTRUCT,*LPDISCDLGSTRUCT;
-typedef REMOTE_NAME_INFOW REMOTE_NAME_INFO,*LPREMOTE_NAME_INFO;
-typedef UNIVERSAL_NAME_INFOW UNIVERSAL_NAME_INFO,*LPUNIVERSAL_NAME_INFO;
-#define WNetEnumResource WNetEnumResourceW
-#define WNetOpenEnum WNetOpenEnumW
-#define WNetGetResourceInformation WNetGetResourceInformationW
-#define WNetGetResourceParent WNetGetResourceParentW
-#define WNetGetUniversalName WNetGetUniversalNameW
-#define WNetSetConnection WNetSetConnectionW
-#define WNetUseConnection WNetUseConnectionW
-#define WNetGetConnection WNetGetConnectionW
-#define WNetCancelConnection2 WNetCancelConnection2W
-#define WNetCancelConnection WNetCancelConnectionW
-#define WNetAddConnection3 WNetAddConnection3W
-#define WNetAddConnection2 WNetAddConnection2W
-#define WNetAddConnection WNetAddConnectionW
-#define WNetConnectionDialog1 WNetConnectionDialog1W
-#define WNetDisconnectDialog1 WNetDisconnectDialog1W
-#define WNetGetNetworkInformation WNetGetNetworkInformationW
-#define WNetGetProviderName WNetGetProviderNameW
-#define WNetGetUser WNetGetUserW
-#define MultinetGetConnectionPerformance MultinetGetConnectionPerformanceW
-#define WNetGetLastError WNetGetLastErrorW
-#else
-#define PFNGETPROFILEPATH PFNGETPROFILEPATHA
-#define PFNRECONCILEPROFILE PFNRECONCILEPROFILEA
-#define PFNPROCESSPOLICIES PFNPROCESSPOLICIESA
-typedef NETRESOURCEA NETRESOURCE,*LPNETRESOURCE;
-typedef CONNECTDLGSTRUCTA CONNECTDLGSTRUCT,*LPCONNECTDLGSTRUCT;
-typedef DISCDLGSTRUCTA DISCDLGSTRUCT,*LPDISCDLGSTRUCT;
-typedef UNIVERSAL_NAME_INFOA UNIVERSAL_NAME_INFO,*LPUNIVERSAL_NAME_INFO;
-typedef REMOTE_NAME_INFOA REMOTE_NAME_INFO,*LPREMOTE_NAME_INFO;
-#define WNetOpenEnum WNetOpenEnumA
-#define WNetEnumResource WNetEnumResourceA
-#define WNetGetResourceInformation WNetGetResourceInformationA
-#define WNetGetResourceParent WNetGetResourceParentA
-#define WNetGetUniversalName WNetGetUniversalNameA
-#define WNetConnectionDialog1 WNetConnectionDialog1A
-#define WNetDisconnectDialog1 WNetDisconnectDialog1A
-#define WNetAddConnection2 WNetAddConnection2A
-#define WNetAddConnection3 WNetAddConnection3A
-#define WNetCancelConnection WNetCancelConnectionA
-#define WNetCancelConnection2 WNetCancelConnection2A
-#define WNetGetConnection WNetGetConnectionA
-#define WNetUseConnection WNetUseConnectionA
-#define WNetSetConnection WNetSetConnectionA
-#define WNetAddConnection WNetAddConnectionA
-#define WNetGetUser WNetGetUserA
-#define WNetGetProviderName WNetGetProviderNameA
-#define WNetGetNetworkInformation WNetGetNetworkInformationA
-#define WNetGetLastError WNetGetLastErrorA
-#define MultinetGetConnectionPerformance MultinetGetConnectionPerformanceA
-#endif
-#endif
+
+#define PFNPROCESSPOLICIES __AW(PFNPROCESSPOLICIES)
+#define PFNRECONCILEPROFILE __AW(PFNRECONCILEPROFILE)
+#define PFNGETPROFILEPATH __AW(PFNGETPROFILEPATH)
+typedef __AW(NETRESOURCE) NETRESOURCE,*LPNETRESOURCE;
+typedef __AW(CONNECTDLGSTRUCT) CONNECTDLGSTRUCT,*LPCONNECTDLGSTRUCT;
+typedef __AW(DISCDLGSTRUCT) DISCDLGSTRUCT,*LPDISCDLGSTRUCT;
+typedef __AW(REMOTE_NAME_INFO) REMOTE_NAME_INFO,*LPREMOTE_NAME_INFO;
+typedef __AW(UNIVERSAL_NAME_INFO) UNIVERSAL_NAME_INFO,*LPUNIVERSAL_NAME_INFO;
+#define WNetEnumResource __AW(WNetEnumResource)
+#define WNetOpenEnum __AW(WNetOpenEnum)
+#define WNetGetResourceInformation __AW(WNetGetResourceInformation)
+#define WNetGetResourceParent __AW(WNetGetResourceParent)
+#define WNetGetUniversalName __AW(WNetGetUniversalName)
+#define WNetSetConnection __AW(WNetSetConnection)
+#define WNetUseConnection __AW(WNetUseConnection)
+#define WNetGetConnection __AW(WNetGetConnection)
+#define WNetCancelConnection2 __AW(WNetCancelConnection2)
+#define WNetCancelConnection __AW(WNetCancelConnection)
+#define WNetAddConnection3 __AW(WNetAddConnection3)
+#define WNetAddConnection2 __AW(WNetAddConnection2)
+#define WNetAddConnection __AW(WNetAddConnection)
+#define WNetConnectionDialog1 __AW(WNetConnectionDialog1)
+#define WNetDisconnectDialog1 __AW(WNetDisconnectDialog1)
+#define WNetGetNetworkInformation __AW(WNetGetNetworkInformation)
+#define WNetGetProviderName __AW(WNetGetProviderName)
+#define WNetGetUser __AW(WNetGetUser)
+#define MultinetGetConnectionPerformance __AW(MultinetGetConnectionPerformance)
+#define WNetGetLastError __AW(WNetGetLastError)
+#endif /* ! RC_INVOKED */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINNLS_H
#define _WINNLS_H
#pragma GCC system_header
+#include <_mingw.h>
#ifndef WINBASEAPI
#ifdef __W32API_USE_DLLIMPORT__
#define MAX_DEFAULTCHAR 2
#define LOCALE_NOUSEROVERRIDE 0x80000000
#define LOCALE_USE_CP_ACP 0x40000000
-#if (WINVER >= 0x0400)
#define LOCALE_RETURN_NUMBER 0x20000000
-#endif
#define LOCALE_ILANGUAGE 1
#define LOCALE_SLANGUAGE 2
#define LOCALE_SENGLANGUAGE 0x1001
#define IS_HIGH_SURROGATE(c) (((c) & 0xFC00) == 0xD800)
#define IS_LOW_SURROGATE(c) (((c) & 0xFC00) == 0xDC00)
#define IS_SURROGATE_PAIR(hc,lc) (IS_HIGH_SURROGATE(hc) && IS_LOW_SURROGATE(lc))
-#if (WINVER >= 0x0410)
-#define CAL_SYEARMONTH 47
-#define CAL_ITWODIGITYEARMAX 48
-#define CAL_NOUSEROVERRIDE LOCALE_NOUSEROVERRIDE
-#define CAL_RETURN_NUMBER LOCALE_RETURN_NUMBER
-#define CAL_USE_CP_ACP LOCALE_USE_CP_ACP
-#define LOCALE_SYEARMONTH 0x1006
-#define LOCALE_SENGCURRNAME 0x1007
-#define LOCALE_SNATIVECURRNAME 0x1008
-#define LOCALE_SSORTNAME 0x1013
-#endif /* (WINVER >= 0x0410) */
-#if (WINVER >= 0x0500)
-#define LOCALE_IDEFAULTEBCDICCODEPAGE 0x1012
-#define LOCALE_IDIGITSUBSTITUTION 0x1014
-#define LOCALE_IPAPERSIZE 0x100A
-#define DATE_YEARMONTH 8
-#define DATE_LTRREADING 16
-#define DATE_RTLREADING 32
-#define MAP_EXPAND_LIGATURES 0x2000
-#define WC_NO_BEST_FIT_CHARS 1024
-#endif /* (WINVER >= 0x0500) */
-#if (WINVER >= 0x0600)
-/*#define CAL_SSHORTESTDAYNAME1 */
-/*#define CAL_SSHORTESTDAYNAME2 */
-/*#define CAL_SSHORTESTDAYNAME3 */
-/*#define CAL_SSHORTESTDAYNAME4 */
-/*#define CAL_SSHORTESTDAYNAME5 */
-/*#define CAL_SSHORTESTDAYNAME6 */
-/*#define CAL_SSHORTESTDAYNAME7 */
-#define CAL_UMALQURA 23
-/*#define LOCALE_SDURATION */
-/*#define LOCALE_SIETFLANGUAGE */
-/*#define LOCALE_SISO3166CTRYNAME2 */
-/*#define LOCALE_SISO639LANGNAME2 */
-/*#define LOCALE_SKEYBOARDSTOINSTALL */
-/*#define LOCALE_SNAME */
-/*#define LOCALE_SNAN */
-/*#define LOCALE_SNEGINFINITY */
-/*#define LOCALE_SPOSINFINITY */
-/*#define LOCALE_SSCRIPTS */
-#endif /* (WINVER >= 0x0600) */
+
#ifndef _BASETSD_H
typedef long LONG_PTR;
#endif
WINBASEAPI BOOL WINAPI SetThreadLocale(LCID);
WINBASEAPI BOOL WINAPI SetUserGeoID(GEOID);
WINBASEAPI int WINAPI WideCharToMultiByte(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL);
-#if (WINVER >= 0x0500)
+
+#define CALINFO_ENUMPROC __AW(CALINFO_ENUMPROC)
+#define CALINFO_ENUMPROCEX __AW(CALINFO_ENUMPROCEX)
+#define LOCALE_ENUMPROC __AW(LOCALE_ENUMPROC)
+#define CODEPAGE_ENUMPROC __AW(CODEPAGE_ENUMPROC)
+#define DATEFMT_ENUMPROC __AW(DATEFMT_ENUMPROC)
+#define DATEFMT_ENUMPROCEX __AW(DATEFMT_ENUMPROCEX)
+#define TIMEFMT_ENUMPROC __AW(TIMEFMT_ENUMPROC)
+#define LANGUAGEGROUP_ENUMPROC __AW(LANGUAGEGROUP_ENUMPROC)
+#define LANGGROUPLOCALE_ENUMPROC __AW(LANGGROUPLOCALE_ENUMPROC)
+#define UILANGUAGE_ENUMPROC __AW(UILANGUAGE_ENUMPROC)
+typedef __AW(CPINFOEX) CPINFOEX;
+typedef __AW(LPCPINFOEX) LPCPINFOEX;
+typedef __AW(CURRENCYFMT) CURRENCYFMT;
+typedef __AW(LPCURRENCYFMT) LPCURRENCYFMT;
+typedef __AW(NUMBERFMT) NUMBERFMT;
+typedef __AW(LPNUMBERFMT) LPNUMBERFMT;
+#define CompareString __AW(CompareString)
+#define EnumCalendarInfo __AW(EnumCalendarInfo)
+#define EnumSystemCodePages __AW(EnumSystemCodePages)
+#define EnumSystemLocales __AW(EnumSystemLocales)
+#define EnumTimeFormats __AW(EnumTimeFormats)
+#define FoldString __AW(FoldString)
+#define GetCalendarInfo __AW(GetCalendarInfo)
+#define GetCPInfoEx __AW(GetCPInfoEx)
+#define GetCurrencyFormat __AW(GetCurrencyFormat)
+#define GetDateFormat __AW(GetDateFormat)
+#define GetGeoInfo __AW(GetGeoInfo)
+#define GetLocaleInfo __AW(GetLocaleInfo)
+#define GetNumberFormat __AW(GetNumberFormat)
+#define GetStringTypeEx __AW(GetStringTypeEx)
+#define GetTimeFormat __AW(GetTimeFormat)
+#define LCMapString __AW(LCMapString)
+#define SetCalendarInfo __AW(SetCalendarInfo)
+#define SetLocaleInfo __AW(SetLocaleInfo)
+#endif /* RC_INVOKED */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN98)
+#define CAL_SYEARMONTH 47
+#define CAL_ITWODIGITYEARMAX 48
+#define CAL_NOUSEROVERRIDE LOCALE_NOUSEROVERRIDE
+#define CAL_RETURN_NUMBER LOCALE_RETURN_NUMBER
+#define CAL_USE_CP_ACP LOCALE_USE_CP_ACP
+#define LOCALE_SYEARMONTH 0x1006
+#define LOCALE_SENGCURRNAME 0x1007
+#define LOCALE_SNATIVECURRNAME 0x1008
+#define LOCALE_SSORTNAME 0x1013
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN98) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+#define LOCALE_IDEFAULTEBCDICCODEPAGE 0x1012
+#define LOCALE_IDIGITSUBSTITUTION 0x1014
+#define LOCALE_IPAPERSIZE 0x100A
+#define DATE_YEARMONTH 8
+#define DATE_LTRREADING 16
+#define DATE_RTLREADING 32
+#define MAP_EXPAND_LIGATURES 0x2000
+#define WC_NO_BEST_FIT_CHARS 1024
+#ifndef RC_INVOKED
WINBASEAPI BOOL WINAPI EnumCalendarInfoExA(CALINFO_ENUMPROCEXA,LCID,CALID,CALTYPE);
WINBASEAPI BOOL WINAPI EnumCalendarInfoExW(CALINFO_ENUMPROCEXW,LCID,CALID,CALTYPE);
WINBASEAPI BOOL WINAPI EnumDateFormatsExA(DATEFMT_ENUMPROCEXA,LCID,DWORD);
WINBASEAPI LANGID WINAPI GetSystemDefaultUILanguage(void);
WINBASEAPI LANGID WINAPI GetUserDefaultUILanguage(void);
WINBASEAPI BOOL WINAPI IsValidLanguageGroup(LGRPID,DWORD);
-#endif /* (WINVER >= 0x0500) */
+#define EnumCalendarInfoEx __AW(EnumCalendarInfoEx)
+#define EnumDateFormatsEx __AW(EnumDateFormatsEx)
+#define EnumSystemLanguageGroups __AW(EnumSystemLanguageGroups)
+#define EnumLanguageGroupLocales __AW(EnumLanguageGroupLocales)
+#define EnumUILanguages __AW(EnumUILanguages)
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
+/*#define CAL_SSHORTESTDAYNAME1 */
+/*#define CAL_SSHORTESTDAYNAME2 */
+/*#define CAL_SSHORTESTDAYNAME3 */
+/*#define CAL_SSHORTESTDAYNAME4 */
+/*#define CAL_SSHORTESTDAYNAME5 */
+/*#define CAL_SSHORTESTDAYNAME6 */
+/*#define CAL_SSHORTESTDAYNAME7 */
+#define CAL_UMALQURA 23
+/*#define LOCALE_SDURATION */
+/*#define LOCALE_SIETFLANGUAGE */
+/*#define LOCALE_SISO3166CTRYNAME2 */
+/*#define LOCALE_SISO639LANGNAME2 */
+/*#define LOCALE_SKEYBOARDSTOINSTALL */
+/*#define LOCALE_SNAME */
+/*#define LOCALE_SNAN */
+/*#define LOCALE_SNEGINFINITY */
+/*#define LOCALE_SPOSINFINITY */
+/*#define LOCALE_SSCRIPTS */
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_VISTA) */
-#ifdef UNICODE
-#define CALINFO_ENUMPROC CALINFO_ENUMPROCW
-#define CALINFO_ENUMPROCEX CALINFO_ENUMPROCEXW
-#define LOCALE_ENUMPROC LOCALE_ENUMPROCW
-#define CODEPAGE_ENUMPROC CODEPAGE_ENUMPROCW
-#define DATEFMT_ENUMPROC DATEFMT_ENUMPROCW
-#define DATEFMT_ENUMPROCEX DATEFMT_ENUMPROCEXW
-#define TIMEFMT_ENUMPROC TIMEFMT_ENUMPROCW
-#define LANGUAGEGROUP_ENUMPROC LANGUAGEGROUP_ENUMPROCW
-#define LANGGROUPLOCALE_ENUMPROC LANGGROUPLOCALE_ENUMPROCW
-#define UILANGUAGE_ENUMPROC UILANGUAGE_ENUMPROCW
-typedef CPINFOEXW CPINFOEX;
-typedef LPCPINFOEXW LPCPINFOEX;
-typedef CURRENCYFMTW CURRENCYFMT;
-typedef LPCURRENCYFMTW LPCURRENCYFMT;
-typedef NUMBERFMTW NUMBERFMT;
-typedef LPNUMBERFMTW LPNUMBERFMT;
-#define CompareString CompareStringW
-#define EnumCalendarInfo EnumCalendarInfoW
-#define EnumSystemCodePages EnumSystemCodePagesW
-#define EnumSystemLocales EnumSystemLocalesW
-#define EnumTimeFormats EnumTimeFormatsW
-#define FoldString FoldStringW
-#define GetCalendarInfo GetCalendarInfoW
-#define GetCPInfoEx GetCPInfoExW
-#define GetCurrencyFormat GetCurrencyFormatW
-#define GetDateFormat GetDateFormatW
-#define GetGeoInfo GetGeoInfoW
-#define GetLocaleInfo GetLocaleInfoW
-#define GetNumberFormat GetNumberFormatW
-#define GetStringTypeEx GetStringTypeExW
-#define GetTimeFormat GetTimeFormatW
-#define LCMapString LCMapStringW
-#define SetCalendarInfo SetCalendarInfoW
-#define SetLocaleInfo SetLocaleInfoW
-#if (WINVER >= 0x0500)
-#define EnumCalendarInfoEx EnumCalendarInfoExW
-#define EnumDateFormatsEx EnumDateFormatsExW
-#define EnumSystemLanguageGroups EnumSystemLanguageGroupsW
-#define EnumLanguageGroupLocales EnumLanguageGroupLocalesW
-#define EnumUILanguages EnumUILanguagesW
-#endif /* (WINVER >= 0x0500) */
-#else
-#define CALINFO_ENUMPROC CALINFO_ENUMPROCA
-#define CALINFO_ENUMPROCEX CALINFO_ENUMPROCEXA
-#define LOCALE_ENUMPROC LOCALE_ENUMPROCA
-#define CODEPAGE_ENUMPROC CODEPAGE_ENUMPROCA
-#define DATEFMT_ENUMPROC DATEFMT_ENUMPROCA
-#define DATEFMT_ENUMPROCEX DATEFMT_ENUMPROCEXA
-#define TIMEFMT_ENUMPROC TIMEFMT_ENUMPROCA
-#define LANGUAGEGROUP_ENUMPROC LANGUAGEGROUP_ENUMPROCA
-#define LANGGROUPLOCALE_ENUMPROC LANGGROUPLOCALE_ENUMPROCA
-#define UILANGUAGE_ENUMPROC UILANGUAGE_ENUMPROCA
-typedef CPINFOEXA CPINFOEX;
-typedef LPCPINFOEXA LPCPINFOEX;
-typedef CURRENCYFMTA CURRENCYFMT;
-typedef LPCURRENCYFMTA LPCURRENCYFMT;
-typedef NUMBERFMTA NUMBERFMT;
-typedef LPNUMBERFMTA LPNUMBERFMT;
-#define CompareString CompareStringA
-#define EnumCalendarInfo EnumCalendarInfoA
-#define EnumSystemCodePages EnumSystemCodePagesA
-#define EnumSystemLocales EnumSystemLocalesA
-#define EnumTimeFormats EnumTimeFormatsA
-#define FoldString FoldStringA
-#define GetCalendarInfo GetCalendarInfoA
-#define GetCPInfoEx GetCPInfoExA
-#define GetCurrencyFormat GetCurrencyFormatA
-#define GetDateFormat GetDateFormatA
-#define GetGeoInfo GetGeoInfoA
-#define GetLocaleInfo GetLocaleInfoA
-#define GetNumberFormat GetNumberFormatA
-#define GetStringTypeEx GetStringTypeExA
-#define GetTimeFormat GetTimeFormatA
-#define LCMapString LCMapStringA
-#define SetCalendarInfo SetCalendarInfoA
-#define SetLocaleInfo SetLocaleInfoA
-#if (WINVER >= 0x0500)
-#define EnumCalendarInfoEx EnumCalendarInfoExA
-#define EnumDateFormatsEx EnumDateFormatsExA
-#define EnumSystemLanguageGroups EnumSystemLanguageGroupsA
-#define EnumLanguageGroupLocales EnumLanguageGroupLocalesA
-#define EnumUILanguages EnumUILanguagesA
-#endif /* (WINVER >= 0x0500) */
-#endif /* UNICODE */
-#endif /* RC_INVOKED */
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINNT_H
#define _WINNT_H
#pragma GCC system_header
+#include <_mingw.h>
/* translate GCC target defines to MS equivalents. Keep this synchronized
with windows.h. */
#elif defined(__i386__) && !defined(_M_IX86)
#define _M_IX86 300
#endif
+
#if defined(_M_IX86) && !defined(_X86_)
#define _X86_
#elif defined(_M_ALPHA) && !defined(_ALPHA_)
#ifndef VOID
#define VOID void
#endif
+
typedef char CHAR;
typedef short SHORT;
typedef long LONG;
typedef CONST WCHAR *LPCWCH,*PCWCH,*LPCWSTR,*PCWSTR;
typedef CHAR *PCHAR,*LPCH,*PCH,*NPSTR,*LPSTR,*PSTR;
typedef CONST CHAR *LPCCH,*PCSTR,*LPCSTR;
+
#ifndef _TCHAR_DEFINED
#define _TCHAR_DEFINED
+
+/* Cannot use __AW(). */
#ifdef UNICODE
/*
* NOTE: This tests UNICODE, which is different from the _UNICODE define
*/
typedef WCHAR TCHAR;
typedef WCHAR _TCHAR;
-#else
-typedef CHAR TCHAR;
-typedef CHAR _TCHAR;
-#endif
-#endif
-typedef TCHAR TBYTE,*PTCH,*PTBYTE;
-typedef TCHAR *LPTCH,*PTSTR,*LPTSTR,*LP,*PTCHAR;
-typedef const TCHAR *LPCTSTR;
-#ifdef UNICODE
/*
* __TEXT is a private macro whose specific use is to force the expansion of a
* macro passed as an argument to the macro TEXT. DO NOT use this
*/
#define __TEXT(q) L##q
#else
+typedef CHAR TCHAR;
+typedef CHAR _TCHAR;
#define __TEXT(q) q
#endif
+
+#endif
+
+typedef TCHAR TBYTE,*PTCH,*PTBYTE;
+typedef TCHAR *LPTCH,*PTSTR,*LPTSTR,*LP,*PTCHAR;
+typedef const TCHAR *LPCTSTR;
+
/*
* UNICODE a constant string when UNICODE is defined, else returns the string
* unmodified.
#define TEXT(q) __TEXT(q)
typedef SHORT *PSHORT;
typedef LONG *PLONG;
+
#ifdef STRICT
typedef void *HANDLE;
#define DECLARE_HANDLE(n) typedef struct n##__{int i;}*n
#else
+
typedef PVOID HANDLE;
#define DECLARE_HANDLE(n) typedef HANDLE n
#endif
+
typedef HANDLE *PHANDLE,*LPHANDLE;
typedef DWORD LCID;
typedef PDWORD PLCID;
#define SECURITY_RESTRICTED_CODE_RID 0xC
#define SECURITY_NT_NON_UNIQUE_RID 0x15
#define SID_REVISION 1
-#if (_WIN32_WINNT >= 0x0600)
-#define SID_HASH_SIZE 32
-#endif
+
#define DOMAIN_USER_RID_ADMIN 0x1F4L
#define DOMAIN_USER_RID_GUEST 0x1F5L
#define DOMAIN_GROUP_RID_ADMINS 0x200L
#define SUBLANG_ENGLISH_AUS 0x03
#define SUBLANG_ENGLISH_CAN 0x04
#define SUBLANG_ENGLISH_NZ 0x05
-#if (WINVER >= 0x0600)
-#define SUBLANG_ENGLISH_IRELAND 0x06
-#endif
+
#define SUBLANG_ENGLISH_EIRE 0x06
#define SUBLANG_ENGLISH_SOUTH_AFRICA 0x07
#define SUBLANG_ENGLISH_JAMAICA 0x08
#define SUBLANG_LAO_LAO 0x01
#define SUBLANG_LAO_LAO_PDR SUBLANG_LAO_LAO /* SUBLANG_LAO_LAO is what MS defines */
#define SUBLANG_LATVIAN_LATVIA 0x01
-#if (WINVER >= 0x0600)
-#define SUBLANG_LITHUANIAN_LITHUANIA 0x01
-#endif
+
#define SUBLANG_LITHUANIAN 0x01
#define SUBLANG_LOWER_SORBIAN_GERMANY 0x02
#define SUBLANG_LUXEMBOURGISH_LUXEMBOURG 0x01
#define SUBLANG_PERSIAN_IRAN 0x01
#define SUBLANG_POLISH_POLAND 0x01
#define SUBLANG_PORTUGUESE_BRAZILIAN 0x01
-#if (WINVER >= 0x0600)
-#define SUBLANG_PORTUGUESE_PORTUGAL 0x02
-#endif
+
#define SUBLANG_PORTUGUESE 0x02
#define SUBLANG_PUNJABI_INDIA 0x01
/* ??? #define SUBLANG_PUNJABI_PAKISTAN 0x01 ??? */
#define SUBLANG_SPANISH_NICARAGUA 0x13
#define SUBLANG_SPANISH_PUERTO_RICO 0x14
#define SUBLANG_SPANISH_US 0x15
-#if (WINVER >= 0x0600)
-#define SUBLANG_SWEDISH_SWEDEN 0x01
-#endif
+
#define SUBLANG_SWEDISH 0x01
#define SUBLANG_SWEDISH_FINLAND 0x02
#define SUBLANG_SYRIAC 0x01
#define KEY_WRITE 0x20006
#define KEY_EXECUTE 0x20019
#define KEY_READ 0x20019
-#if (_WIN32_WINNT >= 0x0502)
-#define KEY_WOW64_64KEY 0x0100
-#define KEY_WOW64_32KEY 0x0200
-#endif
+
#define KEY_ALL_ACCESS 0xf003f
#define REG_WHOLE_HIVE_VOLATILE 1
#define REG_REFRESH_HIVE 2
#define RTL_RESOURCE_TYPE 1
/* Also in winddk.h */
#define FIELD_OFFSET(t,f) ((LONG)&(((t*)0)->f))
+
#ifndef CONTAINING_RECORD
#define CONTAINING_RECORD(address, type, field) \
((type*)((PCHAR)(address) - (PCHAR)(&((type *)0)->field)))
#endif
+
/* end winddk.h */
#define IMAGE_SIZEOF_FILE_HEADER 20
#define IMAGE_FILE_RELOCS_STRIPPED 1
#define IMAGE_NT_SIGNATURE 0x00004550
#define IMAGE_NT_OPTIONAL_HDR32_MAGIC 0x10b
#define IMAGE_NT_OPTIONAL_HDR64_MAGIC 0x20b
+
#ifdef _WIN64
#define IMAGE_NT_OPTIONAL_HDR_MAGIC IMAGE_NT_OPTIONAL_HDR64_MAGIC
#else
+
#define IMAGE_NT_OPTIONAL_HDR_MAGIC IMAGE_NT_OPTIONAL_HDR32_MAGIC
#endif
+
#define IMAGE_ROM_OPTIONAL_HDR_MAGIC 0x107
#define IMAGE_SEPARATE_DEBUG_SIGNATURE 0x4944
#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
#define IMAGE_ORDINAL_FLAG64 0x8000000000000000ULL
#define IMAGE_SNAP_BY_ORDINAL64(o) ((o&IMAGE_ORDINAL_FLAG64)!=0)
#define IMAGE_ORDINAL64(o) (o&0xffff)
+
#ifdef _WIN64
#define IMAGE_ORDINAL_FLAG IMAGE_ORDINAL_FLAG64
#define IMAGE_SNAP_BY_ORDINAL(o) IMAGE_SNAP_BY_ORDINAL64(o)
#define IMAGE_ORDINAL(o) IMAGE_ORDINAL64(o)
#else
+
#define IMAGE_ORDINAL_FLAG IMAGE_ORDINAL_FLAG32
#define IMAGE_SNAP_BY_ORDINAL(o) IMAGE_SNAP_BY_ORDINAL32(o)
#define IMAGE_ORDINAL(o) IMAGE_ORDINAL32(o)
#endif
+
#define IMAGE_RESOURCE_NAME_IS_STRING 0x80000000
#define IMAGE_RESOURCE_DATA_IS_DIRECTORY 0x80000000
#define IMAGE_DEBUG_TYPE_UNKNOWN 0
#define TOKEN_EXECUTE (STANDARD_RIGHTS_EXECUTE)
#define TOKEN_SOURCE_LENGTH 8
-#if (_WIN32_WINNT >= 0x0600)
-#define TOKEN_MANDATORY_POLICY_OFF 0
-#define TOKEN_MANDATORY_POLICY_NO_WRITE_UP 1
-#define TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN 2
-#define TOKEN_MANDATORY_POLICY_VALID_MASK 3
-#endif
+
/* end ddk/ntifs.h */
#define DLL_PROCESS_DETACH 0
#define DLL_PROCESS_ATTACH 1
#define TAPE_LOCK 3
#define TAPE_UNLOCK 4
#define TAPE_FORMAT 5
-#if (_WIN32_WINNT >= 0x0500)
-#define VER_MINORVERSION 0x0000001
-#define VER_MAJORVERSION 0x0000002
-#define VER_BUILDNUMBER 0x0000004
-#define VER_PLATFORMID 0x0000008
-#define VER_SERVICEPACKMINOR 0x0000010
-#define VER_SERVICEPACKMAJOR 0x0000020
-#define VER_SUITENAME 0x0000040
-#define VER_PRODUCT_TYPE 0x0000080
-#define VER_EQUAL 1
-#define VER_GREATER 2
-#define VER_GREATER_EQUAL 3
-#define VER_LESS 4
-#define VER_LESS_EQUAL 5
-#define VER_AND 6
-#define VER_OR 7
-#endif
+
#define VER_PLATFORM_WIN32s 0
#define VER_PLATFORM_WIN32_WINDOWS 1
#define VER_PLATFORM_WIN32_NT 2
#define WT_EXECUTEINTIMERTHREAD 0x00000020
#define WT_EXECUTEINPERSISTENTTHREAD 0x00000080
#define WT_TRANSFER_IMPERSONATION 0x00000100
-#if (_WIN32_WINNT >= 0x0501)
-#define ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION 1
-#define ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION 2
-#define ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION 3
-#define ACTIVATION_CONTEXT_SECTION_COM_SERVER_REDIRECTION 4
-#define ACTIVATION_CONTEXT_SECTION_COM_INTERFACE_REDIRECTION 5
-#define ACTIVATION_CONTEXT_SECTION_COM_TYPE_LIBRARY_REDIRECTION 6
-#define ACTIVATION_CONTEXT_SECTION_COM_PROGID_REDIRECTION 7
-#define ACTIVATION_CONTEXT_SECTION_CLR_SURROGATES 9
-#endif /* (_WIN32_WINNT >= 0x0501) */
+
#define BTYPE(x) ((x)&N_BTMASK)
#define ISPTR(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_POINTER<<N_BTSHFT))
#define ISFCN(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_FUNCTION<<N_BTSHFT))
#define IO_REPARSE_TAG_MOUNT_POINT 0xA0000003
#define IO_REPARSE_TAG_SYMLINK 0xA000000C
#define WT_SET_MAX_THREADPOOL_THREADS(Flags,Limit) ((Flags)|=(Limit)<<16)
+
#ifndef RC_INVOKED
typedef DWORD ACCESS_MASK, *PACCESS_MASK;
} GUID, *REFGUID, *LPGUID;
#define SYSTEM_LUID { 0x3e7, 0x0 }
#endif /* GUID_DEFINED */
+
typedef struct _GENERIC_MAPPING {
ACCESS_MASK GenericRead;
ACCESS_MASK GenericWrite;
DWORD Dr6;
DWORD Dr7;
} CONTEXT;
+
#elif defined(_ALPHA_)
+
#define CONTEXT_ALPHA 0x20000
#define CONTEXT_CONTROL (CONTEXT_ALPHA|1L)
#define CONTEXT_FLOATING_POINT (CONTEXT_ALPHA|2L)
DWORD ContextFlags;
DWORD Fill[4];
} CONTEXT;
+
#elif defined(SHx)
/* These are the debug or break registers on the SH3 */
#define CONTEXT_DEBUG_REGISTERS (CONTEXT_SH3 | 0x00000008L)
#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_DEBUG_REGISTERS)
#else /* SH4 */
+
#define CONTEXT_CONTROL (CONTEXT_SH4 | 0x00000001L)
#define CONTEXT_INTEGER (CONTEXT_SH4 | 0x00000002L)
#define CONTEXT_DEBUG_REGISTERS (CONTEXT_SH4 | 0x00000008L)
ULONG OldStuff[2];
DEBUG_REGISTERS DebugRegisters;
#else
+
ULONG Fpscr;
ULONG Fpul;
ULONG FRegs[16];
+
#if defined(SH4)
ULONG xFRegs[16];
#endif
+
#endif
} CONTEXT;
DWORD Fill[2];
} CONTEXT;
+
#elif defined(ARM)
/* The following flags control the contents of the CONTEXT structure. */
ULONG Pc;
ULONG Psr;
} CONTEXT;
-
#else
+
#error "undefined processor type"
#endif
+
typedef CONTEXT *PCONTEXT,*LPCONTEXT;
typedef struct _EXCEPTION_RECORD {
DWORD ExceptionCode;
DWORD LowPart;
LONG HighPart;
} u;
+
#if ! defined(NONAMELESSUNION) || defined(__cplusplus)
_ANONYMOUS_STRUCT struct {
DWORD LowPart;
LONG HighPart;
};
#endif /* NONAMELESSUNION */
+
LONGLONG QuadPart;
} LARGE_INTEGER, *PLARGE_INTEGER;
+
typedef union _ULARGE_INTEGER {
struct {
DWORD LowPart;
DWORD HighPart;
} u;
+
#if ! defined(NONAMELESSUNION) || defined(__cplusplus)
_ANONYMOUS_STRUCT struct {
DWORD LowPart;
DWORD HighPart;
};
#endif /* NONAMELESSUNION */
+
ULONGLONG QuadPart;
} ULARGE_INTEGER, *PULARGE_INTEGER;
+
typedef struct _LUID {
DWORD LowPart;
LONG HighPart;
} SID_AND_ATTRIBUTES, *PSID_AND_ATTRIBUTES;
typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY];
typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY;
-#if (_WIN32_WINNT >= 0x0600)
-typedef ULONG_PTR SID_HASH_ENTRY, *PSID_HASH_ENTRY;
-typedef struct _SID_AND_ATTRIBUTES_HASH {
- DWORD SidCount;
- PSID_AND_ATTRIBUTES SidAttr;
- SID_HASH_ENTRY Hash[SID_HASH_SIZE];
-} SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH;
-#endif
+
typedef struct _TOKEN_SOURCE {
CHAR SourceName[TOKEN_SOURCE_LENGTH];
LUID SourceIdentifier;
typedef struct _TOKEN_USER {
SID_AND_ATTRIBUTES User;
} TOKEN_USER, *PTOKEN_USER;
-#if (_WIN32_WINNT >= 0x0600)
-typedef struct _TOKEN_LINKED_TOKEN {
- HANDLE LinkedToken;
-} TOKEN_LINKED_TOKEN, *PTOKEN_LINKED_TOKEN;
-typedef struct _TOKEN_MANDATORY_LABEL {
- SID_AND_ATTRIBUTES Label;
-} TOKEN_MANDATORY_LABEL, *PTOKEN_MANDATORY_LABEL;
-typedef struct _TOKEN_MANDATORY_POLICY {
- DWORD Policy;
-} TOKEN_MANDATORY_POLICY, *PTOKEN_MANDATORY_POLICY;
-typedef struct _TOKEN_ELEVATION {
- DWORD TokenIsElevated;
-} TOKEN_ELEVATION, *PTOKEN_ELEVATION;
-typedef struct _TOKEN_ACCESS_INFORMATION {
- PSID_AND_ATTRIBUTES_HASH SidHash;
- PSID_AND_ATTRIBUTES_HASH RestrictedSidHash;
- PTOKEN_PRIVILEGES Privileges;
- LUID AuthenticationId;
- TOKEN_TYPE TokenType;
- SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
- TOKEN_MANDATORY_POLICY MandatoryPolicy;
- DWORD Flags;
-} TOKEN_ACCESS_INFORMATION, *PTOKEN_ACCESS_INFORMATION;
-#endif
+
typedef DWORD SECURITY_INFORMATION,*PSECURITY_INFORMATION;
typedef WORD SECURITY_DESCRIPTOR_CONTROL,*PSECURITY_DESCRIPTOR_CONTROL;
typedef struct _SECURITY_DESCRIPTOR {
TokenSandBoxInert,
TokenAuditPolicy,
TokenOrigin,
-#if (_WIN32_WINNT >= 0x0600)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
TokenElevationType,
TokenLinkedToken,
TokenElevation,
TokenMandatoryPolicy,
TokenLogonSid,
#endif
+
MaxTokenInfoClass
} TOKEN_INFORMATION_CLASS;
typedef enum _SID_NAME_USE {
DWORD NumberOfRvaAndSizes;
IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
} IMAGE_OPTIONAL_HEADER64,*PIMAGE_OPTIONAL_HEADER64;
+
#ifdef _WIN64
typedef IMAGE_OPTIONAL_HEADER64 IMAGE_OPTIONAL_HEADER;
typedef PIMAGE_OPTIONAL_HEADER64 PIMAGE_OPTIONAL_HEADER;
typedef IMAGE_OPTIONAL_HEADER32 IMAGE_OPTIONAL_HEADER;
typedef PIMAGE_OPTIONAL_HEADER32 PIMAGE_OPTIONAL_HEADER;
#endif
+
typedef struct _IMAGE_ROM_OPTIONAL_HEADER {
WORD Magic;
BYTE MajorLinkerVersion;
IMAGE_FILE_HEADER FileHeader;
IMAGE_OPTIONAL_HEADER64 OptionalHeader;
} IMAGE_NT_HEADERS64,*PIMAGE_NT_HEADERS64;
+
#ifdef _WIN64
typedef IMAGE_NT_HEADERS64 IMAGE_NT_HEADERS;
typedef PIMAGE_NT_HEADERS64 PIMAGE_NT_HEADERS;
typedef IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS;
typedef PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS;
#endif
+
typedef struct _IMAGE_ROM_HEADERS {
IMAGE_FILE_HEADER FileHeader;
IMAGE_ROM_OPTIONAL_HEADER OptionalHeader;
ULONGLONG AddressOfData;
} u1;
} IMAGE_THUNK_DATA64, *PIMAGE_THUNK_DATA64;
+
#ifdef __WIN64
typedef IMAGE_THUNK_DATA64 IMAGE_THUNK_DATA;
typedef PIMAGE_THUNK_DATA64 PIMAGE_THUNK_DATA;
typedef IMAGE_THUNK_DATA32 IMAGE_THUNK_DATA;
typedef PIMAGE_THUNK_DATA32 PIMAGE_THUNK_DATA;
#endif
+
typedef struct _IMAGE_IMPORT_DESCRIPTOR {
_ANONYMOUS_UNION union {
DWORD Characteristics;
DWORD SizeOfZeroFill;
DWORD Characteristics;
} IMAGE_TLS_DIRECTORY64, *PIMAGE_TLS_DIRECTORY64;
+
#ifdef __WIN64
typedef IMAGE_TLS_DIRECTORY64 IMAGE_TLS_DIRECTORY;
typedef PIMAGE_TLS_DIRECTORY64 PIMAGE_TLS_DIRECTORY;
typedef IMAGE_TLS_DIRECTORY32 IMAGE_TLS_DIRECTORY;
typedef PIMAGE_TLS_DIRECTORY32 PIMAGE_TLS_DIRECTORY;
#endif
+
typedef struct _IMAGE_RESOURCE_DIRECTORY {
DWORD Characteristics;
DWORD TimeDateStamp;
} JOBOBJECT_JOBSET_INFORMATION,*PJOBOBJECT_JOBSET_INFORMATION;
/* Fixme: Making these defines conditional on WINVER will break ddk includes */
-#if 1 /* (WINVER >= 0x0500) */
+#if 1 /* (WINVER >= _WIN32_WINNT_WIN2K) */
#include <pshpack4.h>
#define ES_SYSTEM_REQUIRED 0x00000001
PowerActionWarmEject
} POWER_ACTION, *PPOWER_ACTION;
-#if (_WIN32_WINNT >= 0x0600)
-typedef enum {
- PoAc = 0,
- PoDc = 1,
- PoHot = 2,
- PoConditionMaximum = 3
-} SYSTEM_POWER_CONDITION, *PSYSTEM_POWER_CONDITION;
-#endif
-
typedef enum _DEVICE_POWER_STATE {
PowerDeviceUnspecified,
PowerDeviceD0,
ProcessorPowerPolicyCurrent
} POWER_INFORMATION_LEVEL;
-#if (_WIN32_WINNT >= 0x0500)
-typedef LONG (WINAPI *PVECTORED_EXCEPTION_HANDLER)(PEXCEPTION_POINTERS);
-#endif
-#if (WIN32_WINNT >= _WIN32_WINNT_WINXP)
-typedef struct _SYSTEM_POWER_INFORMATION {
- ULONG MaxIdlenessAllowed;
- ULONG Idleness;
- ULONG TimeRemaining;
- UCHAR CoolingMode;
-} SYSTEM_POWER_INFORMATION,*PSYSTEM_POWER_INFORMATION;
-#endif
-
-#if (_WIN32_WINNT >= 0x0501)
-typedef enum _HEAP_INFORMATION_CLASS {
- HeapCompatibilityInformation
-} HEAP_INFORMATION_CLASS;
-typedef enum _ACTIVATION_CONTEXT_INFO_CLASS {
- ActivationContextBasicInformation = 1,
- ActivationContextDetailedInformation,
- AssemblyDetailedInformationInActivationContext,
- FileInformationInAssemblyOfAssemblyInActivationContext
-} ACTIVATION_CONTEXT_INFO_CLASS;
-typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
- DWORD ulFlags;
- DWORD ulEncodedAssemblyIdentityLength;
- DWORD ulManifestPathType;
- DWORD ulManifestPathLength;
- LARGE_INTEGER liManifestLastWriteTime;
- DWORD ulPolicyPathType;
- DWORD ulPolicyPathLength;
- LARGE_INTEGER liPolicyLastWriteTime;
- DWORD ulMetadataSatelliteRosterIndex;
- DWORD ulManifestVersionMajor;
- DWORD ulManifestVersionMinor;
- DWORD ulPolicyVersionMajor;
- DWORD ulPolicyVersionMinor;
- DWORD ulAssemblyDirectoryNameLength;
- PCWSTR lpAssemblyEncodedAssemblyIdentity;
- PCWSTR lpAssemblyManifestPath;
- PCWSTR lpAssemblyPolicyPath;
- PCWSTR lpAssemblyDirectoryName;
-} ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
-typedef const ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
-typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
- DWORD dwFlags;
- DWORD ulFormatVersion;
- DWORD ulAssemblyCount;
- DWORD ulRootManifestPathType;
- DWORD ulRootManifestPathChars;
- DWORD ulRootConfigurationPathType;
- DWORD ulRootConfigurationPathChars;
- DWORD ulAppDirPathType;
- DWORD ulAppDirPathChars;
- PCWSTR lpRootManifestPath;
- PCWSTR lpRootConfigurationPath;
- PCWSTR lpAppDirPath;
-} ACTIVATION_CONTEXT_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_DETAILED_INFORMATION;
-typedef const ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
-typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX {
- ULONG ulAssemblyIndex;
- ULONG ulFileIndexInAssembly;
-} ACTIVATION_CONTEXT_QUERY_INDEX,*PACTIVATION_CONTEXT_QUERY_INDEX;
-typedef const ACTIVATION_CONTEXT_QUERY_INDEX *PCACTIVATION_CONTEXT_QUERY_INDEX;
-typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
- DWORD ulFlags;
- DWORD ulFilenameLength;
- DWORD ulPathLength;
- PCWSTR lpFileName;
- PCWSTR lpFilePath;
-} ASSEMBLY_FILE_DETAILED_INFORMATION,*PASSEMBLY_FILE_DETAILED_INFORMATION;
-typedef const ASSEMBLY_FILE_DETAILED_INFORMATION *PCASSEMBLY_FILE_DETAILED_INFORMATION;
-#endif /* (WIN32_WINNT >= 0x0501) */
-
typedef struct _PROCESSOR_POWER_POLICY_INFO {
ULONG TimeCheck;
ULONG DemoteLimit;
ULONG MaxSpindownTimeout;
} ADMINISTRATOR_POWER_POLICY, *PADMINISTRATOR_POWER_POLICY;
#include <poppack.h>
-#endif /* WINVER >= 0x0500 */
-
-#if (_WIN32_WINNT >= 0x0500)
-typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID,BOOLEAN);
-#endif
-
-#ifdef UNICODE
-typedef OSVERSIONINFOW OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO;
-typedef OSVERSIONINFOEXW OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX;
-#else
-typedef OSVERSIONINFOA OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO;
-typedef OSVERSIONINFOEXA OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX;
-#endif
+#endif /* WINVER >= _WIN32_WINNT_WIN2K */
-#if (_WIN32_WINNT >= 0x0500)
-ULONGLONG WINAPI VerSetConditionMask(ULONGLONG,DWORD,BYTE);
-#define VER_SET_CONDITION(ConditionMask, TypeBitMask, ComparisonType) \
- ((ConditionMask) = VerSetConditionMask((ConditionMask), \
- (TypeBitMask), (ComparisonType)))
-#endif
+typedef __AW(OSVERSIONINFO) OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO;
+typedef __AW(OSVERSIONINFOEX) OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX;
#ifdef _X86_
/* Support -masm=intel. */
#if _WIN32_WINNT >= _WIN32_WINNT_VISTA
# if defined(_AMD64_) || defined(__X86_64)
# define MemoryBarrier __faststorefence
+
# elif defined(_IA64_)
+
# define MemoryBarrier __mf
# else
- void __mingworg_MemoryBarrier(void);
+
+ void __mingworg_MemoryBarrier(void);
# define MemoryBarrier __mingworg_MemoryBarrier
# endif
+
#else
+
# define MemoryBarrier
#endif
#endif /* RC_INVOKED */
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+#define KEY_WOW64_64KEY 0x0100
+#define KEY_WOW64_32KEY 0x0200
+#define VER_MINORVERSION 0x0000001
+#define VER_MAJORVERSION 0x0000002
+#define VER_BUILDNUMBER 0x0000004
+#define VER_PLATFORMID 0x0000008
+#define VER_SERVICEPACKMINOR 0x0000010
+#define VER_SERVICEPACKMAJOR 0x0000020
+#define VER_SUITENAME 0x0000040
+#define VER_PRODUCT_TYPE 0x0000080
+#define VER_EQUAL 1
+#define VER_GREATER 2
+#define VER_GREATER_EQUAL 3
+#define VER_LESS 4
+#define VER_LESS_EQUAL 5
+#define VER_AND 6
+#define VER_OR 7
+
+#ifndef RC_INVOKED
+typedef LONG (WINAPI *PVECTORED_EXCEPTION_HANDLER)(PEXCEPTION_POINTERS);
+typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID,BOOLEAN);
+ULONGLONG WINAPI VerSetConditionMask(ULONGLONG,DWORD,BYTE);
+#define VER_SET_CONDITION(ConditionMask, TypeBitMask, ComparisonType) \
+ ((ConditionMask) = VerSetConditionMask((ConditionMask), \
+ (TypeBitMask), (ComparisonType)))
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+#define ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION 1
+#define ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION 2
+#define ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION 3
+#define ACTIVATION_CONTEXT_SECTION_COM_SERVER_REDIRECTION 4
+#define ACTIVATION_CONTEXT_SECTION_COM_INTERFACE_REDIRECTION 5
+#define ACTIVATION_CONTEXT_SECTION_COM_TYPE_LIBRARY_REDIRECTION 6
+#define ACTIVATION_CONTEXT_SECTION_COM_PROGID_REDIRECTION 7
+#define ACTIVATION_CONTEXT_SECTION_CLR_SURROGATES 9
+
+#ifndef RC_INVOKED
+typedef struct _SYSTEM_POWER_INFORMATION {
+ ULONG MaxIdlenessAllowed;
+ ULONG Idleness;
+ ULONG TimeRemaining;
+ UCHAR CoolingMode;
+} SYSTEM_POWER_INFORMATION,*PSYSTEM_POWER_INFORMATION;
+typedef enum _HEAP_INFORMATION_CLASS {
+ HeapCompatibilityInformation
+} HEAP_INFORMATION_CLASS;
+typedef enum _ACTIVATION_CONTEXT_INFO_CLASS {
+ ActivationContextBasicInformation = 1,
+ ActivationContextDetailedInformation,
+ AssemblyDetailedInformationInActivationContext,
+ FileInformationInAssemblyOfAssemblyInActivationContext
+} ACTIVATION_CONTEXT_INFO_CLASS;
+typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
+ DWORD ulFlags;
+ DWORD ulEncodedAssemblyIdentityLength;
+ DWORD ulManifestPathType;
+ DWORD ulManifestPathLength;
+ LARGE_INTEGER liManifestLastWriteTime;
+ DWORD ulPolicyPathType;
+ DWORD ulPolicyPathLength;
+ LARGE_INTEGER liPolicyLastWriteTime;
+ DWORD ulMetadataSatelliteRosterIndex;
+ DWORD ulManifestVersionMajor;
+ DWORD ulManifestVersionMinor;
+ DWORD ulPolicyVersionMajor;
+ DWORD ulPolicyVersionMinor;
+ DWORD ulAssemblyDirectoryNameLength;
+ PCWSTR lpAssemblyEncodedAssemblyIdentity;
+ PCWSTR lpAssemblyManifestPath;
+ PCWSTR lpAssemblyPolicyPath;
+ PCWSTR lpAssemblyDirectoryName;
+} ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
+typedef const ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
+typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
+ DWORD dwFlags;
+ DWORD ulFormatVersion;
+ DWORD ulAssemblyCount;
+ DWORD ulRootManifestPathType;
+ DWORD ulRootManifestPathChars;
+ DWORD ulRootConfigurationPathType;
+ DWORD ulRootConfigurationPathChars;
+ DWORD ulAppDirPathType;
+ DWORD ulAppDirPathChars;
+ PCWSTR lpRootManifestPath;
+ PCWSTR lpRootConfigurationPath;
+ PCWSTR lpAppDirPath;
+} ACTIVATION_CONTEXT_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_DETAILED_INFORMATION;
+typedef const ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
+typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX {
+ ULONG ulAssemblyIndex;
+ ULONG ulFileIndexInAssembly;
+} ACTIVATION_CONTEXT_QUERY_INDEX,*PACTIVATION_CONTEXT_QUERY_INDEX;
+typedef const ACTIVATION_CONTEXT_QUERY_INDEX *PCACTIVATION_CONTEXT_QUERY_INDEX;
+typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
+ DWORD ulFlags;
+ DWORD ulFilenameLength;
+ DWORD ulPathLength;
+ PCWSTR lpFileName;
+ PCWSTR lpFilePath;
+} ASSEMBLY_FILE_DETAILED_INFORMATION,*PASSEMBLY_FILE_DETAILED_INFORMATION;
+typedef const ASSEMBLY_FILE_DETAILED_INFORMATION *PCASSEMBLY_FILE_DETAILED_INFORMATION;
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
+#define SID_HASH_SIZE 32
+#define SUBLANG_ENGLISH_IRELAND 0x06
+#define SUBLANG_LITHUANIAN_LITHUANIA 0x01
+#define SUBLANG_PORTUGUESE_PORTUGAL 0x02
+#define SUBLANG_SWEDISH_SWEDEN 0x01
+#define TOKEN_MANDATORY_POLICY_OFF 0
+#define TOKEN_MANDATORY_POLICY_NO_WRITE_UP 1
+#define TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN 2
+#define TOKEN_MANDATORY_POLICY_VALID_MASK 3
+
+#ifndef RC_INVOKED
+typedef ULONG_PTR SID_HASH_ENTRY, *PSID_HASH_ENTRY;
+typedef struct _SID_AND_ATTRIBUTES_HASH {
+ DWORD SidCount;
+ PSID_AND_ATTRIBUTES SidAttr;
+ SID_HASH_ENTRY Hash[SID_HASH_SIZE];
+} SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH;
+typedef struct _TOKEN_LINKED_TOKEN {
+ HANDLE LinkedToken;
+} TOKEN_LINKED_TOKEN, *PTOKEN_LINKED_TOKEN;
+typedef struct _TOKEN_MANDATORY_LABEL {
+ SID_AND_ATTRIBUTES Label;
+} TOKEN_MANDATORY_LABEL, *PTOKEN_MANDATORY_LABEL;
+typedef struct _TOKEN_MANDATORY_POLICY {
+ DWORD Policy;
+} TOKEN_MANDATORY_POLICY, *PTOKEN_MANDATORY_POLICY;
+typedef struct _TOKEN_ELEVATION {
+ DWORD TokenIsElevated;
+} TOKEN_ELEVATION, *PTOKEN_ELEVATION;
+typedef struct _TOKEN_ACCESS_INFORMATION {
+ PSID_AND_ATTRIBUTES_HASH SidHash;
+ PSID_AND_ATTRIBUTES_HASH RestrictedSidHash;
+ PTOKEN_PRIVILEGES Privileges;
+ LUID AuthenticationId;
+ TOKEN_TYPE TokenType;
+ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
+ TOKEN_MANDATORY_POLICY MandatoryPolicy;
+ DWORD Flags;
+} TOKEN_ACCESS_INFORMATION, *PTOKEN_ACCESS_INFORMATION;
+typedef enum {
+ PoAc = 0,
+ PoDc = 1,
+ PoHot = 2,
+ PoConditionMaximum = 3
+} SYSTEM_POWER_CONDITION, *PSYSTEM_POWER_CONDITION;
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_VISTA) */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINPERF_H
#define _WINPERF_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define PERF_DATA_VERSION 1
#define PERF_DATA_REVISION 1
#define PERF_NO_INSTANCES -1
typedef DWORD(CALLBACK PM_OPEN_PROC)(LPWSTR);
typedef DWORD(CALLBACK PM_COLLECT_PROC)(LPWSTR,PVOID*,PDWORD,PDWORD);
typedef DWORD(CALLBACK PM_CLOSE_PROC)(void);
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINREG_H
#define _WINREG_H
#pragma GCC system_header
+#include <_mingw.h>
#ifndef WINADVAPI
#define WINADVAPI
#ifdef __cplusplus
extern "C" {
#endif
+
#define HKEY_CLASSES_ROOT ((HKEY)0x80000000)
#define HKEY_CURRENT_USER ((HKEY)0x80000001)
#define HKEY_LOCAL_MACHINE ((HKEY)0x80000002)
WINADVAPI LONG WINAPI RegCreateKeyW(HKEY,LPCWSTR,PHKEY);
WINADVAPI LONG WINAPI RegDeleteKeyA(HKEY,LPCSTR);
WINADVAPI LONG WINAPI RegDeleteKeyW(HKEY,LPCWSTR);
-#if (WINVER >= 0x0502)
-WINADVAPI LONG WINAPI RegDeleteKeyExA(HKEY,LPCSTR,REGSAM,DWORD);
-WINADVAPI LONG WINAPI RegDeleteKeyExW(HKEY,LPCWSTR,REGSAM,DWORD);
-#endif
+
WINADVAPI LONG WINAPI RegDeleteValueA(HKEY,LPCSTR);
WINADVAPI LONG WINAPI RegDeleteValueW(HKEY,LPCWSTR);
WINADVAPI LONG WINAPI RegEnumKeyA(HKEY,DWORD,LPSTR,DWORD);
WINADVAPI LONG WINAPI RegUnLoadKeyA(HKEY,LPCSTR);
WINADVAPI LONG WINAPI RegUnLoadKeyW(HKEY,LPCWSTR);
-#ifdef UNICODE
-typedef VALENTW VALENT,*PVALENT;
-#define AbortSystemShutdown AbortSystemShutdownW
-#define InitiateSystemShutdown InitiateSystemShutdownW
-#define RegConnectRegistry RegConnectRegistryW
-#define RegCreateKey RegCreateKeyW
-#define RegCreateKeyEx RegCreateKeyExW
-#define RegDeleteKey RegDeleteKeyW
-#if (WINVER >= 0x0502)
-#define RegDeleteKeyEx RegDeleteKeyExW
-#endif
-#define RegDeleteValue RegDeleteValueW
-#define RegEnumKey RegEnumKeyW
-#define RegEnumKeyEx RegEnumKeyExW
-#define RegEnumValue RegEnumValueW
-#define RegLoadKey RegLoadKeyW
-#define RegOpenKey RegOpenKeyW
-#define RegOpenKeyEx RegOpenKeyExW
-#define RegQueryInfoKey RegQueryInfoKeyW
-#define RegQueryMultipleValues RegQueryMultipleValuesW
-#define RegQueryValue RegQueryValueW
-#define RegQueryValueEx RegQueryValueExW
-#define RegReplaceKey RegReplaceKeyW
-#define RegRestoreKey RegRestoreKeyW
-#define RegSaveKey RegSaveKeyW
-#define RegSetValue RegSetValueW
-#define RegSetValueEx RegSetValueExW
-#define RegUnLoadKey RegUnLoadKeyW
-#else
-typedef VALENTA VALENT,*PVALENT;
-#define AbortSystemShutdown AbortSystemShutdownA
-#define InitiateSystemShutdown InitiateSystemShutdownA
-#define RegConnectRegistry RegConnectRegistryA
-#define RegCreateKey RegCreateKeyA
-#define RegCreateKeyEx RegCreateKeyExA
-#define RegDeleteKey RegDeleteKeyA
-#if (WINVER >= 0x0502)
-#define RegDeleteKeyEx RegDeleteKeyExA
-#endif
-#define RegDeleteValue RegDeleteValueA
-#define RegEnumKey RegEnumKeyA
-#define RegEnumKeyEx RegEnumKeyExA
-#define RegEnumValue RegEnumValueA
-#define RegLoadKey RegLoadKeyA
-#define RegOpenKey RegOpenKeyA
-#define RegOpenKeyEx RegOpenKeyExA
-#define RegQueryInfoKey RegQueryInfoKeyA
-#define RegQueryMultipleValues RegQueryMultipleValuesA
-#define RegQueryValue RegQueryValueA
-#define RegQueryValueEx RegQueryValueExA
-#define RegReplaceKey RegReplaceKeyA
-#define RegRestoreKey RegRestoreKeyA
-#define RegSaveKey RegSaveKeyA
-#define RegSetValue RegSetValueA
-#define RegSetValueEx RegSetValueExA
-#define RegUnLoadKey RegUnLoadKeyA
-#endif
-#endif
+typedef __AW(VALENT) VALENT,*PVALENT;
+#define AbortSystemShutdown __AW(AbortSystemShutdown)
+#define InitiateSystemShutdown __AW(InitiateSystemShutdown)
+#define RegConnectRegistry __AW(RegConnectRegistry)
+#define RegCreateKey __AW(RegCreateKey)
+#define RegCreateKeyEx __AW(RegCreateKeyEx)
+#define RegDeleteKey __AW(RegDeleteKey)
+
+#define RegDeleteValue __AW(RegDeleteValue)
+#define RegEnumKey __AW(RegEnumKey)
+#define RegEnumKeyEx __AW(RegEnumKeyEx)
+#define RegEnumValue __AW(RegEnumValue)
+#define RegLoadKey __AW(RegLoadKey)
+#define RegOpenKey __AW(RegOpenKey)
+#define RegOpenKeyEx __AW(RegOpenKeyEx)
+#define RegQueryInfoKey __AW(RegQueryInfoKey)
+#define RegQueryMultipleValues __AW(RegQueryMultipleValues)
+#define RegQueryValue __AW(RegQueryValue)
+#define RegQueryValueEx __AW(RegQueryValueEx)
+#define RegReplaceKey __AW(RegReplaceKey)
+#define RegRestoreKey __AW(RegRestoreKey)
+#define RegSaveKey __AW(RegSaveKey)
+#define RegSetValue __AW(RegSetValue)
+#define RegSetValueEx __AW(RegSetValueEx)
+#define RegUnLoadKey __AW(RegUnLoadKey)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+WINADVAPI LONG WINAPI RegDeleteKeyExA(HKEY,LPCSTR,REGSAM,DWORD);
+WINADVAPI LONG WINAPI RegDeleteKeyExW(HKEY,LPCWSTR,REGSAM,DWORD);
+#define RegDeleteKeyEx __AW(RegDeleteKeyEx)
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#endif /* ! RC_INVOKED */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINRESRC_H
#define _WINRESRC_H
#pragma GCC system_header
+#include <_mingw.h>
#define WIN32_LEAN_AND_MEAN
#include <winuser.h>
#ifndef _WINSNMP_H
#define _WINSNMP_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* SNMP API
* http://msdn.microsoft.com/library/en-us/snmp/snmp/winsnmp_api_reference.asp
*/
-#ifndef _WINDOWS_H
#include <windows.h>
-#endif
#include <pshpack4.h>
#define MAXOBJIDSIZE 128
#define MAXOBJIDSTRSIZE 1408
#define MAXVENDORINFO 32
+
#ifndef _SNMP_ASN_DEFINED
#define _SNMP_ASN_DEFINED
#define ASN_UNIVERSAL 0x00
#define SNMP_PDU_TRAP (ASN_CONTEXT | ASN_CONSTRUCTOR | 7)
#define SNMP_PDU_REPORT (ASN_CONTEXT | ASN_CONSTRUCTOR | 8)
#endif /* _SNMP_ASN_DEFINED */
+
#define SNMP_SYNTAX_SEQUENCE (ASN_UNIVERSAL | ASN_CONSTRUCTOR | 0x10)
#define SNMP_SYNTAX_INT (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x02)
#define SNMP_SYNTAX_BITS (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x03)
#ifdef __cplusplus
}
#endif
+
#include <poppack.h>
+
#endif
#ifndef _WINSOCK_H
#define _WINSOCK_H
#pragma GCC system_header
+#include <_mingw.h>
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN95) {
+#warning WARNING Winsock.h is included instead of winsock2.h.
+#endif
/*
Definitions for winsock 1.1
typedef unsigned long u_long;
#define _BSDTYPES_DEFINED
#endif /* !defined _BSDTYPES_DEFINED */
+
typedef u_int SOCKET;
+
#ifndef FD_SETSIZE
#define FD_SETSIZE 64
#endif
/* fd_set may have be defined by the newlib <sys/types.h>
* if __USE_W32_SOCKETS not defined.
*/
+
#ifdef fd_set
#undef fd_set
#endif
+
typedef struct fd_set {
u_int fd_count;
SOCKET fd_array[FD_SETSIZE];
} fd_set;
int PASCAL __WSAFDIsSet(SOCKET,fd_set*);
+
#ifndef FD_CLR
#define FD_CLR(fd,set) do { u_int __i;\
for (__i = 0; __i < ((fd_set *)(set))->fd_count ; __i++) {\
}\
} while (0)
#endif
+
#ifndef FD_SET
#define FD_SET(fd, set) do { \
if (((fd_set *)(set))->fd_count < FD_SETSIZE) \
((fd_set *)(set))->fd_array[((fd_set *)(set))->fd_count++]=(fd);\
}while (0)
#endif
+
#ifndef FD_ZERO
#define FD_ZERO(set) (((fd_set *)(set))->fd_count=0)
#endif
+
#ifndef FD_ISSET
#define FD_ISSET(fd, set) __WSAFDIsSet((SOCKET)(fd), (fd_set *)(set))
#endif
+
#elif !defined(USE_SYS_TYPES_FD_SET)
#warning "fd_set and associated macros have been defined in sys/types. \
This can cause runtime problems with W32 sockets"
#endif /* ndef _SYS_TYPES_FD_SET */
#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
+
#ifndef _TIMEVAL_DEFINED /* also in sys/time.h */
#define _TIMEVAL_DEFINED
struct timeval {
u_short l_linger;
};
#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */
+
#define IOCPARM_MASK 0x7f
#define IOC_VOID 0x20000000
#define IOC_OUT 0x40000000
#define SO_ERROR 0x1007
#define SO_TYPE 0x1008
#endif /* !__INSIDE_MSYS__ */
+
/*
* Note that the next 5 IP defines are specific to WinSock 1.1 (wsock32.dll).
* They will cause errors or unexpected results if used with the
#define AF_BAN 21
#define AF_ATM 22
#define AF_INET6 23
+
#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
#define AF_MAX 24
struct sockaddr {
#define PF_MAX AF_MAX
#define SOL_SOCKET 0xffff
#define SOMAXCONN 5
+
#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
#define MSG_OOB 1
#define MSG_PEEK 2
#define MSG_DONTROUTE 4
#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */
+
#define MSG_MAXIOVLEN 16
#define MSG_PARTIAL 0x8000
#define MAXGETHOSTSTRUCT 1024
#define FD_ACCEPT 8
#define FD_CONNECT 16
#define FD_CLOSE 32
+
#ifndef WSABASEERR
#define WSABASEERR 10000
#define WSAEINTR (WSABASEERR+4)
#endif /* !WSABASEERR */
#define WSANO_ADDRESS WSANO_DATA
+
#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
#define h_errno WSAGetLastError()
#define HOST_NOT_FOUND WSAHOST_NOT_FOUND
#define NO_DATA WSANO_DATA
#define NO_ADDRESS WSANO_ADDRESS
#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */
+
SOCKET PASCAL accept(SOCKET,struct sockaddr*,int*);
int PASCAL bind(SOCKET,const struct sockaddr*,int);
int PASCAL closesocket(SOCKET);
HANDLE PASCAL WSAAsyncGetHostByAddr(HWND,u_int,const char*,int,int,char*,int);
int PASCAL WSACancelAsyncRequest(HANDLE);
int PASCAL WSAAsyncSelect(SOCKET,HWND,u_int,long);
+
#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
u_long PASCAL htonl(u_long);
u_long PASCAL ntohl(u_long);
#define _WINSOCK2_H
#define _WINSOCK_H /* to prevent later inclusion of winsock.h */
#pragma GCC system_header
+#include <_mingw.h>
/*
* Definitions for winsock 2
#ifdef __cplusplus
extern "C" {
#endif
+
/* Names common to Winsock1.1 and Winsock2 */
#if !defined ( _BSDTYPES_DEFINED )
/* also defined in gmon.h and in cygwin's sys/types */
typedef unsigned long u_long;
#define _BSDTYPES_DEFINED
#endif /* ! def _BSDTYPES_DEFINED */
+
typedef u_int SOCKET;
+
#ifndef FD_SETSIZE
#define FD_SETSIZE 64
#endif
/* fd_set may be defined by the newlib <sys/types.h>
* if __USE_W32_SOCKETS not defined.
*/
+
#ifdef fd_set
#undef fd_set
#endif
+
typedef struct fd_set {
u_int fd_count;
SOCKET fd_array[FD_SETSIZE];
} fd_set;
int PASCAL __WSAFDIsSet(SOCKET,fd_set*);
+
#ifndef FD_CLR
#define FD_CLR(fd,set) do { u_int __i;\
for (__i = 0; __i < ((fd_set *)(set))->fd_count ; __i++) {\
}\
} while (0)
#endif
+
#ifndef FD_SET
/* this differs from the define in winsock.h and in cygwin sys/types.h */
#define FD_SET(fd, set) do { u_int __i;\
}\
} while(0)
#endif
+
#ifndef FD_ZERO
#define FD_ZERO(set) (((fd_set *)(set))->fd_count=0)
#endif
+
#ifndef FD_ISSET
#define FD_ISSET(fd, set) __WSAFDIsSet((SOCKET)(fd), (fd_set *)(set))
#endif
+
#elif !defined (USE_SYS_TYPES_FD_SET)
+
#warning "fd_set and associated macros have been defined in sys/types. \
This may cause runtime problems with W32 sockets"
#endif /* ndef _SYS_TYPES_FD_SET */
+
#if !(defined (__INSIDE_CYGWIN__) || (__INSIDE_MSYS__))
+
#ifndef _TIMEVAL_DEFINED /* also in sys/time.h */
#define _TIMEVAL_DEFINED
struct timeval {
((tvp)->tv_usec cmp (uvp)->tv_usec))
#define timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0
#endif /* _TIMEVAL_DEFINED */
+
struct hostent {
char *h_name;
char **h_aliases;
u_short l_linger;
};
#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */
+
#define IOCPARM_MASK 0x7f
#define IOC_VOID 0x20000000
#define IOC_OUT 0x40000000
#define AF_12844 25
#define AF_IRDA 26
#define AF_NETDES 28
+
#ifndef __INSIDE_MSYS__
#define AF_MAX 29
struct sockaddr {
#define PF_INET6 AF_INET6
#define PF_MAX AF_MAX
#define SOL_SOCKET 0xffff
+
#if ! (defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
#define SOMAXCONN 0x7fffffff /* (5) in WinSock1.1 */
#define MSG_OOB 1
#define MSG_PEEK 2
#define MSG_DONTROUTE 4
#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */
+
#define MSG_MAXIOVLEN 16
#define MSG_PARTIAL 0x8000
#define MAXGETHOSTSTRUCT 1024
#endif /* !WSABASEERR */
#define WSANO_ADDRESS WSANO_DATA
+
#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
#define h_errno WSAGetLastError()
#define HOST_NOT_FOUND WSAHOST_NOT_FOUND
#define NO_DATA WSANO_DATA
#define NO_ADDRESS WSANO_ADDRESS
#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */
+
WINSOCK_API_LINKAGE SOCKET PASCAL accept(SOCKET,struct sockaddr*,int*);
WINSOCK_API_LINKAGE int PASCAL bind(SOCKET,const struct sockaddr*,int);
WINSOCK_API_LINKAGE int PASCAL closesocket(SOCKET);
typedef HANDLE(PASCAL * LPFN_WSAASYNCGETHOSTBYADDR)(HWND, u_int, const char*, int, int, char*, int);
typedef int(PASCAL * LPFN_WSACANCELASYNCREQUEST)(HANDLE);
typedef int(PASCAL * LPFN_WSAASYNCSELECT)(SOCKET, HWND, u_int, long);
+
#if ! (defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))
WINSOCK_API_LINKAGE u_long PASCAL htonl(u_long);
WINSOCK_API_LINKAGE u_long PASCAL ntohl(u_long);
#define SO_MAX_MSG_SIZE 0x2003
#define SO_PROTOCOL_INFOA 0x2004
#define SO_PROTOCOL_INFOW 0x2005
-#ifdef UNICODE
-#define SO_PROTOCOL_INFO SO_PROTOCOL_INFOW
-#else
-#define SO_PROTOCOL_INFO SO_PROTOCOL_INFOA
-#endif
+
+#define SO_PROTOCOL_INFO __AW(SO_PROTOCOL_INFO)
+
#define PVD_CONFIG 0x3001
#define MSG_INTERRUPT 0x10
LPBLOB lpBlob;
} WSAQUERYSETW, *PWSAQUERYSETW, *LPWSAQUERYSETW;
-#ifdef UNICODE
-typedef WSAQUERYSETW WSAQUERYSET;
-typedef PWSAQUERYSETW PWSAQUERYSET;
-typedef LPWSAQUERYSETW LPWSAQUERYSET;
-#else
-typedef WSAQUERYSETA WSAQUERYSET;
-typedef PWSAQUERYSETA PWSAQUERYSET;
-typedef LPWSAQUERYSETA LPWSAQUERYSET;
-#endif
+typedef __AW(WSAQUERYSET) WSAQUERYSET;
+typedef __AW(PWSAQUERYSET) PWSAQUERYSET;
+typedef __AW(LPWSAQUERYSET) LPWSAQUERYSET;
#define LUP_DEEP 0x0001
#define LUP_CONTAINERS 0x0002
LPVOID lpValue;
} WSANSCLASSINFOW, *PWSANSCLASSINFOW, *LPWSANSCLASSINFOW;
-#ifdef UNICODE
-typedef WSANSCLASSINFOW WSANSCLASSINFO;
-typedef PWSANSCLASSINFOW PWSANSCLASSINFO;
-typedef LPWSANSCLASSINFOW LPWSANSCLASSINFO;
-#else
-typedef WSANSCLASSINFOA WSANSCLASSINFO;
-typedef PWSANSCLASSINFOA PWSANSCLASSINFO;
-typedef LPWSANSCLASSINFOA LPWSANSCLASSINFO;
-#endif
+typedef __AW(WSANSCLASSINFO) WSANSCLASSINFO;
+typedef __AW(PWSANSCLASSINFO) PWSANSCLASSINFO;
+typedef __AW(LPWSANSCLASSINFO) LPWSANSCLASSINFO;
typedef struct _WSAServiceClassInfoA
{
LPWSANSCLASSINFOW lpClassInfos;
} WSASERVICECLASSINFOW, *PWSASERVICECLASSINFOW, *LPWSASERVICECLASSINFOW;
-#ifdef UNICODE
-typedef WSASERVICECLASSINFOW WSASERVICECLASSINFO;
-typedef PWSASERVICECLASSINFOW PWSASERVICECLASSINFO;
-typedef LPWSASERVICECLASSINFOW LPWSASERVICECLASSINFO;
-#else
-typedef WSASERVICECLASSINFOA WSASERVICECLASSINFO;
-typedef PWSASERVICECLASSINFOA PWSASERVICECLASSINFO;
-typedef LPWSASERVICECLASSINFOA LPWSASERVICECLASSINFO;
-#endif
+typedef __AW(WSASERVICECLASSINFO) WSASERVICECLASSINFO;
+typedef __AW(PWSASERVICECLASSINFO) PWSASERVICECLASSINFO;
+typedef __AW(LPWSASERVICECLASSINFO) LPWSASERVICECLASSINFO;
typedef struct _WSANAMESPACE_INFOA {
GUID NSProviderId;
LPWSTR lpszIdentifier;
} WSANAMESPACE_INFOW, *PWSANAMESPACE_INFOW, *LPWSANAMESPACE_INFOW;
-#ifdef UNICODE
-typedef WSANAMESPACE_INFOW WSANAMESPACE_INFO;
-typedef PWSANAMESPACE_INFOW PWSANAMESPACE_INFO;
-typedef LPWSANAMESPACE_INFOW LPWSANAMESPACE_INFO;
-#else
-typedef WSANAMESPACE_INFOA WSANAMESPACE_INFO;
-typedef PWSANAMESPACE_INFOA PWSANAMESPACE_INFO;
-typedef LPWSANAMESPACE_INFOA LPWSANAMESPACE_INFO;
-#endif
+typedef __AW(WSANAMESPACE_INFO) WSANAMESPACE_INFO;
+typedef __AW(PWSANAMESPACE_INFO) PWSANAMESPACE_INFO;
+typedef __AW(LPWSANAMESPACE_INFO) LPWSANAMESPACE_INFO;
typedef struct _WSAPROTOCOLCHAIN {
int ChainLen;
typedef int (CALLBACK *LPCONDITIONPROC)(LPWSABUF, LPWSABUF, LPQOS, LPQOS, LPWSABUF, LPWSABUF, GROUP *, DWORD);
typedef void (WINAPI *LPWSAOVERLAPPED_COMPLETION_ROUTINE)(DWORD, DWORD, LPWSAOVERLAPPED, DWORD);
-
-#ifdef UNICODE
-typedef WSAPROTOCOL_INFOW WSAPROTOCOL_INFO;
-typedef LPWSAPROTOCOL_INFOW LPWSAPROTOCOL_INFO;
-#else
-typedef WSAPROTOCOL_INFOA WSAPROTOCOL_INFO;
-typedef LPWSAPROTOCOL_INFOA LPWSAPROTOCOL_INFO;
-#endif
+typedef __AW(WSAPROTOCOL_INFO) WSAPROTOCOL_INFO;
+typedef __AW(LPWSAPROTOCOL_INFO) LPWSAPROTOCOL_INFO;
/* Needed for XP & .NET Server function WSANSPIoctl. */
typedef enum _WSACOMPLETIONTYPE {
typedef INT (WINAPI *LPFN_WSASTRINGTOADDRESSW)(LPWSTR, INT, LPWSAPROTOCOL_INFOW, LPSOCKADDR, LPINT);
typedef DWORD (WINAPI *LPFN_WSAWAITFORMULTIPLEEVENTS)(DWORD, const WSAEVENT *, BOOL, DWORD, BOOL);
-#ifdef UNICODE
-#define LPFN_WSAADDRESSTOSTRING LPFN_WSAADDRESSTOSTRINGW
-#define LPFN_WSADUPLICATESOCKET LPFN_WSADUPLICATESOCKETW
-#define LPFN_WSAENUMNAMESPACEPROVIDERS LPFN_WSAENUMNAMESPACEPROVIDERSW
-#define LPFN_WSAENUMPROTOCOLS LPFN_WSAENUMPROTOCOLSW
-#define LPFN_WSAGETSERVICECLASSINFO LPFN_WSAGETSERVICECLASSINFOW
-#define LPFN_WSAGETSERVICECLASSNAMEBYCLASSID LPFN_WSAGETSERVICECLASSNAMEBYCLASSIDW
-#define LPFN_WSAINSTALLSERVICECLASS LPFN_WSAINSTALLSERVICECLASSW
-#define LPFN_WSALOOKUPSERVICEBEGIN LPFN_WSALOOKUPSERVICEBEGINW
-#define LPFN_WSALOOKUPSERVICENEXT LPFN_WSALOOKUPSERVICENEXTW
-#define LPFN_WSASETSERVICE LPFN_WSASETSERVICEW
-#define LPFN_WSASOCKET LPFN_WSASOCKETW
-#define LPFN_WSASTRINGTOADDRESS LPFN_WSASTRINGTOADDRESSW
-#define WSAAddressToString WSAAddressToStringW
-#define WSADuplicateSocket WSADuplicateSocketW
-#define WSAEnumNameSpaceProviders WSAEnumNameSpaceProvidersW
-#define WSAEnumProtocols WSAEnumProtocolsW
-#define WSAGetServiceClassInfo WSAGetServiceClassInfoW
-#define WSAGetServiceClassNameByClassId WSAGetServiceClassNameByClassIdW
-#define WSASetService WSASetServiceW
-#define WSASocket WSASocketW
-#define WSAStringToAddress WSAStringToAddressW
-#define WSALookupServiceBegin WSALookupServiceBeginW
-#define WSALookupServiceNext WSALookupServiceNextW
-#define WSAInstallServiceClass WSAInstallServiceClassW
-#else
-#define LPFN_WSAADDRESSTOSTRING LPFN_WSAADDRESSTOSTRINGA
-#define LPFN_WSADUPLICATESOCKET LPFN_WSADUPLICATESOCKETW
-#define LPFN_WSAENUMNAMESPACEPROVIDERS LPFN_WSAENUMNAMESPACEPROVIDERSA
-#define LPFN_WSAENUMPROTOCOLS LPFN_WSAENUMPROTOCOLSA
-#define LPFN_WSAGETSERVICECLASSINFO LPFN_WSAGETSERVICECLASSINFOA
-#define LPFN_WSAGETSERVICECLASSNAMEBYCLASSID LPFN_WSAGETSERVICECLASSNAMEBYCLASSIDA
-#define LPFN_WSAINSTALLSERVICECLASS LPFN_WSAINSTALLSERVICECLASSA
-#define LPFN_WSALOOKUPSERVICEBEGIN LPFN_WSALOOKUPSERVICEBEGINA
-#define LPFN_WSALOOKUPSERVICENEXT LPFN_WSALOOKUPSERVICENEXTA
-#define LPFN_WSASETSERVICE LPFN_WSASETSERVICEA
-#define LPFN_WSASOCKET LPFN_WSASOCKETA
-#define LPFN_WSASTRINGTOADDRESS LPFN_WSASTRINGTOADDRESSA
-#define WSAAddressToString WSAAddressToStringA
-#define WSADuplicateSocket WSADuplicateSocketA
-#define WSAEnumNameSpaceProviders WSAEnumNameSpaceProvidersA
-#define WSAEnumProtocols WSAEnumProtocolsA
-#define WSAGetServiceClassInfo WSAGetServiceClassInfoA
-#define WSAGetServiceClassNameByClassId WSAGetServiceClassNameByClassIdA
-#define WSAInstallServiceClass WSAInstallServiceClassA
-#define WSALookupServiceBegin WSALookupServiceBeginA
-#define WSALookupServiceNext WSALookupServiceNextA
-#define WSASocket WSASocketA
-#define WSAStringToAddress WSAStringToAddressA
-#define WSASetService WSASetServiceA
-#endif
+#define LPFN_WSAADDRESSTOSTRING __AW(LPFN_WSAADDRESSTOSTRING)
+#define LPFN_WSADUPLICATESOCKET __AW(LPFN_WSADUPLICATESOCKET)
+#define LPFN_WSAENUMNAMESPACEPROVIDERS __AW(LPFN_WSAENUMNAMESPACEPROVIDERS)
+#define LPFN_WSAENUMPROTOCOLS __AW(LPFN_WSAENUMPROTOCOLS)
+#define LPFN_WSAGETSERVICECLASSINFO __AW(LPFN_WSAGETSERVICECLASSINFO)
+#define LPFN_WSAGETSERVICECLASSNAMEBYCLASSID __AW(LPFN_WSAGETSERVICECLASSNAMEBYCLASSID)
+#define LPFN_WSAINSTALLSERVICECLASS __AW(LPFN_WSAINSTALLSERVICECLASS)
+#define LPFN_WSALOOKUPSERVICEBEGIN __AW(LPFN_WSALOOKUPSERVICEBEGIN)
+#define LPFN_WSALOOKUPSERVICENEXT __AW(LPFN_WSALOOKUPSERVICENEXT)
+#define LPFN_WSASETSERVICE __AW(LPFN_WSASETSERVICE)
+#define LPFN_WSASOCKET __AW(LPFN_WSASOCKET)
+#define LPFN_WSASTRINGTOADDRESS __AW(LPFN_WSASTRINGTOADDRESS)
+#define WSAAddressToString __AW(WSAAddressToString)
+#define WSADuplicateSocket __AW(WSADuplicateSocket)
+#define WSAEnumNameSpaceProviders __AW(WSAEnumNameSpaceProviders)
+#define WSAEnumProtocols __AW(WSAEnumProtocols)
+#define WSAGetServiceClassInfo __AW(WSAGetServiceClassInfo)
+#define WSAGetServiceClassNameByClassId __AW(WSAGetServiceClassNameByClassId)
+#define WSASetService __AW(WSASetService)
+#define WSASocket __AW(WSASocket)
+#define WSAStringToAddress __AW(WSAStringToAddress)
+#define WSALookupServiceBegin __AW(WSALookupServiceBegin)
+#define WSALookupServiceNext __AW(WSALookupServiceNext)
+#define WSAInstallServiceClass __AW(WSAInstallServiceClass)
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINSPOOL_H
#define _WINSPOOL_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define DI_CHANNEL 1
#define DI_CHANNEL_WRITE 2
#define DI_READ_SPOOL_JOB 3
#define FORM_USER 0x0
#define FORM_BUILTIN 0x1
#define FORM_PRINTER 0x2
-#if (_WIN32_WINNT >= 0x0500)
-#define DRIVER_KERNELMODE 0x00000001
-#define DRIVER_USERMODE 0x00000002
-#define DSPRINT_PUBLISH 0x00000001
-#define DSPRINT_UPDATE 0x00000002
-#define DSPRINT_UNPUBLISH 0x00000004
-#define DSPRINT_REPUBLISH 0x00000008
-#define DSPRINT_PENDING 0x80000000
-#endif
+
#define JOB_CONTROL_PAUSE 1
#define JOB_CONTROL_RESUME 2
#define JOB_CONTROL_CANCEL 3
#define PORT_STATUS_TONER_LOW 10
#define PORT_STATUS_WARMING_UP 11
#define PORT_STATUS_POWER_SAVE 12
+
#ifndef RC_INVOKED
typedef struct _ADDJOB_INFO_1A {
LPSTR Path;
LPWSTR pMonitorName;
LPWSTR pDefaultDataType;
} DRIVER_INFO_3W,*PDRIVER_INFO_3W,*LPDRIVER_INFO_3W;
-#if (_WIN32_WINNT >= 0x0500)
-typedef struct _DRIVER_INFO_4A {
- DWORD cVersion;
- LPSTR pName;
- LPSTR pEnvironment;
- LPSTR pDriverPath;
- LPSTR pDataFile;
- LPSTR pConfigFile;
- LPSTR pHelpFile;
- LPSTR pDependentFiles;
- LPSTR pMonitorName;
- LPSTR pDefaultDataType;
- LPSTR pszzPreviousNames;
-} DRIVER_INFO_4A,*PDRIVER_INFO_4A,*LPDRIVER_INFO_4A;
-typedef struct _DRIVER_INFO_4W {
- DWORD cVersion;
- LPWSTR pName;
- LPWSTR pEnvironment;
- LPWSTR pDriverPath;
- LPWSTR pDataFile;
- LPWSTR pConfigFile;
- LPWSTR pHelpFile;
- LPWSTR pDependentFiles;
- LPWSTR pMonitorName;
- LPWSTR pDefaultDataType;
- LPWSTR pszzPreviousNames;
-} DRIVER_INFO_4W,*PDRIVER_INFO_4W,*LPDRIVER_INFO_4W;
-typedef struct _DRIVER_INFO_5A {
- DWORD cVersion;
- LPSTR pName;
- LPSTR pEnvironment;
- LPSTR pDriverPath;
- LPSTR pDataFile;
- LPSTR pConfigFile;
- DWORD dwDriverAttributes;
- DWORD dwConfigVersion;
- DWORD dwDriverVersion;
-} DRIVER_INFO_5A,*PDRIVER_INFO_5A,*LPDRIVER_INFO_5A;
-typedef struct _DRIVER_INFO_5W {
- DWORD cVersion;
- LPWSTR pName;
- LPWSTR pEnvironment;
- LPWSTR pDriverPath;
- LPWSTR pDataFile;
- LPWSTR pConfigFile;
- DWORD dwDriverAttributes;
- DWORD dwConfigVersion;
- DWORD dwDriverVersion;
-} DRIVER_INFO_5W,*PDRIVER_INFO_5W,*LPDRIVER_INFO_5W;
-typedef struct _DRIVER_INFO_6A {
- DWORD cVersion;
- LPSTR pName;
- LPSTR pEnvironment;
- LPSTR pDriverPath;
- LPSTR pDataFile;
- LPSTR pConfigFile;
- LPSTR pHelpFile;
- LPSTR pDependentFiles;
- LPSTR pMonitorName;
- LPSTR pDefaultDataType;
- LPSTR pszzPreviousNames;
- FILETIME ftDriverDate;
- DWORDLONG dwlDriverVersion;
- LPSTR pszMfgName;
- LPSTR pszOEMUrl;
- LPSTR pszHardwareID;
- LPSTR pszProvider;
-} DRIVER_INFO_6A,*PDRIVER_INFO_6A,*LPDRIVER_INFO_6A;
-typedef struct _DRIVER_INFO_6W {
- DWORD cVersion;
- LPWSTR pName;
- LPWSTR pEnvironment;
- LPWSTR pDriverPath;
- LPWSTR pDataFile;
- LPWSTR pConfigFile;
- LPWSTR pHelpFile;
- LPWSTR pDependentFiles;
- LPWSTR pMonitorName;
- LPWSTR pDefaultDataType;
- LPWSTR pszzPreviousNames;
- FILETIME ftDriverDate;
- DWORDLONG dwlDriverVersion;
- LPWSTR pszMfgName;
- LPWSTR pszOEMUrl;
- LPWSTR pszHardwareID;
- LPWSTR pszProvider;
-} DRIVER_INFO_6W,*PDRIVER_INFO_6W,*LPDRIVER_INFO_6W;
-#endif
+
typedef struct _MONITOR_INFO_1A{LPSTR pName;} MONITOR_INFO_1A,*PMONITOR_INFO_1A,*LPMONITOR_INFO_1A;
typedef struct _MONITOR_INFO_1W{LPWSTR pName;} MONITOR_INFO_1W,*PMONITOR_INFO_1W,*LPMONITOR_INFO_1W;
typedef struct _PORT_INFO_1A {LPSTR pName;} PORT_INFO_1A,*PPORT_INFO_1A,*LPPORT_INFO_1A;
LPWSTR pszStatus;
DWORD dwSeverity;
} PORT_INFO_3W,*PPORT_INFO_3W,*LPPORT_INFO_3W;
-#if (_WIN32_WINNT >= 0x0500)
-typedef struct _PRINTER_ENUM_VALUESA {
- LPSTR pValueName;
- DWORD cbValueName;
- DWORD dwType;
- LPBYTE pData;
- DWORD cbData;
-} PRINTER_ENUM_VALUESA,*PPRINTER_ENUM_VALUESA,*LPRINTER_ENUM_VALUESA;
-typedef struct _PRINTER_ENUM_VALUESW {
- LPWSTR pValueName;
- DWORD cbValueName;
- DWORD dwType;
- LPBYTE pData;
- DWORD cbData;
-} PRINTER_ENUM_VALUESW,*PPRINTER_ENUM_VALUESW,*LPRINTER_ENUM_VALUESW;
-#endif
+
typedef struct _PRINTER_INFO_1A {
DWORD Flags;
LPSTR pDescription;
typedef struct _PRINTER_INFO_6 {
DWORD dwStatus;
} PRINTER_INFO_6,*PPRINTER_INFO_6,*LPPRINTER_INFO_6;
-#if (_WIN32_WINNT >= 0x0500)
-typedef struct _PRINTER_INFO_7A {
- LPWSTR pszObjectGUID;
- DWORD dwAction;
-} PRINTER_INFO_7A,*PPRINTER_INFO_7A,*LPPRINTER_INFO_7A;
-typedef struct _PRINTER_INFO_7W {
- LPWSTR pszObjectGUID;
- DWORD dwAction;
-} PRINTER_INFO_7W,*PPRINTER_INFO_7W,*LPPRINTER_INFO_7W;
-typedef struct _PRINTER_INFO_8 {
- LPDEVMODE pDevMode;
-} PRINTER_INFO_8,*PPRINTER_INFO_8,*LPPRINTER_INFO_8;
-typedef struct _PRINTER_INFO_9 {
- LPDEVMODE pDevMode;
-} PRINTER_INFO_9,*PPRINTER_INFO_9,*LPPRINTER_INFO_9;
-#endif
+
typedef struct _PRINTPROCESSOR_INFO_1A {LPSTR pName;} PRINTPROCESSOR_INFO_1A,*PPRINTPROCESSOR_INFO_1A,*LPPRINTPROCESSOR_INFO_1A;
typedef struct _PRINTPROCESSOR_INFO_1W {LPWSTR pName;} PRINTPROCESSOR_INFO_1W,*PPRINTPROCESSOR_INFO_1W,*LPPRINTPROCESSOR_INFO_1W;
typedef struct _PRINTER_NOTIFY_INFO_DATA {
LPDEVMODE pDevMode;
ACCESS_MASK DesiredAccess;
} PRINTER_DEFAULTSW,*PPRINTER_DEFAULTSW,*LPPRINTER_DEFAULTSW;
-#if (_WIN32_WINNT >= 0x0500)
-typedef struct _PRINTPROCESSOR_CAPS_1 {
- DWORD dwLevel;
- DWORD dwNupOptions;
- DWORD dwPageOrderFlags;
- DWORD dwNumberOfCopies;
-} PRINTPROCESSOR_CAPS_1,*PPRINTPROCESSOR_CAPS_1,*LPPRINTPROCESSOR_CAPS_1;
-#endif
+
typedef struct _PROVIDOR_INFO_1A {
LPSTR pName;
LPSTR pEnvironment;
HANDLE WINAPI FindFirstPrinterChangeNotification(HANDLE,DWORD,DWORD,PVOID);
HANDLE WINAPI FindNextPrinterChangeNotification(HANDLE,PDWORD,PVOID,PVOID*);
BOOL WINAPI FreePrinterNotifyInfo(PPRINTER_NOTIFY_INFO);
-#if _WIN32_WINNT >= 0x0500
-BOOL WINAPI GetDefaultPrinterA(LPSTR,LPDWORD);
-BOOL WINAPI GetDefaultPrinterW(LPWSTR,LPDWORD);
-#endif
+
BOOL WINAPI GetFormA(HANDLE,LPSTR,DWORD,PBYTE,DWORD,PDWORD);
BOOL WINAPI GetFormW(HANDLE,LPWSTR,DWORD,PBYTE,DWORD,PDWORD);
BOOL WINAPI GetJobA(HANDLE,DWORD,DWORD,PBYTE,DWORD,PDWORD);
DWORD WINAPI WaitForPrinterChange(HANDLE,DWORD);
BOOL WINAPI WritePrinter(HANDLE,PVOID,DWORD,PDWORD);
-#ifdef UNICODE
-typedef JOB_INFO_1W JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1;
-typedef JOB_INFO_2W JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2;
-typedef ADDJOB_INFO_1W ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1;
-typedef DATATYPES_INFO_1W DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1;
-typedef MONITOR_INFO_1W MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1;
-typedef MONITOR_INFO_2W MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2;
-typedef DOC_INFO_1W DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1;
-typedef DOC_INFO_2W DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2;
-typedef PORT_INFO_1W PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1;
-typedef PORT_INFO_2W PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2;
-typedef PORT_INFO_3W PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3;
-typedef DRIVER_INFO_1W DRIVER_INFO_1,*PDRIVER_INFO_1,*LPDRIVER_INFO_1;
-typedef DRIVER_INFO_2W DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2;
-typedef DRIVER_INFO_3W DRIVER_INFO_3,*PDRIVER_INFO_3,*LPDRIVER_INFO_3;
-#if (_WIN32_WINNT >= 0x0500)
-typedef DRIVER_INFO_4W DRIVER_INFO_4,*PDRIVER_INFO_4,*LPDRIVER_INFO_4;
-typedef DRIVER_INFO_5W DRIVER_INFO_5,*PDRIVER_INFO_5,*LPDRIVER_INFO_5;
-typedef DRIVER_INFO_6W DRIVER_INFO_6,*PDRIVER_INFO_6,*LPDRIVER_INFO_6;
-typedef PRINTER_ENUM_VALUESW PRINTER_ENUM_VALUES,*PPRINTER_ENUM_VALUES,*LPRINTER_ENUM_VALUES;
-#endif
-typedef PRINTER_INFO_1W PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1;
-typedef PRINTER_INFO_2W PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2;
-typedef PRINTER_INFO_4W PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4;
-typedef PRINTER_INFO_5W PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5;
-#if (_WIN32_WINNT >= 0x0500)
-typedef PRINTER_INFO_7W PRINTER_INFO_7,*PPRINTER_INFO_7,*LPPRINTER_INFO_7;
-#endif
-typedef PRINTPROCESSOR_INFO_1W PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1;
-typedef FORM_INFO_1W FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1;
-typedef PRINTER_DEFAULTSW PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS;
-typedef PROVIDOR_INFO_1W PROVIDOR_INFO_1,*PPROVIDOR_INFO_1,*LPROVIDOR_INFO_1;
-typedef PROVIDOR_INFO_2W PROVIDOR_INFO_2,*PPROVIDOR_INFO_2,*LPROVIDOR_INFO_2;
-#define AddForm AddFormW
-#define AddJob AddJobW
-#define AddMonitor AddMonitorW
-#define AddPort AddPortW
-#define AddPrinter AddPrinterW
-#define AddPrinterConnection AddPrinterConnectionW
-#define AddPrinterDriver AddPrinterDriverW
-#define AddPrintProcessor AddPrintProcessorW
-#define AddPrintProvidor AddPrintProvidorW
-#define AdvancedDocumentProperties AdvancedDocumentPropertiesW
-#define ConfigurePort ConfigurePortW
-#define DeleteForm DeleteFormW
-#define DeleteMonitor DeleteMonitorW
-#define DeletePort DeletePortW
-#define DeletePrinterConnection DeletePrinterConnectionW
-#define DeletePrinterData DeletePrinterDataW
-#define DeletePrinterDriver DeletePrinterDriverW
-#define DeletePrintProcessor DeletePrinterProcessorW
-#define DeletePrintProvidor DeletePrinterProvidorW
-#define DocumentProperties DocumentPropertiesW
-#define EnumForms EnumFormsW
-#define EnumJobs EnumJobsW
-#define EnumMonitors EnumMonitorsW
-#define EnumPorts EnumPortsW
-#define EnumPrinterData EnumPrinterDataW
-#define EnumPrinterDrivers EnumPrinterDriversW
-#define EnumPrinters EnumPrintersW
-#define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesW
-#define EnumPrintProcessors EnumPrintProcessorsW
-#define GetDefaultPrinter GetDefaultPrinterW
-#define GetForm GetFormW
-#define GetJob GetJobW
-#define GetPrinter GetPrinterW
-#define GetPrinterData GetPrinterDataW
-#define GetPrinterDriver GetPrinterDriverW
-#define GetPrinterDriverDirectory GetPrinterDriverDirectoryW
-#define GetPrintProcessorDirectory GetPrintProcessorDirectoryW
-#define OpenPrinter OpenPrinterW
-#define PrinterMessageBox PrinterMessageBoxW
-#define ResetPrinter ResetPrinterW
-#define SetForm SetFormW
-#define SetJob SetJobW
-#define SetPrinter SetPrinterW
-#define SetPrinterData SetPrinterDataW
-#define StartDocPrinter StartDocPrinterW
-#else
-typedef JOB_INFO_1A JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1;
-typedef JOB_INFO_2A JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2;
-typedef ADDJOB_INFO_1A ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1;
-typedef DATATYPES_INFO_1A DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1;
-typedef MONITOR_INFO_1A MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1;
-typedef MONITOR_INFO_2A MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2;
-typedef DOC_INFO_1A DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1;
-typedef DOC_INFO_2A DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2;
-typedef PORT_INFO_1A PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1;
-typedef PORT_INFO_2A PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2;
-typedef PORT_INFO_3A PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3;
-typedef DRIVER_INFO_1A DRIVER_INFO_1,*PDRIVER_INFO_1,*LPDRIVER_INFO_1;
-typedef DRIVER_INFO_2A DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2;
-typedef DRIVER_INFO_3A DRIVER_INFO_3,*PDRIVER_INFO_3,*LPDRIVER_INFO_3;
-#if (_WIN32_WINNT >= 0x0500)
-typedef DRIVER_INFO_4A DRIVER_INFO_4,*PDRIVER_INFO_4,*LPDRIVER_INFO_4;
-typedef DRIVER_INFO_5A DRIVER_INFO_5,*PDRIVER_INFO_5,*LPDRIVER_INFO_5;
-typedef DRIVER_INFO_6A DRIVER_INFO_6,*PDRIVER_INFO_6,*LPDRIVER_INFO_6;
-typedef PRINTER_ENUM_VALUESA PRINTER_ENUM_VALUES,*PPRINTER_ENUM_VALUES,*LPRINTER_ENUM_VALUES;
-#endif
-typedef PRINTER_INFO_1A PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1;
-typedef PRINTER_INFO_2A PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2;
-typedef PRINTER_INFO_4A PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4;
-typedef PRINTER_INFO_5A PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5;
-#if (_WIN32_WINNT >= 0x0500)
-typedef PRINTER_INFO_7A PRINTER_INFO_7,*PPRINTER_INFO_7,*LPPRINTER_INFO_7;
-#endif
-typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1;
-typedef FORM_INFO_1A FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1;
-typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS;
-typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1,*PPROVIDOR_INFO_1,*LPROVIDOR_INFO_1;
-typedef PROVIDOR_INFO_2A PROVIDOR_INFO_2,*PPROVIDOR_INFO_2,*LPROVIDOR_INFO_2;
-#define AddForm AddFormA
-#define AddJob AddJobA
-#define AddMonitor AddMonitorA
-#define AddPort AddPortA
-#define AddPrinter AddPrinterA
-#define AddPrinterConnection AddPrinterConnectionA
-#define AddPrinterDriver AddPrinterDriverA
-#define AddPrintProcessor AddPrintProcessorA
-#define AddPrintProvidor AddPrintProvidorA
-#define AdvancedDocumentProperties AdvancedDocumentPropertiesA
-#define ConfigurePort ConfigurePortA
-#define DeleteForm DeleteFormA
-#define DeleteMonitor DeleteMonitorA
-#define DeletePort DeletePortA
-#define DeletePrinterConnection DeletePrinterConnectionA
-#define DeletePrinterData DeletePrinterDataA
-#define DeletePrinterDriver DeletePrinterDriverA
-#define DeletePrintProcessor DeletePrinterProcessorA
-#define DeletePrintProvidor DeletePrinterProvidorA
-#define DocumentProperties DocumentPropertiesA
-#define EnumForms EnumFormsA
-#define EnumJobs EnumJobsA
-#define EnumMonitors EnumMonitorsA
-#define EnumPorts EnumPortsA
-#define EnumPrinterData EnumPrinterDataA
-#define EnumPrinterDrivers EnumPrinterDriversA
-#define EnumPrinters EnumPrintersA
-#define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesA
-#define EnumPrintProcessors EnumPrintProcessorsA
-#define GetDefaultPrinter GetDefaultPrinterA
-#define GetForm GetFormA
-#define GetJob GetJobA
-#define GetPrinter GetPrinterA
-#define GetPrinterData GetPrinterDataA
-#define GetPrinterDriver GetPrinterDriverA
-#define GetPrinterDriverDirectory GetPrinterDriverDirectoryA
-#define GetPrintProcessorDirectory GetPrintProcessorDirectoryA
-#define OpenPrinter OpenPrinterA
-#define PrinterMessageBox PrinterMessageBoxA
-#define ResetPrinter ResetPrinterA
-#define SetForm SetFormA
-#define SetJob SetJobA
-#define SetPrinter SetPrinterA
-#define SetPrinterData SetPrinterDataA
-#define StartDocPrinter StartDocPrinterA
-#endif
+typedef __AW(JOB_INFO_1) JOB_INFO_1,*PJOB_INFO_1,*LPJOB_INFO_1;
+typedef __AW(JOB_INFO_2) JOB_INFO_2,*PJOB_INFO_2,*LPJOB_INFO_2;
+typedef __AW(ADDJOB_INFO_1) ADDJOB_INFO_1,*PADDJOB_INFO_1,*LPADDJOB_INFO_1;
+typedef __AW(DATATYPES_INFO_1) DATATYPES_INFO_1,*PDATATYPES_INFO_1,*LPDATATYPES_INFO_1;
+typedef __AW(MONITOR_INFO_1) MONITOR_INFO_1,*PMONITOR_INFO_1,*LPMONITOR_INFO_1;
+typedef __AW(MONITOR_INFO_2) MONITOR_INFO_2,*PMONITOR_INFO_2,*LPMONITOR_INFO_2;
+typedef __AW(DOC_INFO_1) DOC_INFO_1,*PDOC_INFO_1,*LPDOC_INFO_1;
+typedef __AW(DOC_INFO_2) DOC_INFO_2,*PDOC_INFO_2,*LPDOC_INFO_2;
+typedef __AW(PORT_INFO_1) PORT_INFO_1,*PPORT_INFO_1,*LPPORT_INFO_1;
+typedef __AW(PORT_INFO_2) PORT_INFO_2,*PPORT_INFO_2,*LPPORT_INFO_2;
+typedef __AW(PORT_INFO_3) PORT_INFO_3,*PPORT_INFO_3,*LPPORT_INFO_3;
+typedef __AW(DRIVER_INFO_1) DRIVER_INFO_1,*PDRIVER_INFO_1,*LPDRIVER_INFO_1;
+typedef __AW(DRIVER_INFO_2) DRIVER_INFO_2,*PDRIVER_INFO_2,*LPDRIVER_INFO_2;
+typedef __AW(DRIVER_INFO_3) DRIVER_INFO_3,*PDRIVER_INFO_3,*LPDRIVER_INFO_3;
+
+typedef __AW(PRINTER_INFO_1) PRINTER_INFO_1,*PPRINTER_INFO_1,*LPPRINTER_INFO_1;
+typedef __AW(PRINTER_INFO_2) PRINTER_INFO_2,*PPRINTER_INFO_2,*LPPRINTER_INFO_2;
+typedef __AW(PRINTER_INFO_4) PRINTER_INFO_4,*PPRINTER_INFO_4,*LPPRINTER_INFO_4;
+typedef __AW(PRINTER_INFO_5) PRINTER_INFO_5,*PPRINTER_INFO_5,*LPPRINTER_INFO_5;
+
+typedef __AW(PRINTPROCESSOR_INFO_1) PRINTPROCESSOR_INFO_1,*PPRINTPROCESSOR_INFO_1,*LPPRINTPROCESSOR_INFO_1;
+typedef __AW(FORM_INFO_1) FORM_INFO_1,*PFORM_INFO_1,*LPFORM_INFO_1;
+typedef __AW(PRINTER_DEFAULTS) PRINTER_DEFAULTS,*PPRINTER_DEFAULTS,*LPPRINTER_DEFAULTS;
+typedef __AW(PROVIDOR_INFO_1) PROVIDOR_INFO_1,*PPROVIDOR_INFO_1,*LPROVIDOR_INFO_1;
+typedef __AW(PROVIDOR_INFO_2) PROVIDOR_INFO_2,*PPROVIDOR_INFO_2,*LPROVIDOR_INFO_2;
+#define AddForm __AW(AddForm)
+#define AddJob __AW(AddJob)
+#define AddMonitor __AW(AddMonitor)
+#define AddPort __AW(AddPort)
+#define AddPrinter __AW(AddPrinter)
+#define AddPrinterConnection __AW(AddPrinterConnection)
+#define AddPrinterDriver __AW(AddPrinterDriver)
+#define AddPrintProcessor __AW(AddPrintProcessor)
+#define AddPrintProvidor __AW(AddPrintProvidor)
+#define AdvancedDocumentProperties __AW(AdvancedDocumentProperties)
+#define ConfigurePort __AW(ConfigurePort)
+#define DeleteForm __AW(DeleteForm)
+#define DeleteMonitor __AW(DeleteMonitor)
+#define DeletePort __AW(DeletePort)
+#define DeletePrinterConnection __AW(DeletePrinterConnection)
+#define DeletePrinterData __AW(DeletePrinterData)
+#define DeletePrinterDriver __AW(DeletePrinterDriver)
+#define DeletePrintProcessor __AW(DeletePrinterProcessor)
+#define DeletePrintProvidor __AW(DeletePrinterProvidor)
+#define DocumentProperties __AW(DocumentProperties)
+#define EnumForms __AW(EnumForms)
+#define EnumJobs __AW(EnumJobs)
+#define EnumMonitors __AW(EnumMonitors)
+#define EnumPorts __AW(EnumPorts)
+#define EnumPrinterData __AW(EnumPrinterData)
+#define EnumPrinterDrivers __AW(EnumPrinterDrivers)
+#define EnumPrinters __AW(EnumPrinters)
+#define EnumPrintProcessorDatatypes __AW(EnumPrintProcessorDatatypes)
+#define EnumPrintProcessors __AW(EnumPrintProcessors)
+#define GetDefaultPrinter __AW(GetDefaultPrinter)
+#define GetForm __AW(GetForm)
+#define GetJob __AW(GetJob)
+#define GetPrinter __AW(GetPrinter)
+#define GetPrinterData __AW(GetPrinterData)
+#define GetPrinterDriver __AW(GetPrinterDriver)
+#define GetPrinterDriverDirectory __AW(GetPrinterDriverDirectory)
+#define GetPrintProcessorDirectory __AW(GetPrintProcessorDirectory)
+#define OpenPrinter __AW(OpenPrinter)
+#define PrinterMessageBox __AW(PrinterMessageBox)
+#define ResetPrinter __AW(ResetPrinter)
+#define SetForm __AW(SetForm)
+#define SetJob __AW(SetJob)
+#define SetPrinter __AW(SetPrinter)
+#define SetPrinterData __AW(SetPrinterData)
+#define StartDocPrinter __AW(StartDocPrinter)
#endif /* RC_INVOKED */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+#define DRIVER_KERNELMODE 0x00000001
+#define DRIVER_USERMODE 0x00000002
+#define DSPRINT_PUBLISH 0x00000001
+#define DSPRINT_UPDATE 0x00000002
+#define DSPRINT_UNPUBLISH 0x00000004
+#define DSPRINT_REPUBLISH 0x00000008
+#define DSPRINT_PENDING 0x80000000
+
+#ifndef RC_INVOKED
+typedef struct _DRIVER_INFO_4A {
+ DWORD cVersion;
+ LPSTR pName;
+ LPSTR pEnvironment;
+ LPSTR pDriverPath;
+ LPSTR pDataFile;
+ LPSTR pConfigFile;
+ LPSTR pHelpFile;
+ LPSTR pDependentFiles;
+ LPSTR pMonitorName;
+ LPSTR pDefaultDataType;
+ LPSTR pszzPreviousNames;
+} DRIVER_INFO_4A,*PDRIVER_INFO_4A,*LPDRIVER_INFO_4A;
+typedef struct _DRIVER_INFO_4W {
+ DWORD cVersion;
+ LPWSTR pName;
+ LPWSTR pEnvironment;
+ LPWSTR pDriverPath;
+ LPWSTR pDataFile;
+ LPWSTR pConfigFile;
+ LPWSTR pHelpFile;
+ LPWSTR pDependentFiles;
+ LPWSTR pMonitorName;
+ LPWSTR pDefaultDataType;
+ LPWSTR pszzPreviousNames;
+} DRIVER_INFO_4W,*PDRIVER_INFO_4W,*LPDRIVER_INFO_4W;
+typedef struct _DRIVER_INFO_5A {
+ DWORD cVersion;
+ LPSTR pName;
+ LPSTR pEnvironment;
+ LPSTR pDriverPath;
+ LPSTR pDataFile;
+ LPSTR pConfigFile;
+ DWORD dwDriverAttributes;
+ DWORD dwConfigVersion;
+ DWORD dwDriverVersion;
+} DRIVER_INFO_5A,*PDRIVER_INFO_5A,*LPDRIVER_INFO_5A;
+typedef struct _DRIVER_INFO_5W {
+ DWORD cVersion;
+ LPWSTR pName;
+ LPWSTR pEnvironment;
+ LPWSTR pDriverPath;
+ LPWSTR pDataFile;
+ LPWSTR pConfigFile;
+ DWORD dwDriverAttributes;
+ DWORD dwConfigVersion;
+ DWORD dwDriverVersion;
+} DRIVER_INFO_5W,*PDRIVER_INFO_5W,*LPDRIVER_INFO_5W;
+typedef struct _DRIVER_INFO_6A {
+ DWORD cVersion;
+ LPSTR pName;
+ LPSTR pEnvironment;
+ LPSTR pDriverPath;
+ LPSTR pDataFile;
+ LPSTR pConfigFile;
+ LPSTR pHelpFile;
+ LPSTR pDependentFiles;
+ LPSTR pMonitorName;
+ LPSTR pDefaultDataType;
+ LPSTR pszzPreviousNames;
+ FILETIME ftDriverDate;
+ DWORDLONG dwlDriverVersion;
+ LPSTR pszMfgName;
+ LPSTR pszOEMUrl;
+ LPSTR pszHardwareID;
+ LPSTR pszProvider;
+} DRIVER_INFO_6A,*PDRIVER_INFO_6A,*LPDRIVER_INFO_6A;
+typedef struct _DRIVER_INFO_6W {
+ DWORD cVersion;
+ LPWSTR pName;
+ LPWSTR pEnvironment;
+ LPWSTR pDriverPath;
+ LPWSTR pDataFile;
+ LPWSTR pConfigFile;
+ LPWSTR pHelpFile;
+ LPWSTR pDependentFiles;
+ LPWSTR pMonitorName;
+ LPWSTR pDefaultDataType;
+ LPWSTR pszzPreviousNames;
+ FILETIME ftDriverDate;
+ DWORDLONG dwlDriverVersion;
+ LPWSTR pszMfgName;
+ LPWSTR pszOEMUrl;
+ LPWSTR pszHardwareID;
+ LPWSTR pszProvider;
+} DRIVER_INFO_6W,*PDRIVER_INFO_6W,*LPDRIVER_INFO_6W;
+typedef struct _PRINTER_ENUM_VALUESA {
+ LPSTR pValueName;
+ DWORD cbValueName;
+ DWORD dwType;
+ LPBYTE pData;
+ DWORD cbData;
+} PRINTER_ENUM_VALUESA,*PPRINTER_ENUM_VALUESA,*LPRINTER_ENUM_VALUESA;
+typedef struct _PRINTER_ENUM_VALUESW {
+ LPWSTR pValueName;
+ DWORD cbValueName;
+ DWORD dwType;
+ LPBYTE pData;
+ DWORD cbData;
+} PRINTER_ENUM_VALUESW,*PPRINTER_ENUM_VALUESW,*LPRINTER_ENUM_VALUESW;
+typedef struct _PRINTER_INFO_7A {
+ LPWSTR pszObjectGUID;
+ DWORD dwAction;
+} PRINTER_INFO_7A,*PPRINTER_INFO_7A,*LPPRINTER_INFO_7A;
+typedef struct _PRINTER_INFO_7W {
+ LPWSTR pszObjectGUID;
+ DWORD dwAction;
+} PRINTER_INFO_7W,*PPRINTER_INFO_7W,*LPPRINTER_INFO_7W;
+typedef struct _PRINTER_INFO_8 {
+ LPDEVMODE pDevMode;
+} PRINTER_INFO_8,*PPRINTER_INFO_8,*LPPRINTER_INFO_8;
+typedef struct _PRINTER_INFO_9 {
+ LPDEVMODE pDevMode;
+} PRINTER_INFO_9,*PPRINTER_INFO_9,*LPPRINTER_INFO_9;
+typedef struct _PRINTPROCESSOR_CAPS_1 {
+ DWORD dwLevel;
+ DWORD dwNupOptions;
+ DWORD dwPageOrderFlags;
+ DWORD dwNumberOfCopies;
+} PRINTPROCESSOR_CAPS_1,*PPRINTPROCESSOR_CAPS_1,*LPPRINTPROCESSOR_CAPS_1;
+BOOL WINAPI GetDefaultPrinterA(LPSTR,LPDWORD);
+BOOL WINAPI GetDefaultPrinterW(LPWSTR,LPDWORD);
+typedef __AW(DRIVER_INFO_4) DRIVER_INFO_4,*PDRIVER_INFO_4,*LPDRIVER_INFO_4;
+typedef __AW(DRIVER_INFO_5) DRIVER_INFO_5,*PDRIVER_INFO_5,*LPDRIVER_INFO_5;
+typedef __AW(DRIVER_INFO_6) DRIVER_INFO_6,*PDRIVER_INFO_6,*LPDRIVER_INFO_6;
+typedef __AW(PRINTER_ENUM_VALUES) PRINTER_ENUM_VALUES,*PPRINTER_ENUM_VALUES,*LPRINTER_ENUM_VALUES;
+typedef __AW(PRINTER_INFO_7) PRINTER_INFO_7,*PPRINTER_INFO_7,*LPPRINTER_INFO_7;
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WINSVC_H
#define _WINSVC_H
#pragma GCC system_header
+#include <_mingw.h>
#ifndef WINADVAPI
#define WINADVAPI
#ifdef __cplusplus
extern "C" {
#endif
+
#define SERVICES_ACTIVE_DATABASEA "ServicesActive"
#define SERVICES_ACTIVE_DATABASEW L"ServicesActive"
#define SERVICES_FAILED_DATABASEA "ServicesFailed"
WINADVAPI BOOL WINAPI StartServiceW(SC_HANDLE,DWORD,LPCWSTR*);
WINADVAPI BOOL WINAPI UnlockServiceDatabase(SC_LOCK);
-#ifdef UNICODE
-typedef ENUM_SERVICE_STATUSW ENUM_SERVICE_STATUS,*LPENUM_SERVICE_STATUS;
-typedef ENUM_SERVICE_STATUS_PROCESSW ENUM_SERVICE_STATUS_PROCESS;
-typedef LPENUM_SERVICE_STATUS_PROCESSW LPENUM_SERVICE_STATUS_PROCESS;
-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
-#define EnumServicesStatusEx EnumServicesStatusExW
-#define GetServiceDisplayName GetServiceDisplayNameW
-#define GetServiceKeyName GetServiceKeyNameW
-#define OpenSCManager OpenSCManagerW
-#define OpenService OpenServiceW
-#define QueryServiceConfig QueryServiceConfigW
-#define QueryServiceConfig2 QueryServiceConfig2W
-#define QueryServiceLockStatus QueryServiceLockStatusW
-#define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerW
-#define RegisterServiceCtrlHandlerEx RegisterServiceCtrlHandlerExW
-#define StartService StartServiceW
-#define StartServiceCtrlDispatcher StartServiceCtrlDispatcherW
-#else
-typedef ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS,*LPENUM_SERVICE_STATUS;
-typedef ENUM_SERVICE_STATUS_PROCESSA ENUM_SERVICE_STATUS_PROCESS;
-typedef LPENUM_SERVICE_STATUS_PROCESSA LPENUM_SERVICE_STATUS_PROCESS;
-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
-#define EnumServicesStatusEx EnumServicesStatusExA
-#define GetServiceDisplayName GetServiceDisplayNameA
-#define GetServiceKeyName GetServiceKeyNameA
-#define OpenSCManager OpenSCManagerA
-#define OpenService OpenServiceA
-#define QueryServiceConfig QueryServiceConfigA
-#define QueryServiceConfig2 QueryServiceConfig2A
-#define QueryServiceLockStatus QueryServiceLockStatusA
-#define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerA
-#define RegisterServiceCtrlHandlerEx RegisterServiceCtrlHandlerExA
-#define StartService StartServiceA
-#define StartServiceCtrlDispatcher StartServiceCtrlDispatcherA
-#endif
+typedef __AW(ENUM_SERVICE_STATUS) ENUM_SERVICE_STATUS,*LPENUM_SERVICE_STATUS;
+typedef __AW(ENUM_SERVICE_STATUS_PROCESS) ENUM_SERVICE_STATUS_PROCESS;
+typedef __AW(LPENUM_SERVICE_STATUS_PROCESS) LPENUM_SERVICE_STATUS_PROCESS;
+typedef __AW(QUERY_SERVICE_CONFIG) QUERY_SERVICE_CONFIG,*LPQUERY_SERVICE_CONFIG;
+typedef __AW(QUERY_SERVICE_LOCK_STATUS) QUERY_SERVICE_LOCK_STATUS,*LPQUERY_SERVICE_LOCK_STATUS;
+typedef __AW(SERVICE_TABLE_ENTRY) SERVICE_TABLE_ENTRY,*LPSERVICE_TABLE_ENTRY;
+typedef __AW(LPSERVICE_MAIN_FUNCTION) LPSERVICE_MAIN_FUNCTION;
+typedef __AW(SERVICE_DESCRIPTION) SERVICE_DESCRIPTION;
+typedef __AW(LPSERVICE_DESCRIPTION) LPSERVICE_DESCRIPTION;
+typedef __AW(SERVICE_FAILURE_ACTIONS) SERVICE_FAILURE_ACTIONS;
+typedef __AW(LPSERVICE_FAILURE_ACTIONS) LPSERVICE_FAILURE_ACTIONS;
+#define SERVICES_ACTIVE_DATABASE __AW(SERVICES_ACTIVE_DATABASE)
+#define SERVICES_FAILED_DATABASE __AW(SERVICES_FAILED_DATABASE)
+#define SC_GROUP_IDENTIFIER __AW(SC_GROUP_IDENTIFIER)
+#define ChangeServiceConfig __AW(ChangeServiceConfig)
+#define ChangeServiceConfig2 __AW(ChangeServiceConfig2)
+#define CreateService __AW(CreateService)
+#define EnumDependentServices __AW(EnumDependentServices)
+#define EnumServicesStatus __AW(EnumServicesStatus)
+#define EnumServicesStatusEx __AW(EnumServicesStatusEx)
+#define GetServiceDisplayName __AW(GetServiceDisplayName)
+#define GetServiceKeyName __AW(GetServiceKeyName)
+#define OpenSCManager __AW(OpenSCManager)
+#define OpenService __AW(OpenService)
+#define QueryServiceConfig __AW(QueryServiceConfig)
+#define QueryServiceConfig2 __AW(QueryServiceConfig2)
+#define QueryServiceLockStatus __AW(QueryServiceLockStatus)
+#define RegisterServiceCtrlHandler __AW(RegisterServiceCtrlHandler)
+#define RegisterServiceCtrlHandlerEx __AW(RegisterServiceCtrlHandlerEx)
+#define StartService __AW(StartService)
+#define StartServiceCtrlDispatcher __AW(StartServiceCtrlDispatcher)
+
#ifdef __cplusplus
}
#endif
+
#endif /* _WINSVC_H */
#ifndef _WINUSER_H
#define _WINUSER_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#define CF_ENHMETAFILE 14
#define CF_HDROP 15
#define CF_LOCALE 16
-#if (_WIN32_WINNT >= 0x0500)
-#define CF_DIBV5 17
-#define CF_MAX 18
-#else
#define CF_MAX 17
-#endif
+
#define CF_OWNERDISPLAY 128
#define CF_DSPTEXT 129
#define CF_DSPBITMAP 130
#define BSF_NOTIMEOUTIFNOTHUNG 0x00000040
#define BSF_POSTMESSAGE 0x00000010
#define BSF_QUERY 0x00000001
-#if (_WIN32_WINNT >= 0x0500)
-#define BSF_ALLOWSFW 0x00000080
-#define BSF_SENDNOTIFYMESSAGE 0x00000100
-#endif /* (_WIN32_WINNT >= 0x0500) */
-#if (_WIN32_WINNT >= 0x0501)
-#define BSF_LUID 0x00000400
-#define BSF_RETURNHDESK 0x00000200
-#endif /* (_WIN32_WINNT >= 0x0501) */
#define BROADCAST_QUERY_DENY 1112363332
#define ENUM_CURRENT_SETTINGS ((DWORD)-1)
#define DC_ICON 0x00000004
#define DC_TEXT 0x00000008
#define DC_INBUTTON 0x00000010
-#if (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500)
-#define DC_GRADIENT 0x00000020
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-#define DC_BUTTONS 0x00001000
-#endif
-/* Where are these documented? */
+
#define DC_CAPTION (DC_ICON|DC_TEXT|DC_BUTTONS)
#define DC_NC (DC_CAPTION|DC_FRAME)
#define DFC_MENU 2
#define DFC_SCROLL 3
#define DFC_BUTTON 4
-#if (WINVER >= 0x0500)
-#define DFC_POPUPMENU 5
-#endif /* WINVER >= 0x0500 */
+
#define DFCS_CAPTIONCLOSE 0
#define DFCS_CAPTIONMIN 1
#define DFCS_CAPTIONMAX 2
#define DFCS_INACTIVE 256
#define DFCS_PUSHED 512
#define DFCS_CHECKED 1024
-#if (WINVER >= 0x0500)
-#define DFCS_TRANSPARENT 0x800
-#define DFCS_HOT 0x1000
-#endif
+
#define DFCS_ADJUSTRECT 0x2000
#define DFCS_FLAT 0x4000
#define DFCS_MONO 0x8000
#define RT_ANICURSOR MAKEINTRESOURCE(21)
#define RT_ANIICON MAKEINTRESOURCE(22)
#define RT_HTML MAKEINTRESOURCE(23)
+
#ifndef RC_INVOKED
#define RT_MANIFEST MAKEINTRESOURCE(24)
#define CREATEPROCESS_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(1)
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(2)
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(3)
#else
+
#define RT_MANIFEST 24
#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
#endif
+
#define EWX_FORCE 4
#define EWX_LOGOFF 0
#define EWX_POWEROFF 8
#define EWX_REBOOT 2
#define EWX_SHUTDOWN 1
-#if (_WIN32_WINNT >= 0x0500)
-#define EWX_FORCEIFHUNG 16
-#endif
+
#define CS_BYTEALIGNCLIENT 4096
#define CS_BYTEALIGNWINDOW 8192
#define CS_KEYCVTWINDOW 4
#define CS_SAVEBITS 2048
#define CS_VREDRAW 1
#define CS_IME 0x10000
-#if (_WIN32_WINNT >= 0x0501)
-#define CS_DROPSHADOW 0x20000
-#endif
+
#define GCW_ATOM (-32)
#define GCL_CBCLSEXTRA (-20)
#define GCL_CBWNDEXTRA (-18)
#define GCLP_HMODULE (-16)
#define GCLP_WNDPROC (-24)
#define GCLP_HICONSM (-34)
+
#if 0
/* This is supposed to be defined by the program using it not defined
in the w32api headers. I've left it here for documentation purposes.
#define IDC_STATIC (-1)
#endif
#endif
+
#define IDC_ARROW MAKEINTRESOURCE(32512)
#define IDC_IBEAM MAKEINTRESOURCE(32513)
#define IDC_WAIT MAKEINTRESOURCE(32514)
#define IDC_HELP MAKEINTRESOURCE(32651)
#define IDC_ICON MAKEINTRESOURCE(32641)
#define IDC_SIZE MAKEINTRESOURCE(32640)
+
#ifndef RC_INVOKED
#define IDI_APPLICATION MAKEINTRESOURCE(32512)
#define IDI_HAND MAKEINTRESOURCE(32513)
#define IDI_ASTERISK MAKEINTRESOURCE(32516)
#define IDI_WINLOGO MAKEINTRESOURCE(32517)
#else
+
#define IDI_APPLICATION 32512
#define IDI_HAND 32513
#define IDI_QUESTION 32514
#define IDI_ASTERISK 32516
#define IDI_WINLOGO 32517
#endif
+
#define IDI_WARNING IDI_EXCLAMATION
#define IDI_ERROR IDI_HAND
#define IDI_INFORMATION IDI_ASTERISK
#define MIIM_STRING 64
#define MIIM_BITMAP 128
#define MIIM_FTYPE 256
-#if (WINVER >= 0x0500)
-#define MIM_MAXHEIGHT 1
-#define MIM_BACKGROUND 2
-#define MIM_HELPID 4
-#define MIM_MENUDATA 8
-#define MIM_STYLE 16
-#define MIM_APPLYTOSUBMENUS 0x80000000L
-#define MNS_NOCHECK 0x80000000
-#define MNS_MODELESS 0x40000000
-#define MNS_DRAGDROP 0x20000000
-#define MNS_AUTODISMISS 0x10000000
-#define MNS_NOTIFYBYPOS 0x08000000
-#define MNS_CHECKORBMP 0x04000000
-#endif
+
#define MFT_BITMAP 4
#define MFT_MENUBARBREAK 32
#define MFT_MENUBREAK 64
#define MB_ICONSTOP 16
#define MB_OKCANCEL 1
#define MB_RETRYCANCEL 5
-#ifdef _WIN32_WINNT
-#if (_WIN32_WINNT >= 0x0400)
#define MB_SERVICE_NOTIFICATION 0x00200000
-#else
-#define MB_SERVICE_NOTIFICATION 0x00040000
-#endif
#define MB_SERVICE_NOTIFICATION_NT3X 0x00040000
-#endif
#define MB_SETFOREGROUND 0x10000
#define MB_SYSTEMMODAL 4096
#define MB_TASKMODAL 0x2000
#define MB_NOFOCUS 0x00008000
#define MB_TYPEMASK 15
#define MB_TOPMOST 0x40000
-#if (WINVER >= 0x0500)
-#define MB_CANCELTRYCONTINUE 6
-#endif
#define IDOK 1
#define IDCANCEL 2
#define IDIGNORE 5
#define IDYES 6
#define IDNO 7
-#if (WINVER >= 0x0400)
#define IDCLOSE 8
#define IDHELP 9
-#endif
-#if (WINVER >= 0x0500)
-#define IDTRYAGAIN 10
-#define IDCONTINUE 11
-#endif
#define GWL_EXSTYLE (-20)
#define GWL_STYLE (-16)
#define DWLP_MSGRESULT 0
#define DWL_USER 8
#define DWLP_USER 8
-#if (_WIN32_WINNT >= 0x0501)
-#define QS_ALLEVENTS 1215
-#define QS_ALLINPUT 1279
-#else
-#define QS_ALLEVENTS 191
-#define QS_ALLINPUT 255
-#endif
+
#define QS_ALLPOSTMESSAGE 256
#define QS_HOTKEY 128
-#if (_WIN32_WINNT >= 0x0501)
-#define QS_INPUT 1031
-#else
-#define QS_INPUT 7
-#endif
+
#define QS_KEY 1
#define QS_MOUSE 6
#define QS_MOUSEBUTTON 4
#define QS_MOUSEMOVE 2
#define QS_PAINT 32
#define QS_POSTMESSAGE 8
-#if (_WIN32_WINNT >= 0x0501)
-#define QS_RAWINPUT 1024
-#endif
+
#define QS_SENDMESSAGE 64
#define QS_TIMER 16
#define MWMO_WAITALL 1
#define SM_MEDIACENTER 87
#define SM_STARTER 88
#define SM_SERVERR2 89
-#if (_WIN32_WINNT < 0x0400)
-#define SM_CMETRICS 76
-#else
#define SM_CMETRICS 88
-#endif
#define SM_REMOTESESSION 0X1000
#define ARW_BOTTOMLEFT 0
#define ARW_BOTTOMRIGHT 1
#define LR_SHARED 32768
#define KEYEVENTF_EXTENDEDKEY 0x00000001
#define KEYEVENTF_KEYUP 00000002
-#if (_WIN32_WINNT >= 0x0500)
-#define KEYEVENTF_UNICODE 0x00000004
-#define KEYEVENTF_SCANCODE 0x00000008
-#endif
+
#define OBM_BTNCORNERS 32758
#define OBM_BTSIZE 32761
#define OBM_CHECK 32760
#define MOUSEEVENTF_MIDDLEDOWN 0x00000020
#define MOUSEEVENTF_MIDDLEUP 0x00000040
#define MOUSEEVENTF_ABSOLUTE 0x00008000
-#if (_WIN32_WINNT >= 0x0400)
#define MOUSEEVENTF_WHEEL 0x00000800
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-#define MOUSEEVENTF_XDOWN 0x00000080
-#define MOUSEEVENTF_XUP 0x00000100
-#endif
+
/* Also in pbt.h */
-#if (_WIN32_WINNT >= 0x0400)
#define PBT_APMQUERYSUSPEND 0
#define PBT_APMQUERYSTANDBY 1
#define PBT_APMQUERYSUSPENDFAILED 2
#define PBT_APMOEMEVENT 11
#define PBT_APMRESUMEAUTOMATIC 18
#define PBTF_APMRESUMEFROMFAILURE 1
-#endif
-#if (_WIN32_WINNT >= 0x0600)
-#define PBT_POWERSETTINGCHANGE 32787
-#endif
+
/* end pbt.h */
#define PM_NOREMOVE 0
#define PM_REMOVE 1
#define PM_NOYIELD 2
-#if (_WIN32_WINNT >= 0x0500)
-# define PM_QS_INPUT (QS_INPUT << 16)
-# define PM_QS_POSTMESSAGE ((QS_POSTMESSAGE|QS_HOTKEY|QS_TIMER) << 16)
-# define PM_QS_PAINT (QS_PAINT << 16)
-# define PM_QS_SENDMESSAGE (QS_SENDMESSAGE << 16)
-#endif
+
#define HWND_BROADCAST ((HWND)0xFFFF)
#define HWND_BOTTOM ((HWND)1)
#define HWND_NOTOPMOST ((HWND)(-2))
#define HWND_TOP ((HWND)0)
#define HWND_TOPMOST ((HWND)(-1))
#define HWND_DESKTOP (HWND)0
-#if (_WIN32_WINNT >= 0x0500)
-#define HWND_MESSAGE ((HWND)(-3))
-#endif
+
#define RDW_ERASE 4
#define RDW_FRAME 1024
#define RDW_INTERNALPAINT 2
#define SMTO_ABORTIFHUNG 0x0002
#define SMTO_BLOCK 0x0001
#define SMTO_NORMAL 0x0000
-#if (_WIN32_WINNT >= 0x0500)
-#define SMTO_NOTIMEOUTIFNOTHUNG 0x0008
-#endif
+
#define SIF_DISABLENOSCROLL 0x0008
#define SIF_PAGE 0x0002
#define SIF_POS 0x0004
#define HSHELL_WINDOWACTIVATED 4
#define HSHELL_WINDOWCREATED 1
#define HSHELL_WINDOWDESTROYED 2
-#if (_WIN32_WINNT >= 0x0500)
-#define HSHELL_ACCESSIBILITYSTATE 11
-#define HSHELL_APPCOMMAND 12
-#define HSHELL_RUDEAPPACTIVATED 32772
-#define HSHELL_FLASH 32774
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-#define HSHELL_WINDOWREPLACED 13
-#define HSHELL_WINDOWREPLACING 14
-#endif
+
#define SPI_GETACCESSTIMEOUT 0x003C
#define SPI_GETACTIVEWINDOWTRACKING 0x1000
#define SPI_GETACTIVEWNDTRKTIMEOUT 8194
#define SPI_SETUIEFFECTS 0x103F
#define SPI_SETWHEELSCROLLLINES 0x0069
#define SPI_SETWORKAREA 0x002F
-#if (_WIN32_WINNT >= 0x0501)
-#define SPI_GETDROPSHADOW 0x1024
-#define SPI_GETFLATMENU 0x1022
-#define SPI_GETFOCUSBORDERHEIGHT 0x2010
-#define SPI_GETFOCUSBORDERWIDTH 0x200E
-#define SPI_GETFONTSMOOTHINGCONTRAST 0x200C
-#define SPI_GETFONTSMOOTHINGTYPE 0x200A
-#define SPI_GETMOUSECLICKLOCK 0x101E
-#define SPI_GETMOUSECLICKLOCKTIME 0x2008
-#define SPI_GETMOUSESONAR 0x101C
-#define SPI_GETMOUSEVANISH 0x1020
-#define SPI_SETDROPSHADOW 0x1025
-#define SPI_SETFLATMENU 0x1023
-#define SPI_SETFOCUSBORDERHEIGHT 0x2011
-#define SPI_SETFOCUSBORDERWIDTH 0x200F
-#define SPI_SETFONTSMOOTHINGCONTRAST 0x200D
-#define SPI_SETFONTSMOOTHINGTYPE 0x200B
-#define SPI_SETMOUSECLICKLOCK 0x101F
-#define SPI_SETMOUSECLICKLOCKTIME 0x2009
-#define SPI_SETMOUSESONAR 0x101D
-#define SPI_SETMOUSEVANISH 0x1021
-#endif
+
#define SPIF_UPDATEINIFILE 0x0001
#define SPIF_SENDCHANGE 0x0002
#define SPIF_SENDWININICHANGE SPIF_SENDCHANGE
#define WM_INITDIALOG 272
#define WM_INITMENU 278
#define WM_INITMENUPOPUP 279
-#if (_WIN32_WINNT >= 0x0501)
-#define WM_INPUT 0x00FF
-#endif
+
#define WM_INPUTLANGCHANGE 81
#define WM_INPUTLANGCHANGEREQUEST 80
#define WM_KEYDOWN 256
#define WM_MDISETMENU 560
#define WM_MDITILE 550
#define WM_MEASUREITEM 44
-#if (WINVER >= 0x0500)
-#define WM_GETOBJECT 0x003D
-#define WM_CHANGEUISTATE 0x0127
-#define WM_UPDATEUISTATE 0x0128
-#define WM_QUERYUISTATE 0x0129
-#define WM_UNINITMENUPOPUP 0x0125
-#define WM_MENURBUTTONUP 290
-#define WM_MENUCOMMAND 0x0126
-#define WM_MENUGETOBJECT 0x0124
-#define WM_MENUDRAG 0x0123
-#define WM_APPCOMMAND 0x0319
-#endif
+
#define WM_MENUCHAR 288
#define WM_MENUSELECT 287
#define WM_NEXTMENU 531
#define WM_NCMBUTTONDBLCLK 169
#define WM_NCMBUTTONDOWN 167
#define WM_NCMBUTTONUP 168
-#if (_WIN32_WINNT >= 0x0500)
-#define WM_NCXBUTTONDOWN 171
-#define WM_NCXBUTTONUP 172
-#define WM_NCXBUTTONDBLCLK 173
-#define WM_NCMOUSEHOVER 0x02A0
-#define WM_NCMOUSELEAVE 0x02A2
-#endif
+
#define WM_NCMOUSEMOVE 160
#define WM_NCPAINT 133
#define WM_NCRBUTTONDBLCLK 166
#define WM_WINDOWPOSCHANGING 70
#define WM_WININICHANGE 26
#define WM_KEYFIRST 256
-#if _WIN32_WINNT >= 0x0501
-#define WM_KEYLAST 265
-#define WM_UNICHAR 265
-#define UNICODE_NOCHAR 0xffff
-#else
#define WM_KEYLAST 264
-#endif
+
#define WM_SYNCPAINT 136
#define WM_MOUSEACTIVATE 33
#define WM_MOUSEMOVE 512
#define WM_MBUTTONDBLCLK 521
#define WM_MOUSEWHEEL 522
#define WM_MOUSEFIRST 512
-#if (_WIN32_WINNT >= 0x0500)
-#define WM_XBUTTONDOWN 523
-#define WM_XBUTTONUP 524
-#define WM_XBUTTONDBLCLK 525
-#define WM_MOUSELAST 525
-#else
#define WM_MOUSELAST 522
-#endif
+
#define WM_MOUSEHOVER 0x2A1
#define WM_MOUSELEAVE 0x2A3
-#if (_WIN32_WINNT >= 0x0400)
#define WHEEL_DELTA 120
#define GET_WHEEL_DELTA_WPARAM(wparam) ((short)HIWORD (wparam))
#define WHEEL_PAGESCROLL UINT_MAX
-#endif
-#if (_WIN32_WINNT >= 0x0601)
-#define WM_TOUCHMOVE 576
-#define WM_TOUCHDOWN 577
-#define WM_TOUCHUP 578
-#endif
+
#define BM_CLICK 245
#define BM_GETCHECK 240
#define BM_GETIMAGE 246
#define CB_SETLOCALE 345
#define CB_SETTOPINDEX 348
#define CB_SHOWDROPDOWN 335
-#if (_WIN32_WINNT >= 0x0501)
-#define CB_SETMINVISIBLE 0x1701
-#define CB_GETMINVISIBLE 0x1702
-#endif
+
#define CBN_CLOSEUP 8
#define CBN_DBLCLK 2
#define CBN_DROPDOWN 7
#define EM_SETTABSTOPS 203
#define EM_SETWORDBREAKPROC 208
#define EM_UNDO 199
-#if (WINVER >= 0x0500)
-#define EM_GETIMESTATUS 217
-#define EM_SETIMESTATUS 216
-#endif
+
#define EN_CHANGE 768
#define EN_ERRSPACE 1280
#define EN_HSCROLL 1537
#define VK_RBUTTON 2
#define VK_CANCEL 3
#define VK_MBUTTON 4
-#if (_WIN32_WINNT >= 0x0500)
-#define VK_XBUTTON1 5
-#define VK_XBUTTON2 6
-#endif
+
#define VK_BACK 8
#define VK_TAB 9
#define VK_CLEAR 12
#define VK_RCONTROL 0xA3
#define VK_LMENU 0xA4
#define VK_RMENU 0xA5
-#if (_WIN32_WINNT >= 0x0500)
-#define VK_BROWSER_BACK 0xA6
-#define VK_BROWSER_FORWARD 0xA7
-#define VK_BROWSER_REFRESH 0xA8
-#define VK_BROWSER_STOP 0xA9
-#define VK_BROWSER_SEARCH 0xAA
-#define VK_BROWSER_FAVORITES 0xAB
-#define VK_BROWSER_HOME 0xAC
-#define VK_VOLUME_MUTE 0xAD
-#define VK_VOLUME_DOWN 0xAE
-#define VK_VOLUME_UP 0xAF
-#define VK_MEDIA_NEXT_TRACK 0xB0
-#define VK_MEDIA_PREV_TRACK 0xB1
-#define VK_MEDIA_STOP 0xB2
-#define VK_MEDIA_PLAY_PAUSE 0xB3
-#define VK_LAUNCH_MAIL 0xB4
-#define VK_LAUNCH_MEDIA_SELECT 0xB5
-#define VK_LAUNCH_APP1 0xB6
-#define VK_LAUNCH_APP2 0xB7
-#endif
+
#define VK_OEM_1 0xBA
-#if (_WIN32_WINNT >= 0x0500)
-#define VK_OEM_PLUS 0xBB
-#define VK_OEM_COMMA 0xBC
-#define VK_OEM_MINUS 0xBD
-#define VK_OEM_PERIOD 0xBE
-#endif
+
#define VK_OEM_2 0xBF
#define VK_OEM_3 0xC0
#define VK_OEM_4 0xDB
#define VK_OEM_6 0xDD
#define VK_OEM_7 0xDE
#define VK_OEM_8 0xDF
-#if (_WIN32_WINNT >= 0x0500)
-#define VK_OEM_102 0xE2
-#endif
+
#define VK_PROCESSKEY 0xE5
-#if (_WIN32_WINNT >= 0x0500)
-#define VK_PACKET 0xE7
-#endif
+
#define VK_ATTN 0xF6
#define VK_CRSEL 0xF7
#define VK_EXSEL 0xF8
#define MK_SHIFT 4
#define MK_CONTROL 8
#define MK_MBUTTON 16
-#if(_WIN32_WINNT >= 0x0500)
-#define MK_XBUTTON1 32
-#define MK_XBUTTON2 64
-#endif
+
#define TPM_CENTERALIGN 4
#define TPM_LEFTALIGN 0
#define TPM_RIGHTALIGN 8
#define TPM_BOTTOMALIGN 32
#define TPM_NONOTIFY 128
#define TPM_RETURNCMD 256
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-#define TPM_RECURSE 1
-#endif
+
#define HELP_COMMAND 0x102
#define HELP_CONTENTS 3
#define HELP_CONTEXT 1
#define SW_SCROLLCHILDREN 1
#define SW_INVALIDATE 2
#define SW_ERASE 4
-#if (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500)
-#define SW_SMOOTHSCROLL 0x0010
-#endif /* (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500) */
+
#define SC_SIZE 0xF000
#define SC_MOVE 0xF010
#define SC_MINIMIZE 0xF020
#define WA_CLICKACTIVE 2
#define ICON_SMALL 0
#define ICON_BIG 1
-#if (_WIN32_WINNT >= 0x0501)
-#define ICON_SMALL2 2
-#endif
+
#define HBMMENU_CALLBACK ((HBITMAP) -1)
#define HBMMENU_SYSTEM ((HBITMAP)1)
#define HBMMENU_MBAR_RESTORE ((HBITMAP)2)
#define LLKHF_INJECTED 0x00000010
#define LLKHF_ALTDOWN (KF_ALTDOWN >> 8)
#define LLKHF_UP (KF_UP >> 8)
-#if (WINVER >= 0x0500)
-#define FLASHW_STOP 0
-#define FLASHW_CAPTION 1
-#define FLASHW_TRAY 2
-#define FLASHW_ALL (FLASHW_CAPTION|FLASHW_TRAY)
-#define FLASHW_TIMER 4
-#define FLASHW_TIMERNOFG 12
-#endif /* (WINVER >= 0x0500) */
+
#define CURSOR_SHOWING 0x00000001
#define WS_ACTIVECAPTION 0x00000001
-#if (_WIN32_WINNT >= 0x0403)
-#define INPUT_MOUSE 0x00000000
-#define INPUT_KEYBOARD 0x00000001
-#define INPUT_HARDWARE 0x00000002
-#endif /* (_WIN32_WINNT >= 0x0403) */
-#if (WINVER >= 0x0400)
+
#define ENDSESSION_LOGOFF 0x80000000
-#endif
-#if (WINVER >= 0x0500)
-#define CHILDID_SELF 0
-#define OBJID_WINDOW 0x00000000
-#define OBJID_SYSMENU 0xFFFFFFFF
-#define OBJID_TITLEBAR 0xFFFFFFFE
-#define OBJID_MENU 0xFFFFFFFD
-#define OBJID_CLIENT 0xFFFFFFFC
-#define OBJID_VSCROLL 0xFFFFFFFB
-#define OBJID_HSCROLL 0xFFFFFFFA
-#define OBJID_SIZEGRIP 0xFFFFFFF9
-#define OBJID_CARET 0xFFFFFFF8
-#define OBJID_CURSOR 0xFFFFFFF7
-#define OBJID_ALERT 0xFFFFFFF6
-#define OBJID_SOUND 0xFFFFFFF5
-#define GUI_CARETBLINKING 0x00000001
-#define GUI_INMOVESIZE 0x00000002
-#define GUI_INMENUMODE 0x00000004
-#define GUI_SYSTEMMENUMODE 0x00000008
-#define GUI_POPUPMENUMODE 0x00000010
-#if (_WIN32_WINNT >= 0x0501)
-#define GUI_16BITTASK 0x00000020
-#endif
-#define WINEVENT_OUTOFCONTEXT 0x0000
-#define WINEVENT_SKIPOWNTHREAD 0x0001
-#define WINEVENT_SKIPOWNPROCESS 0x0002
-#define WINEVENT_INCONTEXT 0x0004
-#define AW_HOR_POSITIVE 0x00000001
-#define AW_HOR_NEGATIVE 0x00000002
-#define AW_VER_POSITIVE 0x00000004
-#define AW_VER_NEGATIVE 0x00000008
-#define AW_CENTER 0x00000010
-#define AW_HIDE 0x00010000
-#define AW_ACTIVATE 0x00020000
-#define AW_SLIDE 0x00040000
-#define AW_BLEND 0x00080000
-#define DEVICE_NOTIFY_WINDOW_HANDLE 0x00000000
-#define DEVICE_NOTIFY_SERVICE_HANDLE 0x00000001
-#if (_WIN32_WINNT >= 0x0501)
-#define DEVICE_NOTIFY_ALL_INTERFACE_CLASSES 0x00000004
-#endif
-#define EVENT_MIN 0x00000001
-#define EVENT_SYSTEM_SOUND 0x00000001
-#define EVENT_SYSTEM_ALERT 0x00000002
-#define EVENT_SYSTEM_FOREGROUND 0x00000003
-#define EVENT_SYSTEM_MENUSTART 0x00000004
-#define EVENT_SYSTEM_MENUEND 0x00000005
-#define EVENT_SYSTEM_MENUPOPUPSTART 0x00000006
-#define EVENT_SYSTEM_MENUPOPUPEND 0x00000007
-#define EVENT_SYSTEM_CAPTURESTART 0x00000008
-#define EVENT_SYSTEM_CAPTUREEND 0x00000009
-#define EVENT_SYSTEM_MOVESIZESTART 0x0000000a
-#define EVENT_SYSTEM_MOVESIZEEND 0x0000000b
-#define EVENT_SYSTEM_CONTEXTHELPSTART 0x0000000c
-#define EVENT_SYSTEM_CONTEXTHELPEND 0x0000000d
-#define EVENT_SYSTEM_DRAGDROPSTART 0x0000000e
-#define EVENT_SYSTEM_DRAGDROPEND 0x0000000f
-#define EVENT_SYSTEM_DIALOGSTART 0x00000010
-#define EVENT_SYSTEM_DIALOGEND 0x00000011
-#define EVENT_SYSTEM_SCROLLINGSTART 0x00000012
-#define EVENT_SYSTEM_SCROLLINGEND 0x00000013
-#define EVENT_SYSTEM_SWITCHSTART 0x00000014
-#define EVENT_SYSTEM_SWITCHEND 0x00000015
-#define EVENT_SYSTEM_MINIMIZESTART 0x00000016
-#define EVENT_SYSTEM_MINIMIZEEND 0x00000017
-#define EVENT_OBJECT_CREATE 0x00008000
-#define EVENT_OBJECT_DESTROY 0x00008001
-#define EVENT_OBJECT_SHOW 0x00008002
-#define EVENT_OBJECT_HIDE 0x00008003
-#define EVENT_OBJECT_REORDER 0x00008004
-#define EVENT_OBJECT_FOCUS 0x00008005
-#define EVENT_OBJECT_SELECTION 0x00008006
-#define EVENT_OBJECT_SELECTIONADD 0x00008007
-#define EVENT_OBJECT_SELECTIONREMOVE 0x00008008
-#define EVENT_OBJECT_SELECTIONWITHIN 0x00008009
-#define EVENT_OBJECT_STATECHANGE 0x0000800a
-#define EVENT_OBJECT_LOCATIONCHANGE 0x0000800b
-#define EVENT_OBJECT_NAMECHANGE 0x0000800c
-#define EVENT_OBJECT_DESCRIPTIONCHANGE 0x0000800d
-#define EVENT_OBJECT_VALUECHANGE 0x0000800e
-#define EVENT_OBJECT_PARENTCHANGE 0x0000800f
-#define EVENT_OBJECT_HELPCHANGE 0x00008010
-#define EVENT_OBJECT_DEFACTIONCHANGE 0x00008011
-#define EVENT_OBJECT_ACCELERATORCHANGE 0x00008012
-#if (_WIN32_WINNT >= 0x0501)
-#define EVENT_CONSOLE_CARET 0x00004001
-#define CONSOLE_CARET_SELECTION 0x00000001
-#define CONSOLE_CARET_VISIBLE 0x00000002
-#define EVENT_CONSOLE_UPDATE_REGION 0x00004002
-#define EVENT_CONSOLE_UPDATE_SIMPLE 0x00004003
-#define EVENT_CONSOLE_UPDATE_SCROLL 0x00004004
-#define EVENT_CONSOLE_LAYOUT 0x00004005
-#define EVENT_CONSOLE_START_APPLICATION 0x00004006
-#define CONSOLE_APPLICATION_16BIT 0x00000001
-#define EVENT_CONSOLE_END_APPLICATION 0x00004007
-#endif /* (_WIN32_WINNT >= 0x0501) */
-#define EVENT_MAX 0x7fffffff
-#endif /* (WINVER >= 0x0500) */
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
-#define ASFW_ANY ((DWORD)-1)
-#define LSFW_LOCK 1
-#define LSFW_UNLOCK 2
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-#define LWA_COLORKEY 0x01
-#define LWA_ALPHA 0x02
-#define ULW_COLORKEY 0x01
-#define ULW_ALPHA 0x02
-#define ULW_OPAQUE 0x04
-#endif
+
#define GA_PARENT 1
#define GA_ROOT 2
#define GA_ROOTOWNER 3
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-#define MONITOR_DEFAULTTONULL 0
-#define MONITOR_DEFAULTTOPRIMARY 1
-#define MONITOR_DEFAULTTONEAREST 2
-#define MONITORINFOF_PRIMARY 1
-#define EDS_RAWMODE 0x00000002
-#define ISMEX_NOSEND 0x00000000
-#define ISMEX_CALLBACK 0x00000004
-#define ISMEX_NOTIFY 0x00000002
-#define ISMEX_REPLIED 0x00000008
-#define ISMEX_SEND 0x00000001
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-#define GR_GDIOBJECTS 0
-#define GR_USEROBJECTS 1
-#endif
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
-#define GMMP_USE_DISPLAY_POINTS 1
-#define GMMP_USE_HIGH_RESOLUTION_POINTS 2
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-#define XBUTTON1 0x0001
-#define XBUTTON2 0x0002
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-#define FE_FONTSMOOTHINGSTANDARD 0x0001
-#define FE_FONTSMOOTHINGCLEARTYPE 0x0002
-#define PW_CLIENTONLY 0x00000001
-#define RIM_INPUT 0x00000000
-#define RIM_INPUTSINK 0x00000001
-#define RIM_TYPEMOUSE 0x00000000
-#define RIM_TYPEKEYBOARD 0x00000001
-#define RIM_TYPEHID 0x00000002
-#define MOUSE_MOVE_RELATIVE 0x00000000
-#define MOUSE_MOVE_ABSOLUTE 0x00000001
-#define MOUSE_VIRTUAL_DESKTOP 0x00000002
-#define MOUSE_ATTRIBUTES_CHANGED 0x00000004
-#define RI_MOUSE_LEFT_BUTTON_DOWN 0x0001
-#define RI_MOUSE_LEFT_BUTTON_UP 0x0002
-#define RI_MOUSE_RIGHT_BUTTON_DOWN 0x0004
-#define RI_MOUSE_RIGHT_BUTTON_UP 0x0008
-#define RI_MOUSE_MIDDLE_BUTTON_DOWN 0x0010
-#define RI_MOUSE_MIDDLE_BUTTON_UP 0x0020
-#define RI_MOUSE_BUTTON_1_DOWN RI_MOUSE_LEFT_BUTTON_DOWN
-#define RI_MOUSE_BUTTON_1_UP RI_MOUSE_LEFT_BUTTON_UP
-#define RI_MOUSE_BUTTON_2_DOWN RI_MOUSE_RIGHT_BUTTON_DOWN
-#define RI_MOUSE_BUTTON_2_UP RI_MOUSE_RIGHT_BUTTON_UP
-#define RI_MOUSE_BUTTON_3_DOWN RI_MOUSE_MIDDLE_BUTTON_DOWN
-#define RI_MOUSE_BUTTON_3_UP RI_MOUSE_MIDDLE_BUTTON_UP
-#define RI_MOUSE_BUTTON_4_DOWN 0x0040
-#define RI_MOUSE_BUTTON_4_UP 0x0080
-#define RI_MOUSE_BUTTON_5_DOWN 0x0100
-#define RI_MOUSE_BUTTON_5_UP 0x0200
-#define RI_MOUSE_WHEEL 0x0400
-#define KEYBOARD_OVERRUN_MAKE_CODE 0x00ff
-#define RI_KEY_MAKE 0x0000
-#define RI_KEY_BREAK 0x0001
-#define RI_KEY_E0 0x0002
-#define RI_KEY_E1 0x0004
-#define RI_KEY_TERMSRV_SET_LED 0x0008
-#define RI_KEY_TERMSRV_SHADOW 0x0010
-#define RID_INPUT 0x10000003
-#define RID_HEADER 0x10000005
-#define RIDI_PREPARSEDDATA 0x20000005
-#define RIDI_DEVICENAME 0x20000007
-#define RIDI_DEVICEINFO 0x2000000b
-#define RIDEV_REMOVE 0x00000001
-#define RIDEV_EXCLUDE 0x00000010
-#define RIDEV_PAGEONLY 0x00000020
-#define RIDEV_NOLEGACY 0x00000030
-#define RIDEV_INPUTSINK 0x00000100
-#define RIDEV_CAPTUREMOUSE 0x00000200
-#define RIDEV_NOHOTKEYS 0x00000200
-#define RIDEV_APPKEYS 0x00000400
-#endif
-
-#if (_WIN32_WINNT >= 0x0601)
-#define TOUCHEVENTF_DOWN 0x0001
-#define TOUCHEVENTF_INRANGE 0x0008
-#define TOUCHEVENTF_MOVE 0x0002
-#define TOUCHEVENTF_NOCOALESCE 0x0020
-#define TOUCHEVENTF_PALM 0x0080
-#define TOUCHEVENTF_PEN 0x0040
-#define TOUCHEVENTF_PRIMARY 0x0010
-#define TOUCHEVENTF_UP 0x0004
-
-#define TOUCHEVENTMASKF_CONTACTAREA 0x0004
-#define TOUCHEVENTMASKF_EXTRAINFO 0x0002
-#define TOUCHEVENTMASKF_TIMEFROMSYSTEM 0x0001
-#endif
#define MAPVK_VK_TO_VSC 0
#define MAPVK_VSC_TO_VK 1
DWORD dwFlags;
LPWSTR lpszDefaultScheme;
} HIGHCONTRASTW,*LPHIGHCONTRASTW;
+
#ifndef NOGDI
typedef struct tagICONMETRICSA {
UINT cbSize;
LOGFONTW lfFont;
} ICONMETRICSW,*LPICONMETRICSW;
#endif /* NOGDI */
+
typedef struct tagMINIMIZEDMETRICS {
UINT cbSize;
int iWidth;
DWORD dwReserved1;
DWORD dwReserved2;
} MOUSEKEYS,*LPMOUSEKEYS;
+
#ifndef NOGDI
typedef struct tagNONCLIENTMETRICSA {
UINT cbSize;
LOGFONTW lfMessageFont;
} NONCLIENTMETRICSW,*LPNONCLIENTMETRICSW;
#endif
+
typedef struct tagSERIALKEYSA {
UINT cbSize;
DWORD dwFlags;
int reserved;
DWORD rgstate[CCHILDREN_SCROLLBAR+1];
} SCROLLBARINFO,*PSCROLLBARINFO,*LPSCROLLBARINFO;
-#if (_WIN32_WINDOWS >= 0x0410)
-#define CCHILDREN_TITLEBAR 5
-typedef struct tagTITLEBARINFO {
- DWORD cbSize;
- RECT rcTitleBar;
- DWORD rgstate[CCHILDREN_TITLEBAR+1];
-} TITLEBARINFO,*PTITLEBARINFO,*LPTITLEBARINFO;
-#endif
+
typedef struct tagWINDOWINFO {
DWORD cbSize;
RECT rcWindow;
DWORD dwFlags;
} MONITORINFO,*LPMONITORINFO;
#define CCHDEVICENAME 32
+
#ifdef __cplusplus
typedef struct tagMONITORINFOEXA : public tagMONITORINFO
{
WCHAR szDevice[CCHDEVICENAME];
} MONITORINFOEXW, *LPMONITORINFOEXW;
#else
+
typedef struct tagMONITORINFOEXA {
DWORD cbSize;
RECT rcMonitor;
WCHAR szDevice[CCHDEVICENAME];
} MONITORINFOEXW,*LPMONITORINFOEXW;
#endif /* __cplusplus */
+
typedef struct tagKBDLLHOOKSTRUCT {
DWORD vkCode;
DWORD scanCode;
DWORD time;
DWORD dwExtraInfo;
} KBDLLHOOKSTRUCT,*LPKBDLLHOOKSTRUCT,*PKBDLLHOOKSTRUCT;
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-typedef struct {
- UINT cbSize;
- HWND hwnd;
- DWORD dwFlags;
- UINT uCount;
- DWORD dwTimeout;
-} FLASHWINFO,*PFLASHWINFO;
-#endif /* (WINVER >= 0x0500 || _WIN32_WINDOWS >= 0x0410) */
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
-typedef struct tagMOUSEMOVEPOINT {
- int x;
- int y;
- DWORD time;
- ULONG_PTR dwExtraInfo;
-} MOUSEMOVEPOINT,*PMOUSEMOVEPOINT,*LPMOUSEMOVEPOINT;
-#endif
-#if (_WIN32_WINNT >= 0x0403)
-typedef struct tagMOUSEINPUT {
- LONG dx;
- LONG dy;
- DWORD mouseData;
- DWORD dwFlags;
- DWORD time;
- ULONG_PTR dwExtraInfo;
-} MOUSEINPUT,*PMOUSEINPUT;
-typedef struct tagKEYBDINPUT {
- WORD wVk;
- WORD wScan;
- DWORD dwFlags;
- DWORD time;
- ULONG_PTR dwExtraInfo;
-} KEYBDINPUT,*PKEYBDINPUT;
-typedef struct tagHARDWAREINPUT {
- DWORD uMsg;
- WORD wParamL;
- WORD wParamH;
-} HARDWAREINPUT,*PHARDWAREINPUT;
-typedef struct tagINPUT {
- DWORD type;
- _ANONYMOUS_UNION union {
- MOUSEINPUT mi;
- KEYBDINPUT ki;
- HARDWAREINPUT hi;
- } DUMMYUNIONNAME;
-} INPUT,*PINPUT,*LPINPUT;
-#endif /* (_WIN32_WINNT >= 0x0403) */
-#if (_WIN32_WINNT >= 0x0601)
-typedef struct _TOUCHINPUT {
- LONG x;
- LONG y;
- HANDLE hSource;
- DWORD dwID;
- DWORD dwFlags;
- DWORD dwMask;
- DWORD dwTime;
- ULONG_PTR dwExtraInfo;
- DWORD cxContact;
- DWORD cyContact;
-} TOUCHINPUT,
- *PTOUCHINPUT;
-#endif /* (_WIN32_WINNT >= 0x0601) */
-#if (WINVER >= 0x0500)
-typedef struct tagGUITHREADINFO {
- DWORD cbSize;
- DWORD flags;
- HWND hwndActive;
- HWND hwndFocus;
- HWND hwndCapture;
- HWND hwndMenuOwner;
- HWND hwndMoveSize;
- HWND hwndCaret;
- RECT rcCaret;
-} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
-typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
-#endif /* (WINVER >= 0x0500) */
-#if (_WIN32_WINNT >= 0x0501)
-typedef struct {
- UINT cbSize;
- HDESK hdesk;
- HWND hwnd;
- LUID luid;
-} BSMINFO,*PBSMINFO;
-DECLARE_HANDLE(HRAWINPUT);
-typedef struct tagRAWINPUTHEADER {
- DWORD dwType;
- DWORD dwSize;
- HANDLE hDevice;
- WPARAM wParam;
-} RAWINPUTHEADER,*PRAWINPUTHEADER;
-typedef struct tagRAWMOUSE {
- USHORT usFlags;
- _ANONYMOUS_UNION union {
- ULONG ulButtons;
- _ANONYMOUS_STRUCT struct {
- USHORT usButtonFlags;
- USHORT usButtonData;
- };
- };
- ULONG ulRawButtons;
- LONG lLastX;
- LONG lLastY;
- ULONG ulExtraInformation;
-} RAWMOUSE,*PRAWMOUSE,*LPRAWMOUSE;
-typedef struct tagRAWKEYBOARD {
- USHORT MakeCode;
- USHORT Flags;
- USHORT Reserved;
- USHORT VKey;
- UINT Message;
- ULONG ExtraInformation;
-} RAWKEYBOARD,*PRAWKEYBOARD,*LPRAWKEYBOARD;
-typedef struct tagRAWHID {
- DWORD dwSizeHid;
- DWORD dwCount;
- BYTE bRawData;
-} RAWHID,*PRAWHID,*LPRAWHID;
-typedef struct tagRAWINPUT {
- RAWINPUTHEADER header;
- union {
- RAWMOUSE mouse;
- RAWKEYBOARD keyboard;
- RAWHID hid;
- } data;
-} RAWINPUT,*PRAWINPUT,*LPRAWINPUT;
-typedef struct tagRAWINPUTDEVICE {
- USHORT usUsagePage;
- USHORT usUsage;
- DWORD dwFlags;
- HWND hwndTarget;
-} RAWINPUTDEVICE,*PRAWINPUTDEVICE,*LPRAWINPUTDEVICE;
-typedef const RAWINPUTDEVICE *PCRAWINPUTDEVICE;
-typedef struct tagRAWINPUTDEVICELIST {
- HANDLE hDevice;
- DWORD dwType;
-} RAWINPUTDEVICELIST,*PRAWINPUTDEVICELIST;
-typedef struct tagRID_DEVICE_INFO_MOUSE {
- DWORD dwId;
- DWORD dwNumberOfButtons;
- DWORD dwSampleRate;
- BOOL fHasHorizontalWheel;
-} RID_DEVICE_INFO_MOUSE, *PRID_DEVICE_INFO_MOUSE;
-typedef struct tagRID_DEVICE_INFO_KEYBOARD {
- DWORD dwType;
- DWORD dwSubType;
- DWORD dwKeyboardMode;
- DWORD dwNumberOfFunctionKeys;
- DWORD dwNumberOfIndicators;
- DWORD dwNumberOfKeysTotal;
-} RID_DEVICE_INFO_KEYBOARD, *PRID_DEVICE_INFO_KEYBOARD;
-typedef struct tagRID_DEVICE_INFO_HID {
- DWORD dwVendorId;
- DWORD dwProductId;
- DWORD dwVersionNumber;
- USHORT usUsagePage;
- USHORT usUsage;
-} RID_DEVICE_INFO_HID, *PRID_DEVICE_INFO_HID;
-typedef struct tagRID_DEVICE_INFO {
- DWORD cbSize;
- DWORD dwType;
- _ANONYMOUS_UNION union {
- RID_DEVICE_INFO_MOUSE mouse;
- RID_DEVICE_INFO_KEYBOARD keyboard;
- RID_DEVICE_INFO_HID hid;
- } DUMMYUNIONNAME;
-} RID_DEVICE_INFO, *PRID_DEVICE_INFO, *LPRID_DEVICE_INFO;
-#endif /* (_WIN32_WINNT >= 0x0501) */
-
+
typedef struct {
POINT pt;
DWORD mouseData;
typedef const GUID *LPCGUID;
#endif
-#if (_WIN32_WINNT >= 0x0600)
-typedef HANDLE HPOWERNOTIFY;
-
-typedef struct {
- GUID PowerSetting;
- DWORD DataLength;
- UCHAR Data[1];
-} POWERBROADCAST_SETTING, *PPOWERBROADCAST_SETTING;
-
-extern const GUID GUID_POWERSCHEME_PERSONALITY;
-extern const GUID GUID_MIN_POWER_SAVINGS;
-extern const GUID GUID_MAX_POWER_SAVINGS;
-extern const GUID GUID_TYPICAL_POWER_SAVINGS;
-extern const GUID GUID_ACDC_POWER_SOURCE;
-extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
-extern const GUID GUID_IDLE_BACKGROUND_TASK;
-extern const GUID GUID_SYSTEM_AWAYMODE;
-extern const GUID GUID_MONITOR_POWER_ON;
-#endif
-
WINUSERAPI HKL WINAPI ActivateKeyboardLayout(HKL,UINT);
WINUSERAPI BOOL WINAPI AdjustWindowRect(LPRECT,DWORD,BOOL);
WINUSERAPI BOOL WINAPI AdjustWindowRectEx(LPRECT,DWORD,BOOL,DWORD);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI AnimateWindow(HWND,DWORD,DWORD);
-#endif /* (_WIN32_WINNT >= 0x0500) */
+
WINUSERAPI BOOL WINAPI AnyPopup(void);
WINUSERAPI BOOL WINAPI AppendMenuA(HMENU,UINT,UINT_PTR,LPCSTR);
WINUSERAPI BOOL WINAPI AppendMenuW(HMENU,UINT,UINT_PTR,LPCWSTR);
WINUSERAPI HDC WINAPI BeginPaint(HWND,LPPAINTSTRUCT);
WINUSERAPI BOOL WINAPI BringWindowToTop(HWND);
WINUSERAPI long WINAPI BroadcastSystemMessage(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
-#if (_WIN32_WINNT >= 0x0400)
WINUSERAPI long WINAPI BroadcastSystemMessageA(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
WINUSERAPI long WINAPI BroadcastSystemMessageW(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
-#endif /* (_WIN32_WINNT >= 0x0400) */
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI long WINAPI BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
-WINUSERAPI long WINAPI BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
-#endif /* (_WIN32_WINNT >= 0x0501) */
+
WINUSERAPI BOOL WINAPI CallMsgFilterA(LPMSG,INT);
WINUSERAPI BOOL WINAPI CallMsgFilterW(LPMSG,INT);
WINUSERAPI LRESULT WINAPI CallNextHookEx(HHOOK,int,WPARAM,LPARAM);
WINUSERAPI LRESULT WINAPI CallWindowProcW(WNDPROC,HWND,UINT,WPARAM,LPARAM);
WINUSERAPI WORD WINAPI CascadeWindows(HWND,UINT,LPCRECT,UINT,const HWND*);
WINUSERAPI BOOL WINAPI ChangeClipboardChain(HWND,HWND);
+
#ifndef NOGDI
WINUSERAPI LONG WINAPI ChangeDisplaySettingsA(PDEVMODEA,DWORD);
WINUSERAPI LONG WINAPI ChangeDisplaySettingsW(PDEVMODEW,DWORD);
WINUSERAPI LONG WINAPI ChangeDisplaySettingsExA(LPCSTR,LPDEVMODEA,HWND,DWORD,LPVOID);
WINUSERAPI LONG WINAPI ChangeDisplaySettingsExW(LPCWSTR,LPDEVMODEW,HWND,DWORD,LPVOID);
#endif
+
WINUSERAPI BOOL WINAPI ChangeMenuA(HMENU,UINT,LPCSTR,UINT,UINT);
WINUSERAPI BOOL WINAPI ChangeMenuW(HMENU,UINT,LPCWSTR,UINT,UINT);
WINUSERAPI LPSTR WINAPI CharLowerA(LPSTR);
WINUSERAPI HACCEL WINAPI CreateAcceleratorTableW(LPACCEL,int);
WINUSERAPI BOOL WINAPI CreateCaret(HWND,HBITMAP,int,int);
WINUSERAPI HCURSOR WINAPI CreateCursor(HINSTANCE,int,int,int,int,PCVOID,PCVOID);
+
#ifndef NOGDI
WINUSERAPI HDESK WINAPI CreateDesktopA(LPCSTR,LPCSTR,LPDEVMODEA,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
WINUSERAPI HDESK WINAPI CreateDesktopW(LPCWSTR,LPCWSTR,LPDEVMODEW,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
#endif
+
#define CreateDialogA(h,n,w,f) CreateDialogParamA(h,n,w,f,0)
#define CreateDialogW(h,n,w,f) CreateDialogParamW(h,n,w,f,0)
#define CreateDialogIndirectA(h,t,w,f) CreateDialogIndirectParamA(h,t,w,f,0)
#define DefHookProc(c,p,lp,h) CallNextHookEx((HHOOK)*h,c,p,lp)
WINUSERAPI LRESULT WINAPI DefMDIChildProcA(HWND,UINT,WPARAM,LPARAM);
WINUSERAPI LRESULT WINAPI DefMDIChildProcW(HWND,UINT,WPARAM,LPARAM);
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI LRESULT WINAPI DefRawInputProc(PRAWINPUT*,INT,UINT);
-#endif
+
WINUSERAPI LRESULT WINAPI DefWindowProcA(HWND,UINT,WPARAM,LPARAM);
WINUSERAPI LRESULT WINAPI DefWindowProcW(HWND,UINT,WPARAM,LPARAM);
WINUSERAPI BOOL WINAPI DeleteMenu(HMENU,UINT,UINT);
#define DialogBoxIndirectW(i,t,p,f) DialogBoxIndirectParamW(i,t,p,f,0)
WINUSERAPI int WINAPI DialogBoxIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
WINUSERAPI int WINAPI DialogBoxIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
+
#ifdef _WIN32_WCE
extern int DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
extern int DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
WINUSERAPI int WINAPI DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
WINUSERAPI int WINAPI DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
#endif
+
WINUSERAPI LONG WINAPI DispatchMessageA(const MSG*);
WINUSERAPI LONG WINAPI DispatchMessageW(const MSG*);
WINUSERAPI int WINAPI DlgDirListA(HWND,LPSTR,int,int,UINT);
WINUSERAPI BOOL WINAPI EndDialog(HWND,int);
WINUSERAPI BOOL WINAPI EndMenu(void);
WINUSERAPI BOOL WINAPI EndPaint(HWND,const PAINTSTRUCT*);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI EndTask(HWND,BOOL,BOOL);
-#endif
+
WINUSERAPI BOOL WINAPI EnumChildWindows(HWND,ENUMWINDOWSPROC,LPARAM);
WINUSERAPI UINT WINAPI EnumClipboardFormats(UINT);
WINUSERAPI BOOL WINAPI EnumDesktopsA(HWINSTA,DESKTOPENUMPROCA,LPARAM);
WINUSERAPI BOOL WINAPI EnumDesktopsW(HWINSTA,DESKTOPENUMPROCW,LPARAM);
WINUSERAPI BOOL WINAPI EnumDesktopWindows(HDESK,ENUMWINDOWSPROC,LPARAM);
WINUSERAPI BOOL WINAPI EnumDisplayMonitors(HDC,LPCRECT,MONITORENUMPROC,LPARAM);
+
#ifndef NOGDI
WINUSERAPI BOOL WINAPI EnumDisplaySettingsA(LPCSTR,DWORD,PDEVMODEA);
WINUSERAPI BOOL WINAPI EnumDisplaySettingsW(LPCWSTR,DWORD,PDEVMODEW);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINUSERAPI BOOL WINAPI EnumDisplaySettingsExA(LPCSTR,DWORD,LPDEVMODEA,DWORD);
-WINUSERAPI BOOL WINAPI EnumDisplaySettingsExW(LPCWSTR,DWORD,LPDEVMODEW,DWORD);
-#endif
+
WINUSERAPI BOOL WINAPI EnumDisplayDevicesA(LPCSTR,DWORD,PDISPLAY_DEVICEA,DWORD);
WINUSERAPI BOOL WINAPI EnumDisplayDevicesW(LPCWSTR,DWORD,PDISPLAY_DEVICEW,DWORD);
#endif
+
WINUSERAPI int WINAPI EnumPropsA(HWND,PROPENUMPROCA);
WINUSERAPI int WINAPI EnumPropsW(HWND,PROPENUMPROCW);
WINUSERAPI int WINAPI EnumPropsExA(HWND,PROPENUMPROCEXA,LPARAM);
WINUSERAPI HWND WINAPI FindWindowExW(HWND,HWND,LPCWSTR,LPCWSTR);
WINUSERAPI HWND WINAPI FindWindowW(LPCWSTR,LPCWSTR);
WINUSERAPI BOOL WINAPI FlashWindow(HWND,BOOL);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINUSERAPI BOOL WINAPI FlashWindowEx(PFLASHWINFO);
-#endif
+
int WINAPI FrameRect(HDC,LPCRECT,HBRUSH);
WINUSERAPI BOOL WINAPI FrameRgn(HDC,HRGN,HBRUSH,int,int);
WINUSERAPI HWND WINAPI GetActiveWindow(void);
WINUSERAPI BOOL WINAPI GetClassInfoExW(HINSTANCE,LPCWSTR,LPWNDCLASSEXW);
WINUSERAPI DWORD WINAPI GetClassLongA(HWND,int);
WINUSERAPI DWORD WINAPI GetClassLongW(HWND,int);
+
#ifdef _WIN64
WINUSERAPI ULONG_PTR WINAPI GetClassLongPtrA(HWND,int);
WINUSERAPI ULONG_PTR WINAPI GetClassLongPtrW(HWND,int);
#define GetClassLongPtrA GetClassLongA
#define GetClassLongPtrW GetClassLongW
#endif
+
WINUSERAPI int WINAPI GetClassNameA(HWND,LPSTR,int);
WINUSERAPI int WINAPI GetClassNameW(HWND,LPWSTR,int);
WINUSERAPI WORD WINAPI GetClassWord(HWND,int);
WINUSERAPI int WINAPI GetClipboardFormatNameA(UINT,LPSTR,int);
WINUSERAPI int WINAPI GetClipboardFormatNameW(UINT,LPWSTR,int);
WINUSERAPI HWND WINAPI GetClipboardOwner(void);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINUSERAPI DWORD WINAPI GetClipboardSequenceNumber(void);
-#endif
+
HWND WINAPI GetClipboardViewer(void);
WINUSERAPI BOOL WINAPI GetClipCursor(LPRECT);
WINUSERAPI BOOL WINAPI GetCursorPos(LPPOINT);
WINUSERAPI UINT WINAPI GetDoubleClickTime(void);
WINUSERAPI HWND WINAPI GetFocus(void);
WINUSERAPI HWND WINAPI GetForegroundWindow(void);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI DWORD WINAPI GetGuiResources(HANDLE,DWORD);
-#endif
+
WINUSERAPI BOOL WINAPI GetIconInfo(HICON,PICONINFO);
WINUSERAPI BOOL WINAPI GetInputState(void);
WINUSERAPI UINT WINAPI GetKBCodePage(void);
WINUSERAPI LONG WINAPI GetMessageExtraInfo(void);
WINUSERAPI DWORD WINAPI GetMessagePos(void);
WINUSERAPI LONG WINAPI GetMessageTime(void);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
-WINUSERAPI int WINAPI GetMouseMovePointsEx(UINT,LPMOUSEMOVEPOINT,LPMOUSEMOVEPOINT,int,DWORD);
-#endif
+
WINUSERAPI HWND WINAPI GetNextDlgGroupItem(HWND,HWND,BOOL);
WINUSERAPI HWND WINAPI GetNextDlgTabItem(HWND,HWND,BOOL);
#define GetNextWindow(h,c) GetWindow(h,c)
WINUSERAPI int WINAPI GetPriorityClipboardFormat(UINT*,int);
WINUSERAPI HANDLE WINAPI GetPropA(HWND,LPCSTR);
WINUSERAPI HANDLE WINAPI GetPropW(HWND,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI UINT WINAPI GetRawInputBuffer(PRAWINPUT,PUINT,UINT);
-WINUSERAPI UINT WINAPI GetRawInputData(HRAWINPUT,UINT,LPVOID,PUINT,UINT);
-WINUSERAPI UINT WINAPI GetRawInputDeviceInfoA(HANDLE,UINT,LPVOID,PUINT);
-WINUSERAPI UINT WINAPI GetRawInputDeviceInfoW(HANDLE,UINT,LPVOID,PUINT);
-WINUSERAPI UINT WINAPI GetRawInputDeviceList(PRAWINPUTDEVICELIST,PUINT,UINT);
-WINUSERAPI UINT WINAPI GetRegisteredRawInputDevices(PRAWINPUTDEVICE,PUINT,UINT);
-#endif
+
WINUSERAPI DWORD WINAPI GetQueueStatus(UINT);
WINUSERAPI BOOL WINAPI GetScrollInfo(HWND,int,LPSCROLLINFO);
WINUSERAPI int WINAPI GetScrollPos(HWND,int);
WINUSERAPI BOOL WINAPI GetScrollRange(HWND,int,LPINT,LPINT);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI HWND WINAPI GetShellWindow(void);
-#endif
+
WINUSERAPI HMENU WINAPI GetSubMenu(HMENU,int);
WINUSERAPI DWORD WINAPI GetSysColor(int);
WINUSERAPI HBRUSH WINAPI GetSysColorBrush(int);
WINUSERAPI DWORD WINAPI GetTabbedTextExtentW(HDC,LPCWSTR,int,int,LPINT);
WINUSERAPI LONG WINAPI GetWindowLongA(HWND,int);
WINUSERAPI LONG WINAPI GetWindowLongW(HWND,int);
+
#ifdef _WIN64
WINUSERAPI LONG_PTR WINAPI GetWindowLongPtrA(HWND,int);
WINUSERAPI LONG_PTR WINAPI GetWindowLongPtrW(HWND,int);
#define GetWindowLongPtrA GetWindowLongA
#define GetWindowLongPtrW GetWindowLongW
#endif
+
WINUSERAPI HDESK WINAPI GetThreadDesktop(DWORD);
WINUSERAPI HWND WINAPI GetTopWindow(HWND);
WINUSERAPI BOOL WINAPI GetUpdateRect(HWND,LPRECT,BOOL);
WINUSERAPI BOOL WINAPI GetAltTabInfoW(HWND,int,PALTTABINFO,LPWSTR,UINT);
WINUSERAPI BOOL WINAPI GetComboBoxInfo(HWND,PCOMBOBOXINFO);
WINUSERAPI BOOL WINAPI GetCursorInfo(PCURSORINFO);
-#if (WINVER >= 0x0500)
-WINUSERAPI BOOL WINAPI GetGUIThreadInfo(DWORD,LPGUITHREADINFO);
-#endif
+
WINUSERAPI BOOL WINAPI GetLastInputInfo(PLASTINPUTINFO);
WINUSERAPI DWORD WINAPI GetListBoxInfo(HWND);
WINUSERAPI BOOL WINAPI GetMenuBarInfo(HWND,LONG,LONG,PMENUBARINFO);
WINUSERAPI BOOL WINAPI GetMenuInfo(HMENU,LPMENUINFO);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI GetProcessDefaultLayout(DWORD*);
-#endif
+
WINUSERAPI BOOL WINAPI GetScrollBarInfo(HWND,LONG,PSCROLLBARINFO);
-#if (_WIN32_WINDOWS >= 0x0410)
-WINUSERAPI BOOL WINAPI GetTitleBarInfo(HWND,PTITLEBARINFO);
-#endif
+
WINUSERAPI BOOL WINAPI GetWindowInfo(HWND,PWINDOWINFO);
WINUSERAPI BOOL WINAPI GetMonitorInfoA(HMONITOR,LPMONITORINFO);
WINUSERAPI BOOL WINAPI GetMonitorInfoW(HMONITOR,LPMONITORINFO);
WINUSERAPI BOOL WINAPI HiliteMenuItem(HWND,HMENU,UINT,UINT);
WINUSERAPI BOOL WINAPI InflateRect(LPRECT,int,int);
WINUSERAPI BOOL WINAPI InSendMessage(void);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINUSERAPI DWORD WINAPI InSendMessageEx(LPVOID);
-#endif
+
WINUSERAPI BOOL WINAPI InsertMenuA(HMENU,UINT,UINT,UINT,LPCSTR);
WINUSERAPI BOOL WINAPI InsertMenuW(HMENU,UINT,UINT,UINT,LPCWSTR);
WINUSERAPI BOOL WINAPI InsertMenuItemA(HMENU,UINT,BOOL,LPCMENUITEMINFOA);
WINUSERAPI BOOL WINAPI IsDialogMessageA(HWND,LPMSG);
WINUSERAPI BOOL WINAPI IsDialogMessageW(HWND,LPMSG);
WINUSERAPI UINT WINAPI IsDlgButtonChecked(HWND,int);
-#if(_WIN32_WINNT >= 0x0501)
-WINUSERAPI BOOL WINAPI IsGUIThread(BOOL);
-#endif
-#if(_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI IsHungAppWindow(HWND);
-#endif
+
WINUSERAPI BOOL WINAPI IsIconic(HWND);
WINUSERAPI BOOL WINAPI IsMenu(HMENU);
WINUSERAPI BOOL WINAPI IsRectEmpty(LPCRECT);
WINUSERAPI BOOL WINAPI IsWindowEnabled(HWND);
WINUSERAPI BOOL WINAPI IsWindowUnicode(HWND);
WINUSERAPI BOOL WINAPI IsWindowVisible(HWND);
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI BOOL WINAPI IsWinEventHookInstalled(DWORD);
-#endif
+
WINUSERAPI BOOL WINAPI IsZoomed(HWND);
WINUSERAPI VOID WINAPI keybd_event(BYTE,BYTE,DWORD,DWORD);
WINUSERAPI BOOL WINAPI KillTimer(HWND,UINT);
WINUSERAPI int WINAPI LoadStringA(HINSTANCE,UINT,LPSTR,int);
WINUSERAPI int WINAPI LoadStringW(HINSTANCE,UINT,LPWSTR,int);
WINUSERAPI BOOL WINAPI LockWindowUpdate(HWND);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI LockWorkStation(void);
-#endif
+
WINUSERAPI int WINAPI LookupIconIdFromDirectory(PBYTE,BOOL);
WINUSERAPI int WINAPI LookupIconIdFromDirectoryEx(PBYTE,BOOL,int,int,UINT);
WINUSERAPI BOOL WINAPI MapDialogRect(HWND,LPRECT);
WINUSERAPI int WINAPI MessageBoxIndirectW(CONST MSGBOXPARAMSW*);
WINUSERAPI BOOL WINAPI ModifyMenuA(HMENU,UINT,UINT,UINT,LPCSTR);
WINUSERAPI BOOL WINAPI ModifyMenuW(HMENU,UINT,UINT,UINT,LPCWSTR);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
-WINUSERAPI HMONITOR WINAPI MonitorFromPoint(POINT,DWORD);
-WINUSERAPI HMONITOR WINAPI MonitorFromRect(LPCRECT,DWORD);
-WINUSERAPI HMONITOR WINAPI MonitorFromWindow(HWND,DWORD);
-#endif
+
WINUSERAPI void WINAPI mouse_event(DWORD,DWORD,DWORD,DWORD,ULONG_PTR);
WINUSERAPI BOOL WINAPI MoveWindow(HWND,int,int,int,int,BOOL);
WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjects(DWORD,CONST HANDLE*,BOOL,DWORD,DWORD);
WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD,CONST HANDLE*,DWORD,DWORD,DWORD);
-#if (WINVER >= 0x0500)
-WINUSERAPI void WINAPI NotifyWinEvent(DWORD,HWND,LONG,LONG);
-#endif
+
WINUSERAPI DWORD WINAPI OemKeyScan(WORD);
WINUSERAPI BOOL WINAPI OemToCharA(LPCSTR,LPSTR);
WINUSERAPI BOOL WINAPI OemToCharBuffA(LPCSTR,LPSTR,DWORD);
WINUSERAPI void WINAPI PostQuitMessage(int);
WINUSERAPI BOOL WINAPI PostThreadMessageA(DWORD,UINT,WPARAM,LPARAM);
WINUSERAPI BOOL WINAPI PostThreadMessageW(DWORD,UINT,WPARAM,LPARAM);
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI BOOL WINAPI PrintWindow(HWND,HDC,UINT);
-#endif
+
WINUSERAPI BOOL WINAPI PtInRect(LPCRECT,POINT);
WINUSERAPI HWND WINAPI RealChildWindowFromPoint(HWND,POINT);
WINUSERAPI UINT WINAPI RealGetWindowClassA(HWND,LPSTR,UINT);
WINUSERAPI ATOM WINAPI RegisterClassExW(CONST WNDCLASSEXW*);
WINUSERAPI UINT WINAPI RegisterClipboardFormatA(LPCSTR);
WINUSERAPI UINT WINAPI RegisterClipboardFormatW(LPCWSTR);
-#if (WINVER >= 0x0500)
-WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationA(HANDLE,LPVOID,DWORD);
-WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationW(HANDLE,LPVOID,DWORD);
-#endif
-#if (_WIN32_WINNT >= 0x0600)
-WINUSERAPI HPOWERNOTIFY WINAPI RegisterPowerSettingNotification(HANDLE,LPCGUID,DWORD);
-#endif
+
WINUSERAPI BOOL WINAPI RegisterHotKey(HWND,int,UINT,UINT);
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI BOOL WINAPI RegisterRawInputDevices(PCRAWINPUTDEVICE,UINT,UINT);
-#endif
+
WINUSERAPI UINT WINAPI RegisterWindowMessageA(LPCSTR);
WINUSERAPI UINT WINAPI RegisterWindowMessageW(LPCWSTR);
WINUSERAPI BOOL WINAPI ReleaseCapture(void);
WINUSERAPI int WINAPI ScrollWindowEx(HWND,int,int,LPCRECT,LPCRECT,HRGN,LPRECT,UINT);
WINUSERAPI LONG WINAPI SendDlgItemMessageA(HWND,int,UINT,WPARAM,LPARAM);
WINUSERAPI LONG WINAPI SendDlgItemMessageW(HWND,int,UINT,WPARAM,LPARAM);
-#if (_WIN32_WINNT >= 0x0403)
-WINUSERAPI UINT WINAPI SendInput(UINT,LPINPUT,int);
-#endif
+
WINUSERAPI LRESULT WINAPI SendMessageA(HWND,UINT,WPARAM,LPARAM);
WINUSERAPI BOOL WINAPI SendMessageCallbackA(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD);
WINUSERAPI BOOL WINAPI SendMessageCallbackW(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD);
WINUSERAPI BOOL WINAPI SetCaretPos(int,int);
WINUSERAPI DWORD WINAPI SetClassLongA(HWND,int,LONG);
WINUSERAPI DWORD WINAPI SetClassLongW(HWND,int,LONG);
+
#ifdef _WIN64
WINUSERAPI ULONG_PTR WINAPI SetClassLongPtrA(HWND,int,LONG_PTR);
WINUSERAPI ULONG_PTR WINAPI SetClassLongPtrW(HWND,int,LONG_PTR);
#define SetClassLongPtrA SetClassLongA
#define SetClassLongPtrW SetClassLongW
#endif
+
WINUSERAPI WORD WINAPI SetClassWord(HWND,int,WORD);
WINUSERAPI HANDLE WINAPI SetClipboardData(UINT,HANDLE);
WINUSERAPI HWND WINAPI SetClipboardViewer(HWND);
WINUSERAPI LPARAM WINAPI SetMessageExtraInfo(LPARAM);
WINUSERAPI BOOL WINAPI SetMessageQueue(int);
WINUSERAPI HWND WINAPI SetParent(HWND,HWND);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI SetProcessDefaultLayout(DWORD);
-#endif /* (_WIN32_WINNT >= 0x0500) */
+
WINUSERAPI BOOL WINAPI SetProcessWindowStation(HWINSTA);
WINUSERAPI BOOL WINAPI SetPropA(HWND,LPCSTR,HANDLE);
WINUSERAPI BOOL WINAPI SetPropW(HWND,LPCWSTR,HANDLE);
WINUSERAPI BOOL WINAPI SetUserObjectInformationA(HANDLE,int,PVOID,DWORD);
WINUSERAPI BOOL WINAPI SetUserObjectInformationW(HANDLE,int,PVOID,DWORD);
WINUSERAPI BOOL WINAPI SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
-#if (WINVER >= 0x0500)
-WINUSERAPI HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
-#endif
+
WINUSERAPI BOOL WINAPI SetWindowContextHelpId(HWND,DWORD);
WINUSERAPI LONG WINAPI SetWindowLongA(HWND,int,LONG);
WINUSERAPI LONG WINAPI SetWindowLongW(HWND,int,LONG);
+
#ifdef _WIN64
WINUSERAPI LONG_PTR WINAPI SetWindowLongPtrA(HWND,int,LONG_PTR);
WINUSERAPI LONG_PTR WINAPI SetWindowLongPtrW(HWND,int,LONG_PTR);
#define SetWindowLongPtrA SetWindowLongA
#define SetWindowLongPtrW SetWindowLongW
#endif
+
WINUSERAPI BOOL WINAPI SetWindowPlacement(HWND hWnd,const WINDOWPLACEMENT*);
WINUSERAPI BOOL WINAPI SetWindowPos(HWND,HWND,int,int,int,int,UINT);
WINUSERAPI int WINAPI SetWindowRgn(HWND,HRGN,BOOL);
WINUSERAPI BOOL WINAPI SubtractRect(LPRECT,LPCRECT,LPCRECT);
WINUSERAPI BOOL WINAPI SwapMouseButton(BOOL);
WINUSERAPI BOOL WINAPI SwitchDesktop(HDESK);
-#if(_WIN32_WINNT >= 0x0500)
-WINUSERAPI VOID WINAPI SwitchToThisWindow(HWND,BOOL);
-#endif /* (_WIN32_WINNT >= 0x0500) */
+
WINUSERAPI BOOL WINAPI SystemParametersInfoA(UINT,UINT,PVOID,UINT);
WINUSERAPI BOOL WINAPI SystemParametersInfoW(UINT,UINT,PVOID,UINT);
WINUSERAPI LONG WINAPI TabbedTextOutA(HDC,int,int,LPCSTR,int,int,LPINT,int);
WINUSERAPI BOOL WINAPI TranslateMessage(const MSG*);
WINUSERAPI BOOL WINAPI UnhookWindowsHook(int,HOOKPROC);
WINUSERAPI BOOL WINAPI UnhookWindowsHookEx(HHOOK);
-#if (WINVER >= 0x0500)
-WINUSERAPI BOOL WINAPI UnhookWinEvent(HWINEVENTHOOK);
-#endif
+
WINUSERAPI BOOL WINAPI UnionRect(LPRECT,LPCRECT,LPCRECT);
WINUSERAPI BOOL WINAPI UnloadKeyboardLayout(HKL);
WINUSERAPI BOOL WINAPI UnregisterClassA(LPCSTR,HINSTANCE);
WINUSERAPI BOOL WINAPI UnregisterClassW(LPCWSTR,HINSTANCE);
-#if (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI UnregisterDeviceNotification(HANDLE);
-#endif
-#if (_WIN32_WINNT >= 0x0600)
-WINUSERAPI BOOL WINAPI UnregisterPowerSettingNotification(HPOWERNOTIFY);
-#endif
+
WINUSERAPI BOOL WINAPI UnregisterHotKey(HWND,int);
WINUSERAPI BOOL WINAPI UpdateWindow(HWND);
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI UserHandleGrantAccess(HANDLE,HANDLE,BOOL);
-#endif
+
WINUSERAPI BOOL WINAPI ValidateRect(HWND,LPCRECT);
WINUSERAPI BOOL WINAPI ValidateRgn(HWND,HRGN);
WINUSERAPI SHORT WINAPI VkKeyScanA(CHAR);
WINUSERAPI int WINAPIV wsprintfW(LPWSTR,LPCWSTR,...);
WINUSERAPI int WINAPI wvsprintfA(LPSTR,LPCSTR,va_list arglist);
WINUSERAPI int WINAPI wvsprintfW(LPWSTR,LPCWSTR,va_list arglist);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
-WINUSERAPI BOOL WINAPI AllowSetForegroundWindow(DWORD);
-WINUSERAPI BOOL WINAPI LockSetForegroundWindow(UINT);
-#endif
-#if (_WIN32_WINNT >= 0x0500)
-WINUSERAPI BOOL WINAPI SetLayeredWindowAttributes(HWND,COLORREF,BYTE,DWORD);
-#ifndef NOGDI
-WINUSERAPI BOOL WINAPI UpdateLayeredWindow(HWND,HDC,POINT*,SIZE*,HDC,POINT*,COLORREF,BLENDFUNCTION*,DWORD);
-#endif
-#endif
-#if (_WIN32_WINNT >= 0x0501)
-WINUSERAPI BOOL WINAPI GetLayeredWindowAttributes(HWND,COLORREF*,BYTE*,DWORD*);
-#endif
-#if (_WIN32_WINNT >= 0x0601)
-BOOL WINAPI CloseTouchInputHandle(HANDLE hTouchInput);
-BOOL WINAPI GetTouchInputInfo(HANDLE hTouchInput, UINT cInputs, PTOUCHINPUT pInputs, int cbSize);
-BOOL WINAPI IsTouchWindow(HWND hWnd, PULONG pulFlags);
-BOOL WINAPI RegisterTouchWindow(HWND hWnd, ULONG ulFlags);
-BOOL WINAPI UnregisterTouchWindow(HWND hWnd);
-#endif
+#define EDITWORDBREAKPROC __AW(EDITWORDBREAKPROC)
+#define PROPENUMPROC __AW(PROPENUMPROC)
+#define PROPENUMPROCEX __AW(PROPENUMPROCEX)
+#define DEKSTOPENUMPROC __AW(DEKSTOPENUMPROC)
+#define WINSTAENUMPROC __AW(WINSTAENUMPROC)
+#define PROPENUMPROC __AW(PROPENUMPROC)
+#define PROPENUMPROCEX __AW(PROPENUMPROCEX)
+#define MAKEINTRESOURCE __AW(MAKEINTRESOURCE)
+typedef __AW(WNDCLASS) WNDCLASS,*LPWNDCLASS,*PWNDCLASS;
+typedef __AW(WNDCLASSEX) WNDCLASSEX,*LPWNDCLASSEX,*PWNDCLASSEX;
+typedef __AW(MENUITEMINFO) MENUITEMINFO,*LPMENUITEMINFO;
+typedef __AW(LPCMENUITEMINFO) LPCMENUITEMINFO;
+typedef __AW(MSGBOXPARAMS) MSGBOXPARAMS,*PMSGBOXPARAMS,*LPMSGBOXPARAMS;
+typedef __AW(HIGHCONTRAST) HIGHCONTRAST,*LPHIGHCONTRAST;
+typedef __AW(SERIALKEYS) SERIALKEYS,*LPSERIALKEYS;
+typedef __AW(SOUNDSENTRY) SOUNDSENTRY,*LPSOUNDSENTRY;
+typedef __AW(CREATESTRUCT) CREATESTRUCT, *LPCREATESTRUCT;
+typedef __AW(CBT_CREATEWND) CBT_CREATEWND, *LPCBT_CREATEWND;
+typedef __AW(MDICREATESTRUCT) MDICREATESTRUCT,*LPMDICREATESTRUCT;
+typedef __AW(MULTIKEYHELP) MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP;
+typedef __AW(MONITORINFOEX) MONITORINFOEX, *LPMONITORINFOEX;
+#define AppendMenu __AW(AppendMenu)
+#define BroadcastSystemMessage __AW(BroadcastSystemMessage)
+#define BroadcastSystemMessageEx __AW(BroadcastSystemMessageEx)
+#define CallMsgFilter __AW(CallMsgFilter)
+#define CallWindowProc __AW(CallWindowProc)
+#define ChangeMenu __AW(ChangeMenu)
+#define CharLower __AW(CharLower)
+#define CharLowerBuff __AW(CharLowerBuff)
+#define CharNext __AW(CharNext)
+#define CharPrev __AW(CharPrev)
+#define CharToOem __AW(CharToOem)
+#define CharToOemBuff __AW(CharToOemBuff)
+#define CharUpper __AW(CharUpper)
+#define CharUpperBuff __AW(CharUpperBuff)
+#define CopyAcceleratorTable __AW(CopyAcceleratorTable)
+#define CreateAcceleratorTable __AW(CreateAcceleratorTable)
+#define CreateDialog __AW(CreateDialog)
+#define CreateDialogIndirect __AW(CreateDialogIndirect)
+#define CreateDialogIndirectParam __AW(CreateDialogIndirectParam)
+#define CreateDialogParam __AW(CreateDialogParam)
+#define CreateMDIWindow __AW(CreateMDIWindow)
+#define CreateWindow __AW(CreateWindow)
+#define CreateWindowEx __AW(CreateWindowEx)
+#define CreateWindowStation __AW(CreateWindowStation)
+#define DefDlgProc __AW(DefDlgProc)
+#define DefFrameProc __AW(DefFrameProc)
+#define DefMDIChildProc __AW(DefMDIChildProc)
+#define DefWindowProc __AW(DefWindowProc)
+#define DialogBox __AW(DialogBox)
+#define DialogBoxIndirect __AW(DialogBoxIndirect)
+#define DialogBoxIndirectParam __AW(DialogBoxIndirectParam)
+#define DialogBoxParam __AW(DialogBoxParam)
+#define DispatchMessage __AW(DispatchMessage)
+#define DlgDirList __AW(DlgDirList)
+#define DlgDirListComboBox __AW(DlgDirListComboBox)
+#define DlgDirSelectComboBoxEx __AW(DlgDirSelectComboBoxEx)
+#define DlgDirSelectEx __AW(DlgDirSelectEx)
+#define DrawState __AW(DrawState)
+#define DrawText __AW(DrawText)
+#define DrawTextEx __AW(DrawTextEx)
+#define EnumDesktops __AW(EnumDesktops)
+#define EnumProps __AW(EnumProps)
+#define EnumPropsEx __AW(EnumPropsEx)
+#define EnumWindowStations __AW(EnumWindowStations)
+#define FindWindow __AW(FindWindow)
+#define FindWindowEx __AW(FindWindowEx)
+#define GetClassInfo __AW(GetClassInfo)
+#define GetClassInfoEx __AW(GetClassInfoEx)
+#define GetClassLong __AW(GetClassLong)
+#define GetClassLongPtr __AW(GetClassLongPtr)
+#define GetClassName __AW(GetClassName)
+#define GetClipboardFormatName __AW(GetClipboardFormatName)
+#define GetDlgItemText __AW(GetDlgItemText)
+#define GetKeyboardLayoutName __AW(GetKeyboardLayoutName)
+#define GetKeyNameText __AW(GetKeyNameText)
+#define GetMenuItemInfo __AW(GetMenuItemInfo)
+#define GetMenuString __AW(GetMenuString)
+#define GetMessage __AW(GetMessage)
+#define GetMonitorInfo __AW(GetMonitorInfo)
+#define GetProp __AW(GetProp)
+#define GetRawInputDeviceInfo __AW(GetRawInputDeviceInfo)
+#define GetTabbedTextExtent __AW(GetTabbedTextExtent)
+#define GetUserObjectInformation __AW(GetUserObjectInformation)
+#define GetWindowLong __AW(GetWindowLong)
+#define GetWindowLongPtr __AW(GetWindowLongPtr)
+#define GetWindowText __AW(GetWindowText)
+#define GetWindowTextLength __AW(GetWindowTextLength)
+#define GetAltTabInfo __AW(GetAltTabInfo)
+#define GetWindowModuleFileName __AW(GetWindowModuleFileName)
+#define GrayString __AW(GrayString)
+#define InsertMenu __AW(InsertMenu)
+#define InsertMenuItem __AW(InsertMenuItem)
+#define IsCharAlpha __AW(IsCharAlpha)
+#define IsCharAlphaNumeric __AW(IsCharAlphaNumeric)
+#define IsCharLower __AW(IsCharLower)
+#define IsCharUpper __AW(IsCharUpper)
+#define IsDialogMessage __AW(IsDialogMessage)
+#define LoadAccelerators __AW(LoadAccelerators)
+#define LoadBitmap __AW(LoadBitmap)
+#define LoadCursor __AW(LoadCursor)
+#define LoadCursorFromFile __AW(LoadCursorFromFile)
+#define LoadIcon __AW(LoadIcon)
+#define LoadImage __AW(LoadImage)
+#define LoadKeyboardLayout __AW(LoadKeyboardLayout)
+#define LoadMenu __AW(LoadMenu)
+#define LoadMenuIndirect __AW(LoadMenuIndirect)
+#define LoadString __AW(LoadString)
+#define MapVirtualKey __AW(MapVirtualKey)
+#define MapVirtualKeyEx __AW(MapVirtualKeyEx)
+#define MessageBox __AW(MessageBox)
+#define MessageBoxEx __AW(MessageBoxEx)
+#define MessageBoxIndirect __AW(MessageBoxIndirect)
+#define ModifyMenu __AW(ModifyMenu)
+#define OemToChar __AW(OemToChar)
+#define OemToCharBuff __AW(OemToCharBuff)
+#define OpenDesktop __AW(OpenDesktop)
+#define OpenWindowStation __AW(OpenWindowStation)
+#define PeekMessage __AW(PeekMessage)
+#define PostAppMessage __AW(PostAppMessage)
+#define PostMessage __AW(PostMessage)
+#define PostThreadMessage __AW(PostThreadMessage)
+#define RealGetWindowClass __AW(RealGetWindowClass)
+#define RegisterClass __AW(RegisterClass)
+#define RegisterClassEx __AW(RegisterClassEx)
+#define RegisterClipboardFormat __AW(RegisterClipboardFormat)
+#define RegisterDeviceNotification __AW(RegisterDeviceNotification)
+#define RegisterWindowMessage __AW(RegisterWindowMessage)
+#define RemoveProp __AW(RemoveProp)
+#define SendDlgItemMessage __AW(SendDlgItemMessage)
+#define SendMessage __AW(SendMessage)
+#define SendMessageCallback __AW(SendMessageCallback)
+#define SendMessageTimeout __AW(SendMessageTimeout)
+#define SendNotifyMessage __AW(SendNotifyMessage)
+#define SetClassLong __AW(SetClassLong)
+#define SetClassLongPtr __AW(SetClassLongPtr)
+#define SetDlgItemText __AW(SetDlgItemText)
+#define SetMenuItemInfo __AW(SetMenuItemInfo)
+#define SetProp __AW(SetProp)
+#define SetUserObjectInformation __AW(SetUserObjectInformation)
+#define SetWindowLong __AW(SetWindowLong)
+#define SetWindowLongPtr __AW(SetWindowLongPtr)
+#define SetWindowsHook __AW(SetWindowsHook)
+#define SetWindowsHookEx __AW(SetWindowsHookEx)
+#define SetWindowText __AW(SetWindowText)
+#define SystemParametersInfo __AW(SystemParametersInfo)
+#define TabbedTextOut __AW(TabbedTextOut)
+#define TranslateAccelerator __AW(TranslateAccelerator)
+#define UnregisterClass __AW(UnregisterClass)
+#define VkKeyScan __AW(VkKeyScan)
+#define VkKeyScanEx __AW(VkKeyScanEx)
+#define WinHelp __AW(WinHelp)
+#define wsprintf __AW(wsprintf)
+#define wvsprintf __AW(wvsprintf)
-#ifdef UNICODE
-#define EDITWORDBREAKPROC EDITWORDBREAKPROCW
-#define PROPENUMPROC PROPENUMPROCW
-#define PROPENUMPROCEX PROPENUMPROCEXW
-#define DEKSTOPENUMPROC DEKSTOPENUMPROCW
-#define WINSTAENUMPROC WINSTAENUMPROCW
-#define PROPENUMPROC PROPENUMPROCW
-#define PROPENUMPROCEX PROPENUMPROCEXW
-#define MAKEINTRESOURCE MAKEINTRESOURCEW
-typedef WNDCLASSW WNDCLASS,*LPWNDCLASS,*PWNDCLASS;
-typedef WNDCLASSEXW WNDCLASSEX,*LPWNDCLASSEX,*PWNDCLASSEX;
-typedef MENUITEMINFOW MENUITEMINFO,*LPMENUITEMINFO;
-typedef LPCMENUITEMINFOW LPCMENUITEMINFO;
-typedef MSGBOXPARAMSW MSGBOXPARAMS,*PMSGBOXPARAMS,*LPMSGBOXPARAMS;
-typedef HIGHCONTRASTW HIGHCONTRAST,*LPHIGHCONTRAST;
-typedef SERIALKEYSW SERIALKEYS,*LPSERIALKEYS;
-typedef SOUNDSENTRYW SOUNDSENTRY,*LPSOUNDSENTRY;
-typedef CREATESTRUCTW CREATESTRUCT, *LPCREATESTRUCT;
-typedef CBT_CREATEWNDW CBT_CREATEWND, *LPCBT_CREATEWND;
-typedef MDICREATESTRUCTW MDICREATESTRUCT,*LPMDICREATESTRUCT;
-typedef MULTIKEYHELPW MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP;
-typedef MONITORINFOEXW MONITORINFOEX, *LPMONITORINFOEX;
-#define AppendMenu AppendMenuW
-#define BroadcastSystemMessage BroadcastSystemMessageW
-#define BroadcastSystemMessageEx BroadcastSystemMessageExW
-#define CallMsgFilter CallMsgFilterW
-#define CallWindowProc CallWindowProcW
-#define ChangeMenu ChangeMenuW
-#define CharLower CharLowerW
-#define CharLowerBuff CharLowerBuffW
-#define CharNext CharNextW
-#define CharPrev CharPrevW
-#define CharToOem CharToOemW
-#define CharToOemBuff CharToOemBuffW
-#define CharUpper CharUpperW
-#define CharUpperBuff CharUpperBuffW
-#define CopyAcceleratorTable CopyAcceleratorTableW
-#define CreateAcceleratorTable CreateAcceleratorTableW
-#define CreateDialog CreateDialogW
-#define CreateDialogIndirect CreateDialogIndirectW
-#define CreateDialogIndirectParam CreateDialogIndirectParamW
-#define CreateDialogParam CreateDialogParamW
-#define CreateMDIWindow CreateMDIWindowW
-#define CreateWindow CreateWindowW
-#define CreateWindowEx CreateWindowExW
-#define CreateWindowStation CreateWindowStationW
-#define DefDlgProc DefDlgProcW
-#define DefFrameProc DefFrameProcW
-#define DefMDIChildProc DefMDIChildProcW
-#define DefWindowProc DefWindowProcW
-#define DialogBox DialogBoxW
-#define DialogBoxIndirect DialogBoxIndirectW
-#define DialogBoxIndirectParam DialogBoxIndirectParamW
-#define DialogBoxParam DialogBoxParamW
-#define DispatchMessage DispatchMessageW
-#define DlgDirList DlgDirListW
-#define DlgDirListComboBox DlgDirListComboBoxW
-#define DlgDirSelectComboBoxEx DlgDirSelectComboBoxExW
-#define DlgDirSelectEx DlgDirSelectExW
-#define DrawState DrawStateW
-#define DrawText DrawTextW
-#define DrawTextEx DrawTextExW
-#define EnumDesktops EnumDesktopsW
-#define EnumProps EnumPropsW
-#define EnumPropsEx EnumPropsExW
-#define EnumWindowStations EnumWindowStationsW
-#define FindWindow FindWindowW
-#define FindWindowEx FindWindowExW
-#define GetClassInfo GetClassInfoW
-#define GetClassInfoEx GetClassInfoExW
-#define GetClassLong GetClassLongW
-#define GetClassLongPtr GetClassLongPtrW
-#define GetClassName GetClassNameW
-#define GetClipboardFormatName GetClipboardFormatNameW
-#define GetDlgItemText GetDlgItemTextW
-#define GetKeyboardLayoutName GetKeyboardLayoutNameW
-#define GetKeyNameText GetKeyNameTextW
-#define GetMenuItemInfo GetMenuItemInfoW
-#define GetMenuString GetMenuStringW
-#define GetMessage GetMessageW
-#define GetMonitorInfo GetMonitorInfoW
-#define GetProp GetPropW
-#define GetRawInputDeviceInfo GetRawInputDeviceInfoW
-#define GetTabbedTextExtent GetTabbedTextExtentW
-#define GetUserObjectInformation GetUserObjectInformationW
-#define GetWindowLong GetWindowLongW
-#define GetWindowLongPtr GetWindowLongPtrW
-#define GetWindowText GetWindowTextW
-#define GetWindowTextLength GetWindowTextLengthW
-#define GetAltTabInfo GetAltTabInfoW
-#define GetWindowModuleFileName GetWindowModuleFileNameW
-#define GrayString GrayStringW
-#define InsertMenu InsertMenuW
-#define InsertMenuItem InsertMenuItemW
-#define IsCharAlpha IsCharAlphaW
-#define IsCharAlphaNumeric IsCharAlphaNumericW
-#define IsCharLower IsCharLowerW
-#define IsCharUpper IsCharUpperW
-#define IsDialogMessage IsDialogMessageW
-#define LoadAccelerators LoadAcceleratorsW
-#define LoadBitmap LoadBitmapW
-#define LoadCursor LoadCursorW
-#define LoadCursorFromFile LoadCursorFromFileW
-#define LoadIcon LoadIconW
-#define LoadImage LoadImageW
-#define LoadKeyboardLayout LoadKeyboardLayoutW
-#define LoadMenu LoadMenuW
-#define LoadMenuIndirect LoadMenuIndirectW
-#define LoadString LoadStringW
-#define MapVirtualKey MapVirtualKeyW
-#define MapVirtualKeyEx MapVirtualKeyExW
-#define MessageBox MessageBoxW
-#define MessageBoxEx MessageBoxExW
-#define MessageBoxIndirect MessageBoxIndirectW
-#define ModifyMenu ModifyMenuW
-#define OemToChar OemToCharW
-#define OemToCharBuff OemToCharBuffW
-#define OpenDesktop OpenDesktopW
-#define OpenWindowStation OpenWindowStationW
-#define PeekMessage PeekMessageW
-#define PostAppMessage PostAppMessageW
-#define PostMessage PostMessageW
-#define PostThreadMessage PostThreadMessageW
-#define RealGetWindowClass RealGetWindowClassW
-#define RegisterClass RegisterClassW
-#define RegisterClassEx RegisterClassExW
-#define RegisterClipboardFormat RegisterClipboardFormatW
-#define RegisterDeviceNotification RegisterDeviceNotificationW
-#define RegisterWindowMessage RegisterWindowMessageW
-#define RemoveProp RemovePropW
-#define SendDlgItemMessage SendDlgItemMessageW
-#define SendMessage SendMessageW
-#define SendMessageCallback SendMessageCallbackW
-#define SendMessageTimeout SendMessageTimeoutW
-#define SendNotifyMessage SendNotifyMessageW
-#define SetClassLong SetClassLongW
-#define SetClassLongPtr SetClassLongPtrW
-#define SetDlgItemText SetDlgItemTextW
-#define SetMenuItemInfo SetMenuItemInfoW
-#define SetProp SetPropW
-#define SetUserObjectInformation SetUserObjectInformationW
-#define SetWindowLong SetWindowLongW
-#define SetWindowLongPtr SetWindowLongPtrW
-#define SetWindowsHook SetWindowsHookW
-#define SetWindowsHookEx SetWindowsHookExW
-#define SetWindowText SetWindowTextW
-#define SystemParametersInfo SystemParametersInfoW
-#define TabbedTextOut TabbedTextOutW
-#define TranslateAccelerator TranslateAcceleratorW
-#define UnregisterClass UnregisterClassW
-#define VkKeyScan VkKeyScanW
-#define VkKeyScanEx VkKeyScanExW
-#define WinHelp WinHelpW
-#define wsprintf wsprintfW
-#define wvsprintf wvsprintfW
-#ifndef NOGDI
-typedef ICONMETRICSW ICONMETRICS,*LPICONMETRICS;
-typedef NONCLIENTMETRICSW NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
-#define ChangeDisplaySettings ChangeDisplaySettingsW
-#define ChangeDisplaySettingsEx ChangeDisplaySettingsExW
-#define CreateDesktop CreateDesktopW
-#define EnumDisplaySettings EnumDisplaySettingsW
-#define EnumDisplaySettingsEx EnumDisplaySettingsExW
-#define EnumDisplayDevices EnumDisplayDevicesW
-#endif /* NOGDI */
-#else /* UNICODE */
-#define EDITWORDBREAKPROC EDITWORDBREAKPROCA
-#define PROPENUMPROC PROPENUMPROCA
-#define PROPENUMPROCEX PROPENUMPROCEXA
-#define DEKSTOPENUMPROC DEKSTOPENUMPROCA
-#define WINSTAENUMPROC WINSTAENUMPROCA
-#define PROPENUMPROC PROPENUMPROCA
-#define PROPENUMPROCEX PROPENUMPROCEXA
-#define MAKEINTRESOURCE MAKEINTRESOURCEA
-typedef WNDCLASSA WNDCLASS,*LPWNDCLASS,*PWNDCLASS;
-typedef WNDCLASSEXA WNDCLASSEX,*LPWNDCLASSEX,*PWNDCLASSEX;
-typedef MENUITEMINFOA MENUITEMINFO,*LPMENUITEMINFO;
-typedef LPCMENUITEMINFOA LPCMENUITEMINFO;
-typedef MSGBOXPARAMSA MSGBOXPARAMS,*PMSGBOXPARAMS,*LPMSGBOXPARAMS;
-typedef HIGHCONTRASTA HIGHCONTRAST,*LPHIGHCONTRAST;
-typedef SERIALKEYSA SERIALKEYS,*LPSERIALKEYS;
-typedef SOUNDSENTRYA SOUNDSENTRY,*LPSOUNDSENTRY;
-typedef CREATESTRUCTA CREATESTRUCT, *LPCREATESTRUCT;
-typedef CBT_CREATEWNDA CBT_CREATEWND, *LPCBT_CREATEWND;
-typedef MDICREATESTRUCTA MDICREATESTRUCT,*LPMDICREATESTRUCT;
-typedef MULTIKEYHELPA MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP;
-typedef MONITORINFOEXA MONITORINFOEX, *LPMONITORINFOEX;
-#define AppendMenu AppendMenuA
-#define BroadcastSystemMessage BroadcastSystemMessageA
-#define BroadcastSystemMessageEx BroadcastSystemMessageExA
-#define CallMsgFilter CallMsgFilterA
-#define CallWindowProc CallWindowProcA
-#define ChangeMenu ChangeMenuA
-#define CharLower CharLowerA
-#define CharLowerBuff CharLowerBuffA
-#define CharNext CharNextA
-#define CharPrev CharPrevA
-#define CharToOem CharToOemA
-#define CharToOemBuff CharToOemBuffA
-#define CharUpper CharUpperA
-#define CharUpperBuff CharUpperBuffA
-#define CopyAcceleratorTable CopyAcceleratorTableA
-#define CreateAcceleratorTable CreateAcceleratorTableA
-#define CreateDialog CreateDialogA
-#define CreateDialogIndirect CreateDialogIndirectA
-#define CreateDialogIndirectParam CreateDialogIndirectParamA
-#define CreateDialogParam CreateDialogParamA
-#define CreateMDIWindow CreateMDIWindowA
-#define CreateWindow CreateWindowA
-#define CreateWindowEx CreateWindowExA
-#define CreateWindowStation CreateWindowStationA
-#define DefDlgProc DefDlgProcA
-#define DefFrameProc DefFrameProcA
-#define DefMDIChildProc DefMDIChildProcA
-#define DefWindowProc DefWindowProcA
-#define DialogBox DialogBoxA
-#define DialogBoxIndirect DialogBoxIndirectA
-#define DialogBoxIndirectParam DialogBoxIndirectParamA
-#define DialogBoxParam DialogBoxParamA
-#define DispatchMessage DispatchMessageA
-#define DlgDirList DlgDirListA
-#define DlgDirListComboBox DlgDirListComboBoxA
-#define DlgDirSelectComboBoxEx DlgDirSelectComboBoxExA
-#define DlgDirSelectEx DlgDirSelectExA
-#define DrawState DrawStateA
-#define DrawText DrawTextA
-#define DrawTextEx DrawTextExA
-#define EnumDesktops EnumDesktopsA
-#define EnumProps EnumPropsA
-#define EnumPropsEx EnumPropsExA
-#define EnumWindowStations EnumWindowStationsA
-#define FindWindow FindWindowA
-#define FindWindowEx FindWindowExA
-#define GetClassInfo GetClassInfoA
-#define GetClassInfoEx GetClassInfoExA
-#define GetClassLong GetClassLongA
-#define GetClassLongPtr GetClassLongPtrA
-#define GetClassName GetClassNameA
-#define GetClipboardFormatName GetClipboardFormatNameA
-#define GetDlgItemText GetDlgItemTextA
-#define GetKeyboardLayoutName GetKeyboardLayoutNameA
-#define GetKeyNameText GetKeyNameTextA
-#define GetMenuItemInfo GetMenuItemInfoA
-#define GetMenuString GetMenuStringA
-#define GetMessage GetMessageA
-#define GetMonitorInfo GetMonitorInfoA
-#define GetProp GetPropA
-#define GetRawInputDeviceInfo GetRawInputDeviceInfoA
-#define GetTabbedTextExtent GetTabbedTextExtentA
-#define GetUserObjectInformation GetUserObjectInformationA
-#define GetWindowLong GetWindowLongA
-#define GetWindowLongPtr GetWindowLongPtrA
-#define GetWindowText GetWindowTextA
-#define GetWindowTextLength GetWindowTextLengthA
-#define GetAltTabInfo GetAltTabInfoA
-#define GetWindowModuleFileName GetWindowModuleFileNameA
-#define GrayString GrayStringA
-#define InsertMenu InsertMenuA
-#define InsertMenuItem InsertMenuItemA
-#define IsCharAlpha IsCharAlphaA
-#define IsCharAlphaNumeric IsCharAlphaNumericA
-#define IsCharLower IsCharLowerA
-#define IsCharUpper IsCharUpperA
-#define IsDialogMessage IsDialogMessageA
-#define LoadAccelerators LoadAcceleratorsA
-#define LoadBitmap LoadBitmapA
-#define LoadCursor LoadCursorA
-#define LoadIcon LoadIconA
-#define LoadCursorFromFile LoadCursorFromFileA
-#define LoadImage LoadImageA
-#define LoadKeyboardLayout LoadKeyboardLayoutA
-#define LoadMenu LoadMenuA
-#define LoadMenuIndirect LoadMenuIndirectA
-#define LoadString LoadStringA
-#define MapVirtualKey MapVirtualKeyA
-#define MapVirtualKeyEx MapVirtualKeyExA
-#define MessageBox MessageBoxA
-#define MessageBoxEx MessageBoxExA
-#define MessageBoxIndirect MessageBoxIndirectA
-#define ModifyMenu ModifyMenuA
-#define OemToChar OemToCharA
-#define OemToCharBuff OemToCharBuffA
-#define OpenDesktop OpenDesktopA
-#define OpenWindowStation OpenWindowStationA
-#define PeekMessage PeekMessageA
-#define PostAppMessage PostAppMessageA
-#define PostMessage PostMessageA
-#define PostThreadMessage PostThreadMessageA
-#define RealGetWindowClass RealGetWindowClassA
-#define RegisterClass RegisterClassA
-#define RegisterClassEx RegisterClassExA
-#define RegisterClipboardFormat RegisterClipboardFormatA
-#define RegisterDeviceNotification RegisterDeviceNotificationA
-#define RegisterWindowMessage RegisterWindowMessageA
-#define RemoveProp RemovePropA
-#define SendDlgItemMessage SendDlgItemMessageA
-#define SendMessage SendMessageA
-#define SendMessageCallback SendMessageCallbackA
-#define SendMessageTimeout SendMessageTimeoutA
-#define SendNotifyMessage SendNotifyMessageA
-#define SetClassLong SetClassLongA
-#define SetClassLongPtr SetClassLongPtrA
-#define SetDlgItemText SetDlgItemTextA
-#define SetMenuItemInfo SetMenuItemInfoA
-#define SetProp SetPropA
-#define SetUserObjectInformation SetUserObjectInformationA
-#define SetWindowLong SetWindowLongA
-#define SetWindowLongPtr SetWindowLongPtrA
-#define SetWindowsHook SetWindowsHookA
-#define SetWindowsHookEx SetWindowsHookExA
-#define SetWindowText SetWindowTextA
-#define SystemParametersInfo SystemParametersInfoA
-#define TabbedTextOut TabbedTextOutA
-#define TranslateAccelerator TranslateAcceleratorA
-#define UnregisterClass UnregisterClassA
-#define VkKeyScan VkKeyScanA
-#define VkKeyScanEx VkKeyScanExA
-#define WinHelp WinHelpA
-#define wsprintf wsprintfA
-#define wvsprintf wvsprintfA
#ifndef NOGDI
-typedef ICONMETRICSA ICONMETRICS,*LPICONMETRICS;
-typedef NONCLIENTMETRICSA NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
-#define ChangeDisplaySettings ChangeDisplaySettingsA
-#define ChangeDisplaySettingsEx ChangeDisplaySettingsExA
-#define CreateDesktop CreateDesktopA
-#define EnumDisplaySettings EnumDisplaySettingsA
-#define EnumDisplaySettingsEx EnumDisplaySettingsExA
-#define EnumDisplayDevices EnumDisplayDevicesA
+typedef __AW(ICONMETRICS) ICONMETRICS,*LPICONMETRICS;
+typedef __AW(NONCLIENTMETRICS) NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
+#define ChangeDisplaySettings __AW(ChangeDisplaySettings)
+#define ChangeDisplaySettingsEx __AW(ChangeDisplaySettingsEx)
+#define CreateDesktop __AW(CreateDesktop)
+#define EnumDisplaySettings __AW(EnumDisplaySettings)
+#define EnumDisplaySettingsEx __AW(EnumDisplaySettingsEx)
+#define EnumDisplayDevices __AW(EnumDisplayDevices)
#endif /* NOGDI */
-#endif /* UNICODE */
+
#endif /* RC_INVOKED */
-#ifdef __cplusplus
-}
-#endif
+#if (_WIN32_WINNT >= 0x0410)
+#define DC_GRADIENT 0x00000020
+#define TPM_RECURSE 1
+#define SW_SMOOTHSCROLL 0x0010
+#define INPUT_MOUSE 0x00000000
+#define INPUT_KEYBOARD 0x00000001
+#define INPUT_HARDWARE 0x00000002
+#define MONITOR_DEFAULTTONULL 0
+#define MONITOR_DEFAULTTOPRIMARY 1
+#define MONITOR_DEFAULTTONEAREST 2
+#define MONITORINFOF_PRIMARY 1
+#define EDS_RAWMODE 0x00000002
+#define ISMEX_NOSEND 0x00000000
+#define ISMEX_CALLBACK 0x00000004
+#define ISMEX_NOTIFY 0x00000002
+#define ISMEX_REPLIED 0x00000008
+#define ISMEX_SEND 0x00000001
+
+#ifndef RC_INVOKED
+#define CCHILDREN_TITLEBAR 5
+typedef struct tagTITLEBARINFO {
+ DWORD cbSize;
+ RECT rcTitleBar;
+ DWORD rgstate[CCHILDREN_TITLEBAR+1];
+} TITLEBARINFO,*PTITLEBARINFO,*LPTITLEBARINFO;
+typedef struct {
+ UINT cbSize;
+ HWND hwnd;
+ DWORD dwFlags;
+ UINT uCount;
+ DWORD dwTimeout;
+} FLASHWINFO,*PFLASHWINFO;
+typedef struct tagMOUSEINPUT {
+ LONG dx;
+ LONG dy;
+ DWORD mouseData;
+ DWORD dwFlags;
+ DWORD time;
+ ULONG_PTR dwExtraInfo;
+} MOUSEINPUT,*PMOUSEINPUT;
+typedef struct tagKEYBDINPUT {
+ WORD wVk;
+ WORD wScan;
+ DWORD dwFlags;
+ DWORD time;
+ ULONG_PTR dwExtraInfo;
+} KEYBDINPUT,*PKEYBDINPUT;
+typedef struct tagHARDWAREINPUT {
+ DWORD uMsg;
+ WORD wParamL;
+ WORD wParamH;
+} HARDWAREINPUT,*PHARDWAREINPUT;
+typedef struct tagINPUT {
+ DWORD type;
+ _ANONYMOUS_UNION union {
+ MOUSEINPUT mi;
+ KEYBDINPUT ki;
+ HARDWAREINPUT hi;
+ } DUMMYUNIONNAME;
+} INPUT,*PINPUT,*LPINPUT;
+WINUSERAPI BOOL WINAPI FlashWindowEx(PFLASHWINFO);
+WINUSERAPI DWORD WINAPI GetClipboardSequenceNumber(void);
+WINUSERAPI BOOL WINAPI GetTitleBarInfo(HWND,PTITLEBARINFO);
+WINUSERAPI DWORD WINAPI InSendMessageEx(LPVOID);
+WINUSERAPI HMONITOR WINAPI MonitorFromPoint(POINT,DWORD);
+WINUSERAPI HMONITOR WINAPI MonitorFromRect(LPCRECT,DWORD);
+WINUSERAPI HMONITOR WINAPI MonitorFromWindow(HWND,DWORD);
+WINUSERAPI UINT WINAPI SendInput(UINT,LPINPUT,int);
+WINUSERAPI BOOL WINAPI UnregisterDeviceNotification(HANDLE);
+
+#ifndef NOGDI
+WINUSERAPI BOOL WINAPI EnumDisplaySettingsExA(LPCSTR,DWORD,LPDEVMODEA,DWORD);
+WINUSERAPI BOOL WINAPI EnumDisplaySettingsExW(LPCWSTR,DWORD,LPDEVMODEW,DWORD);
+#endif /* ! NOGDI */
+
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= 0x0410) */
+
+#if (_WIN32_WINNT >= 0x0490)
+#define ASFW_ANY ((DWORD)-1)
+#define LSFW_LOCK 1
+#define LSFW_UNLOCK 2
+#define GMMP_USE_DISPLAY_POINTS 1
+#define GMMP_USE_HIGH_RESOLUTION_POINTS 2
+
+#ifndef RC_INVOKED
+typedef struct tagMOUSEMOVEPOINT {
+ int x;
+ int y;
+ DWORD time;
+ ULONG_PTR dwExtraInfo;
+} MOUSEMOVEPOINT,*PMOUSEMOVEPOINT,*LPMOUSEMOVEPOINT;
+WINUSERAPI int WINAPI GetMouseMovePointsEx(UINT,LPMOUSEMOVEPOINT,LPMOUSEMOVEPOINT,int,DWORD);
+WINUSERAPI BOOL WINAPI AllowSetForegroundWindow(DWORD);
+WINUSERAPI BOOL WINAPI LockSetForegroundWindow(UINT);
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= 0x0490) */
+
+#if (_WIN32_WINNT >= 0x0500)
+#define CF_DIBV5 17
+#undef CF_MAX
+#define CF_MAX 18
+#define BSF_ALLOWSFW 0x00000080
+#define BSF_SENDNOTIFYMESSAGE 0x00000100
+#define DFC_POPUPMENU 5
+#define DFCS_TRANSPARENT 0x800
+#define DFCS_HOT 0x1000
+#define MIM_MAXHEIGHT 1
+#define MIM_BACKGROUND 2
+#define MIM_HELPID 4
+#define MIM_MENUDATA 8
+#define MIM_STYLE 16
+#define MIM_APPLYTOSUBMENUS 0x80000000L
+#define MNS_NOCHECK 0x80000000
+#define MNS_MODELESS 0x40000000
+#define MNS_DRAGDROP 0x20000000
+#define MNS_AUTODISMISS 0x10000000
+#define MNS_NOTIFYBYPOS 0x08000000
+#define MNS_CHECKORBMP 0x04000000
+#define MB_CANCELTRYCONTINUE 6
+#define IDTRYAGAIN 10
+#define IDCONTINUE 11
+#define KEYEVENTF_UNICODE 0x00000004
+#define KEYEVENTF_SCANCODE 0x00000008
+#define MOUSEEVENTF_XDOWN 0x00000080
+#define MOUSEEVENTF_XUP 0x00000100
+#define PM_QS_INPUT (QS_INPUT << 16)
+#define PM_QS_POSTMESSAGE ((QS_POSTMESSAGE|QS_HOTKEY|QS_TIMER) << 16)
+#define PM_QS_PAINT (QS_PAINT << 16)
+#define PM_QS_SENDMESSAGE (QS_SENDMESSAGE << 16)
+#define HWND_MESSAGE ((HWND)(-3))
+#define SMTO_NOTIMEOUTIFNOTHUNG 0x0008
+#define HSHELL_ACCESSIBILITYSTATE 11
+#define HSHELL_APPCOMMAND 12
+#define HSHELL_RUDEAPPACTIVATED 32772
+#define HSHELL_FLASH 32774
+#define WM_GETOBJECT 0x003D
+#define WM_CHANGEUISTATE 0x0127
+#define WM_UPDATEUISTATE 0x0128
+#define WM_QUERYUISTATE 0x0129
+#define WM_UNINITMENUPOPUP 0x0125
+#define WM_MENURBUTTONUP 290
+#define WM_MENUCOMMAND 0x0126
+#define WM_MENUGETOBJECT 0x0124
+#define WM_MENUDRAG 0x0123
+#define WM_APPCOMMAND 0x0319
+#define WM_NCXBUTTONDOWN 171
+#define WM_NCXBUTTONUP 172
+#define WM_NCXBUTTONDBLCLK 173
+#define WM_NCMOUSEHOVER 0x02A0
+#define WM_NCMOUSELEAVE 0x02A2
+#define EM_GETIMESTATUS 217
+#define EM_SETIMESTATUS 216
+#define VK_XBUTTON1 5
+#define VK_XBUTTON2 6
+#define VK_BROWSER_BACK 0xA6
+#define VK_BROWSER_FORWARD 0xA7
+#define VK_BROWSER_REFRESH 0xA8
+#define VK_BROWSER_STOP 0xA9
+#define VK_BROWSER_SEARCH 0xAA
+#define VK_BROWSER_FAVORITES 0xAB
+#define VK_BROWSER_HOME 0xAC
+#define VK_VOLUME_MUTE 0xAD
+#define VK_VOLUME_DOWN 0xAE
+#define VK_VOLUME_UP 0xAF
+#define VK_MEDIA_NEXT_TRACK 0xB0
+#define VK_MEDIA_PREV_TRACK 0xB1
+#define VK_MEDIA_STOP 0xB2
+#define VK_MEDIA_PLAY_PAUSE 0xB3
+#define VK_LAUNCH_MAIL 0xB4
+#define VK_LAUNCH_MEDIA_SELECT 0xB5
+#define VK_LAUNCH_APP1 0xB6
+#define VK_LAUNCH_APP2 0xB7
+#define VK_OEM_PLUS 0xBB
+#define VK_OEM_COMMA 0xBC
+#define VK_OEM_MINUS 0xBD
+#define VK_OEM_PERIOD 0xBE
+#define VK_OEM_102 0xE2
+#define VK_PACKET 0xE7
+#define MK_XBUTTON1 32
+#define MK_XBUTTON2 64
+#define FLASHW_STOP 0
+#define FLASHW_CAPTION 1
+#define FLASHW_TRAY 2
+#define FLASHW_ALL (FLASHW_CAPTION|FLASHW_TRAY)
+#define FLASHW_TIMER 4
+#define FLASHW_TIMERNOFG 12
+#define CHILDID_SELF 0
+#define OBJID_WINDOW 0x00000000
+#define OBJID_SYSMENU 0xFFFFFFFF
+#define OBJID_TITLEBAR 0xFFFFFFFE
+#define OBJID_MENU 0xFFFFFFFD
+#define OBJID_CLIENT 0xFFFFFFFC
+#define OBJID_VSCROLL 0xFFFFFFFB
+#define OBJID_HSCROLL 0xFFFFFFFA
+#define OBJID_SIZEGRIP 0xFFFFFFF9
+#define OBJID_CARET 0xFFFFFFF8
+#define OBJID_CURSOR 0xFFFFFFF7
+#define OBJID_ALERT 0xFFFFFFF6
+#define OBJID_SOUND 0xFFFFFFF5
+#define GUI_CARETBLINKING 0x00000001
+#define GUI_INMOVESIZE 0x00000002
+#define GUI_INMENUMODE 0x00000004
+#define GUI_SYSTEMMENUMODE 0x00000008
+#define GUI_POPUPMENUMODE 0x00000010
+#define WINEVENT_OUTOFCONTEXT 0x0000
+#define WINEVENT_SKIPOWNTHREAD 0x0001
+#define WINEVENT_SKIPOWNPROCESS 0x0002
+#define WINEVENT_INCONTEXT 0x0004
+#define AW_HOR_POSITIVE 0x00000001
+#define AW_HOR_NEGATIVE 0x00000002
+#define AW_VER_POSITIVE 0x00000004
+#define AW_VER_NEGATIVE 0x00000008
+#define AW_CENTER 0x00000010
+#define AW_HIDE 0x00010000
+#define AW_ACTIVATE 0x00020000
+#define AW_SLIDE 0x00040000
+#define AW_BLEND 0x00080000
+#define DEVICE_NOTIFY_WINDOW_HANDLE 0x00000000
+#define DEVICE_NOTIFY_SERVICE_HANDLE 0x00000001
+#define EVENT_MIN 0x00000001
+#define EVENT_SYSTEM_SOUND 0x00000001
+#define EVENT_SYSTEM_ALERT 0x00000002
+#define EVENT_SYSTEM_FOREGROUND 0x00000003
+#define EVENT_SYSTEM_MENUSTART 0x00000004
+#define EVENT_SYSTEM_MENUEND 0x00000005
+#define EVENT_SYSTEM_MENUPOPUPSTART 0x00000006
+#define EVENT_SYSTEM_MENUPOPUPEND 0x00000007
+#define EVENT_SYSTEM_CAPTURESTART 0x00000008
+#define EVENT_SYSTEM_CAPTUREEND 0x00000009
+#define EVENT_SYSTEM_MOVESIZESTART 0x0000000a
+#define EVENT_SYSTEM_MOVESIZEEND 0x0000000b
+#define EVENT_SYSTEM_CONTEXTHELPSTART 0x0000000c
+#define EVENT_SYSTEM_CONTEXTHELPEND 0x0000000d
+#define EVENT_SYSTEM_DRAGDROPSTART 0x0000000e
+#define EVENT_SYSTEM_DRAGDROPEND 0x0000000f
+#define EVENT_SYSTEM_DIALOGSTART 0x00000010
+#define EVENT_SYSTEM_DIALOGEND 0x00000011
+#define EVENT_SYSTEM_SCROLLINGSTART 0x00000012
+#define EVENT_SYSTEM_SCROLLINGEND 0x00000013
+#define EVENT_SYSTEM_SWITCHSTART 0x00000014
+#define EVENT_SYSTEM_SWITCHEND 0x00000015
+#define EVENT_SYSTEM_MINIMIZESTART 0x00000016
+#define EVENT_SYSTEM_MINIMIZEEND 0x00000017
+#define EVENT_OBJECT_CREATE 0x00008000
+#define EVENT_OBJECT_DESTROY 0x00008001
+#define EVENT_OBJECT_SHOW 0x00008002
+#define EVENT_OBJECT_HIDE 0x00008003
+#define EVENT_OBJECT_REORDER 0x00008004
+#define EVENT_OBJECT_FOCUS 0x00008005
+#define EVENT_OBJECT_SELECTION 0x00008006
+#define EVENT_OBJECT_SELECTIONADD 0x00008007
+#define EVENT_OBJECT_SELECTIONREMOVE 0x00008008
+#define EVENT_OBJECT_SELECTIONWITHIN 0x00008009
+#define EVENT_OBJECT_STATECHANGE 0x0000800a
+#define EVENT_OBJECT_LOCATIONCHANGE 0x0000800b
+#define EVENT_OBJECT_NAMECHANGE 0x0000800c
+#define EVENT_OBJECT_DESCRIPTIONCHANGE 0x0000800d
+#define EVENT_OBJECT_VALUECHANGE 0x0000800e
+#define EVENT_OBJECT_PARENTCHANGE 0x0000800f
+#define EVENT_OBJECT_HELPCHANGE 0x00008010
+#define EVENT_OBJECT_DEFACTIONCHANGE 0x00008011
+#define EVENT_OBJECT_ACCELERATORCHANGE 0x00008012
+#define EVENT_MAX 0x7fffffff
+#define LWA_COLORKEY 0x01
+#define LWA_ALPHA 0x02
+#define ULW_COLORKEY 0x01
+#define ULW_ALPHA 0x02
+#define ULW_OPAQUE 0x04
+#define GR_GDIOBJECTS 0
+#define GR_USEROBJECTS 1
+#define XBUTTON1 0x0001
+#define XBUTTON2 0x0002
+
+#ifndef RC_INVOKED
+typedef struct tagGUITHREADINFO {
+ DWORD cbSize;
+ DWORD flags;
+ HWND hwndActive;
+ HWND hwndFocus;
+ HWND hwndCapture;
+ HWND hwndMenuOwner;
+ HWND hwndMoveSize;
+ HWND hwndCaret;
+ RECT rcCaret;
+} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
+typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
+WINUSERAPI BOOL WINAPI AnimateWindow(HWND,DWORD,DWORD);
+WINUSERAPI BOOL WINAPI EndTask(HWND,BOOL,BOOL);
+WINUSERAPI DWORD WINAPI GetGuiResources(HANDLE,DWORD);
+WINUSERAPI HWND WINAPI GetShellWindow(void);
+WINUSERAPI BOOL WINAPI GetGUIThreadInfo(DWORD,LPGUITHREADINFO);
+WINUSERAPI BOOL WINAPI GetProcessDefaultLayout(DWORD*);
+WINUSERAPI BOOL WINAPI IsHungAppWindow(HWND);
+WINUSERAPI BOOL WINAPI LockWorkStation(void);
+WINUSERAPI void WINAPI NotifyWinEvent(DWORD,HWND,LONG,LONG);
+WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationA(HANDLE,LPVOID,DWORD);
+WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationW(HANDLE,LPVOID,DWORD);
+WINUSERAPI BOOL WINAPI SetProcessDefaultLayout(DWORD);
+WINUSERAPI HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
+WINUSERAPI VOID WINAPI SwitchToThisWindow(HWND,BOOL);
+WINUSERAPI BOOL WINAPI UnhookWinEvent(HWINEVENTHOOK);
+WINUSERAPI BOOL WINAPI UserHandleGrantAccess(HANDLE,HANDLE,BOOL);
+WINUSERAPI BOOL WINAPI SetLayeredWindowAttributes(HWND,COLORREF,BYTE,DWORD);
+
+#ifndef NOGDI
+WINUSERAPI BOOL WINAPI UpdateLayeredWindow(HWND,HDC,POINT*,SIZE*,HDC,POINT*,COLORREF,BLENDFUNCTION*,DWORD);
+#endif /* ! NOGDI */
+
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= 0x0500) */
+
+#if (_WIN32_WINNT >= 0x0501)
+#define BSF_LUID 0x00000400
+#define BSF_RETURNHDESK 0x00000200
+#define DC_BUTTONS 0x00001000
+#define EWX_FORCEIFHUNG 16
+#define CS_DROPSHADOW 0x20000
+#define QS_ALLEVENTS 1215
+#define QS_ALLINPUT 1279
+#define QS_INPUT 1031
+#define QS_RAWINPUT 1024
+#define HSHELL_WINDOWREPLACED 13
+#define HSHELL_WINDOWREPLACING 14
+#define SPI_GETDROPSHADOW 0x1024
+#define SPI_GETFLATMENU 0x1022
+#define SPI_GETFOCUSBORDERHEIGHT 0x2010
+#define SPI_GETFOCUSBORDERWIDTH 0x200E
+#define SPI_GETFONTSMOOTHINGCONTRAST 0x200C
+#define SPI_GETFONTSMOOTHINGTYPE 0x200A
+#define SPI_GETMOUSECLICKLOCK 0x101E
+#define SPI_GETMOUSECLICKLOCKTIME 0x2008
+#define SPI_GETMOUSESONAR 0x101C
+#define SPI_GETMOUSEVANISH 0x1020
+#define SPI_SETDROPSHADOW 0x1025
+#define SPI_SETFLATMENU 0x1023
+#define SPI_SETFOCUSBORDERHEIGHT 0x2011
+#define SPI_SETFOCUSBORDERWIDTH 0x200F
+#define SPI_SETFONTSMOOTHINGCONTRAST 0x200D
+#define SPI_SETFONTSMOOTHINGTYPE 0x200B
+#define SPI_SETMOUSECLICKLOCK 0x101F
+#define SPI_SETMOUSECLICKLOCKTIME 0x2009
+#define SPI_SETMOUSESONAR 0x101D
+#define SPI_SETMOUSEVANISH 0x1021
+#define WM_INPUT 0x00FF
+#undef WM_KEYLAST
+#define WM_KEYLAST 265
+#define WM_UNICHAR 265
+#define UNICODE_NOCHAR 0xffff
+#define WM_XBUTTONDOWN 523
+#define WM_XBUTTONUP 524
+#define WM_XBUTTONDBLCLK 525
+#undef WM_MOUSELAST
+#define WM_MOUSELAST 525
+#define CB_SETMINVISIBLE 0x1701
+#define CB_GETMINVISIBLE 0x1702
+#define ICON_SMALL2 2
+#define GUI_16BITTASK 0x00000020
+#define DEVICE_NOTIFY_ALL_INTERFACE_CLASSES 0x00000004
+#define EVENT_CONSOLE_CARET 0x00004001
+#define CONSOLE_CARET_SELECTION 0x00000001
+#define CONSOLE_CARET_VISIBLE 0x00000002
+#define EVENT_CONSOLE_UPDATE_REGION 0x00004002
+#define EVENT_CONSOLE_UPDATE_SIMPLE 0x00004003
+#define EVENT_CONSOLE_UPDATE_SCROLL 0x00004004
+#define EVENT_CONSOLE_LAYOUT 0x00004005
+#define EVENT_CONSOLE_START_APPLICATION 0x00004006
+#define CONSOLE_APPLICATION_16BIT 0x00000001
+#define EVENT_CONSOLE_END_APPLICATION 0x00004007
+#define FE_FONTSMOOTHINGSTANDARD 0x0001
+#define FE_FONTSMOOTHINGCLEARTYPE 0x0002
+#define PW_CLIENTONLY 0x00000001
+#define RIM_INPUT 0x00000000
+#define RIM_INPUTSINK 0x00000001
+#define RIM_TYPEMOUSE 0x00000000
+#define RIM_TYPEKEYBOARD 0x00000001
+#define RIM_TYPEHID 0x00000002
+#define MOUSE_MOVE_RELATIVE 0x00000000
+#define MOUSE_MOVE_ABSOLUTE 0x00000001
+#define MOUSE_VIRTUAL_DESKTOP 0x00000002
+#define MOUSE_ATTRIBUTES_CHANGED 0x00000004
+#define RI_MOUSE_LEFT_BUTTON_DOWN 0x0001
+#define RI_MOUSE_LEFT_BUTTON_UP 0x0002
+#define RI_MOUSE_RIGHT_BUTTON_DOWN 0x0004
+#define RI_MOUSE_RIGHT_BUTTON_UP 0x0008
+#define RI_MOUSE_MIDDLE_BUTTON_DOWN 0x0010
+#define RI_MOUSE_MIDDLE_BUTTON_UP 0x0020
+#define RI_MOUSE_BUTTON_1_DOWN RI_MOUSE_LEFT_BUTTON_DOWN
+#define RI_MOUSE_BUTTON_1_UP RI_MOUSE_LEFT_BUTTON_UP
+#define RI_MOUSE_BUTTON_2_DOWN RI_MOUSE_RIGHT_BUTTON_DOWN
+#define RI_MOUSE_BUTTON_2_UP RI_MOUSE_RIGHT_BUTTON_UP
+#define RI_MOUSE_BUTTON_3_DOWN RI_MOUSE_MIDDLE_BUTTON_DOWN
+#define RI_MOUSE_BUTTON_3_UP RI_MOUSE_MIDDLE_BUTTON_UP
+#define RI_MOUSE_BUTTON_4_DOWN 0x0040
+#define RI_MOUSE_BUTTON_4_UP 0x0080
+#define RI_MOUSE_BUTTON_5_DOWN 0x0100
+#define RI_MOUSE_BUTTON_5_UP 0x0200
+#define RI_MOUSE_WHEEL 0x0400
+#define KEYBOARD_OVERRUN_MAKE_CODE 0x00ff
+#define RI_KEY_MAKE 0x0000
+#define RI_KEY_BREAK 0x0001
+#define RI_KEY_E0 0x0002
+#define RI_KEY_E1 0x0004
+#define RI_KEY_TERMSRV_SET_LED 0x0008
+#define RI_KEY_TERMSRV_SHADOW 0x0010
+#define RID_INPUT 0x10000003
+#define RID_HEADER 0x10000005
+#define RIDI_PREPARSEDDATA 0x20000005
+#define RIDI_DEVICENAME 0x20000007
+#define RIDI_DEVICEINFO 0x2000000b
+#define RIDEV_REMOVE 0x00000001
+#define RIDEV_EXCLUDE 0x00000010
+#define RIDEV_PAGEONLY 0x00000020
+#define RIDEV_NOLEGACY 0x00000030
+#define RIDEV_INPUTSINK 0x00000100
+#define RIDEV_CAPTUREMOUSE 0x00000200
+#define RIDEV_NOHOTKEYS 0x00000200
+#define RIDEV_APPKEYS 0x00000400
+
+#ifndef RC_INVOKED
+typedef struct {
+ UINT cbSize;
+ HDESK hdesk;
+ HWND hwnd;
+ LUID luid;
+} BSMINFO,*PBSMINFO;
+DECLARE_HANDLE(HRAWINPUT);
+typedef struct tagRAWINPUTHEADER {
+ DWORD dwType;
+ DWORD dwSize;
+ HANDLE hDevice;
+ WPARAM wParam;
+} RAWINPUTHEADER,*PRAWINPUTHEADER;
+typedef struct tagRAWMOUSE {
+ USHORT usFlags;
+ _ANONYMOUS_UNION union {
+ ULONG ulButtons;
+ _ANONYMOUS_STRUCT struct {
+ USHORT usButtonFlags;
+ USHORT usButtonData;
+ };
+ };
+ ULONG ulRawButtons;
+ LONG lLastX;
+ LONG lLastY;
+ ULONG ulExtraInformation;
+} RAWMOUSE,*PRAWMOUSE,*LPRAWMOUSE;
+typedef struct tagRAWKEYBOARD {
+ USHORT MakeCode;
+ USHORT Flags;
+ USHORT Reserved;
+ USHORT VKey;
+ UINT Message;
+ ULONG ExtraInformation;
+} RAWKEYBOARD,*PRAWKEYBOARD,*LPRAWKEYBOARD;
+typedef struct tagRAWHID {
+ DWORD dwSizeHid;
+ DWORD dwCount;
+ BYTE bRawData;
+} RAWHID,*PRAWHID,*LPRAWHID;
+typedef struct tagRAWINPUT {
+ RAWINPUTHEADER header;
+ union {
+ RAWMOUSE mouse;
+ RAWKEYBOARD keyboard;
+ RAWHID hid;
+ } data;
+} RAWINPUT,*PRAWINPUT,*LPRAWINPUT;
+typedef struct tagRAWINPUTDEVICE {
+ USHORT usUsagePage;
+ USHORT usUsage;
+ DWORD dwFlags;
+ HWND hwndTarget;
+} RAWINPUTDEVICE,*PRAWINPUTDEVICE,*LPRAWINPUTDEVICE;
+typedef const RAWINPUTDEVICE *PCRAWINPUTDEVICE;
+typedef struct tagRAWINPUTDEVICELIST {
+ HANDLE hDevice;
+ DWORD dwType;
+} RAWINPUTDEVICELIST,*PRAWINPUTDEVICELIST;
+typedef struct tagRID_DEVICE_INFO_MOUSE {
+ DWORD dwId;
+ DWORD dwNumberOfButtons;
+ DWORD dwSampleRate;
+ BOOL fHasHorizontalWheel;
+} RID_DEVICE_INFO_MOUSE, *PRID_DEVICE_INFO_MOUSE;
+typedef struct tagRID_DEVICE_INFO_KEYBOARD {
+ DWORD dwType;
+ DWORD dwSubType;
+ DWORD dwKeyboardMode;
+ DWORD dwNumberOfFunctionKeys;
+ DWORD dwNumberOfIndicators;
+ DWORD dwNumberOfKeysTotal;
+} RID_DEVICE_INFO_KEYBOARD, *PRID_DEVICE_INFO_KEYBOARD;
+typedef struct tagRID_DEVICE_INFO_HID {
+ DWORD dwVendorId;
+ DWORD dwProductId;
+ DWORD dwVersionNumber;
+ USHORT usUsagePage;
+ USHORT usUsage;
+} RID_DEVICE_INFO_HID, *PRID_DEVICE_INFO_HID;
+typedef struct tagRID_DEVICE_INFO {
+ DWORD cbSize;
+ DWORD dwType;
+ _ANONYMOUS_UNION union {
+ RID_DEVICE_INFO_MOUSE mouse;
+ RID_DEVICE_INFO_KEYBOARD keyboard;
+ RID_DEVICE_INFO_HID hid;
+ } DUMMYUNIONNAME;
+} RID_DEVICE_INFO, *PRID_DEVICE_INFO, *LPRID_DEVICE_INFO;
+WINUSERAPI long WINAPI BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
+WINUSERAPI long WINAPI BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
+WINUSERAPI LRESULT WINAPI DefRawInputProc(PRAWINPUT*,INT,UINT);
+WINUSERAPI UINT WINAPI GetRawInputBuffer(PRAWINPUT,PUINT,UINT);
+WINUSERAPI UINT WINAPI GetRawInputData(HRAWINPUT,UINT,LPVOID,PUINT,UINT);
+WINUSERAPI UINT WINAPI GetRawInputDeviceInfoA(HANDLE,UINT,LPVOID,PUINT);
+WINUSERAPI UINT WINAPI GetRawInputDeviceInfoW(HANDLE,UINT,LPVOID,PUINT);
+WINUSERAPI UINT WINAPI GetRawInputDeviceList(PRAWINPUTDEVICELIST,PUINT,UINT);
+WINUSERAPI UINT WINAPI GetRegisteredRawInputDevices(PRAWINPUTDEVICE,PUINT,UINT);
+WINUSERAPI BOOL WINAPI IsGUIThread(BOOL);
+WINUSERAPI BOOL WINAPI IsWinEventHookInstalled(DWORD);
+WINUSERAPI BOOL WINAPI PrintWindow(HWND,HDC,UINT);
+WINUSERAPI BOOL WINAPI RegisterRawInputDevices(PCRAWINPUTDEVICE,UINT,UINT);
+WINUSERAPI BOOL WINAPI GetLayeredWindowAttributes(HWND,COLORREF*,BYTE*,DWORD*);
+#endif /* ! RC_INVOKED */
+
+#else
+
+#define QS_ALLEVENTS 191
+#define QS_ALLINPUT 255
+#define QS_INPUT 7
+#endif /* (_WIN32_WINNT >= 0x0501) */
+
+#if (_WIN32_WINNT >= 0x0600)
+#define PBT_POWERSETTINGCHANGE 32787
+
+#ifndef RC_INVOKED
+typedef HANDLE HPOWERNOTIFY;
+
+typedef struct {
+ GUID PowerSetting;
+ DWORD DataLength;
+ UCHAR Data[1];
+} POWERBROADCAST_SETTING, *PPOWERBROADCAST_SETTING;
+
+extern const GUID GUID_POWERSCHEME_PERSONALITY;
+extern const GUID GUID_MIN_POWER_SAVINGS;
+extern const GUID GUID_MAX_POWER_SAVINGS;
+extern const GUID GUID_TYPICAL_POWER_SAVINGS;
+extern const GUID GUID_ACDC_POWER_SOURCE;
+extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
+extern const GUID GUID_IDLE_BACKGROUND_TASK;
+extern const GUID GUID_SYSTEM_AWAYMODE;
+extern const GUID GUID_MONITOR_POWER_ON;
+WINUSERAPI HPOWERNOTIFY WINAPI RegisterPowerSettingNotification(HANDLE,LPCGUID,DWORD);
+WINUSERAPI BOOL WINAPI UnregisterPowerSettingNotification(HPOWERNOTIFY);
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= 0x0600) */
+
+#if (_WIN32_WINNT >= 0x0601)
+#define WM_TOUCHMOVE 576
+#define WM_TOUCHDOWN 577
+#define WM_TOUCHUP 578
+#define TOUCHEVENTF_DOWN 0x0001
+#define TOUCHEVENTF_INRANGE 0x0008
+#define TOUCHEVENTF_MOVE 0x0002
+#define TOUCHEVENTF_NOCOALESCE 0x0020
+#define TOUCHEVENTF_PALM 0x0080
+#define TOUCHEVENTF_PEN 0x0040
+#define TOUCHEVENTF_PRIMARY 0x0010
+#define TOUCHEVENTF_UP 0x0004
+#define TOUCHEVENTMASKF_CONTACTAREA 0x0004
+#define TOUCHEVENTMASKF_EXTRAINFO 0x0002
+#define TOUCHEVENTMASKF_TIMEFROMSYSTEM 0x0001
+
+#ifndef RC_INVOKED
+typedef struct _TOUCHINPUT {
+ LONG x;
+ LONG y;
+ HANDLE hSource;
+ DWORD dwID;
+ DWORD dwFlags;
+ DWORD dwMask;
+ DWORD dwTime;
+ ULONG_PTR dwExtraInfo;
+ DWORD cxContact;
+ DWORD cyContact;
+} TOUCHINPUT,
+ *PTOUCHINPUT;
+BOOL WINAPI CloseTouchInputHandle(HANDLE hTouchInput);
+BOOL WINAPI GetTouchInputInfo(HANDLE hTouchInput, UINT cInputs, PTOUCHINPUT pInputs, int cbSize);
+BOOL WINAPI IsTouchWindow(HWND hWnd, PULONG pulFlags);
+BOOL WINAPI RegisterTouchWindow(HWND hWnd, ULONG ulFlags);
+BOOL WINAPI UnregisterTouchWindow(HWND hWnd);
+#endif /* ! RC_INVOKED */
+
+#endif /* (_WIN32_WINNT >= 0x0601) */
+
+#ifdef __cplusplus
+}
+#endif
+
#endif
#ifndef _WINVER_H
#define _WINVER_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
+
#define VS_FILE_INFO RT_VERSION
#define VS_VERSION_INFO 1
#define VS_USER_DEFINED 100
#define VIF_CANNOTREADSRC 65536
#define VIF_CANNOTREADDST 0x20000
#define VIF_BUFFTOOSMALL 0x40000
+
#ifndef RC_INVOKED
typedef struct tagVS_FIXEDFILEINFO {
DWORD dwSignature;
DWORD WINAPI VerLanguageNameW(DWORD,LPWSTR,DWORD);
BOOL WINAPI VerQueryValueA(LPCVOID,LPCSTR,LPVOID*,PUINT);
BOOL WINAPI VerQueryValueW(LPCVOID,LPCWSTR,LPVOID*,PUINT);
-#ifdef UNICODE
-#define VerFindFile VerFindFileW
-#define VerQueryValue VerQueryValueW
-#define VerInstallFile VerInstallFileW
-#define GetFileVersionInfoSize GetFileVersionInfoSizeW
-#define GetFileVersionInfo GetFileVersionInfoW
-#define VerLanguageName VerLanguageNameW
-#define VerQueryValue VerQueryValueW
-#else
-#define VerQueryValue VerQueryValueA
-#define VerFindFile VerFindFileA
-#define VerInstallFile VerInstallFileA
-#define GetFileVersionInfoSize GetFileVersionInfoSizeA
-#define GetFileVersionInfo GetFileVersionInfoA
-#define VerLanguageName VerLanguageNameA
-#define VerQueryValue VerQueryValueA
-#endif
-#endif
+
+#define VerFindFile __AW(VerFindFile)
+#define VerQueryValue __AW(VerQueryValue)
+#define VerInstallFile __AW(VerInstallFile)
+#define GetFileVersionInfoSize __AW(GetFileVersionInfoSize)
+#define GetFileVersionInfo __AW(GetFileVersionInfo)
+#define VerLanguageName __AW(VerLanguageName)
+#define VerQueryValue __AW(VerQueryValue)
+#endif /* ! RC_INVOKED */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WS2SPI_H
#define _WS2SPI_H
#pragma GCC system_header
+#include <_mingw.h>
#include <winsock2.h>
#ifdef __cplusplus
}
#endif /* __cplusplus */
+
#endif
#ifndef _WS2TCPIP_H
#define _WS2TCPIP_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* TCP/IP specific extensions in Windows Sockets 2
#endif
#include <winsock2.h>
+
#ifdef __cplusplus
extern "C" {
#endif
struct addrinfo *ai_next;
};
-#if (_WIN32_WINNT >= 0x0501)
-void WSAAPI freeaddrinfo (struct addrinfo*);
-int WSAAPI getaddrinfo (const char*,const char*,const struct addrinfo*,
- struct addrinfo**);
-int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
- char*,DWORD,int);
-#else
-/* FIXME: Need WS protocol-independent API helpers. */
-#endif
-
static __inline char*
gai_strerrorA(int ecode)
{
FormatMessageW(dwFlags, NULL, ecode, dwLanguageId, (LPWSTR)message, 1024, NULL);
return message;
}
-#ifdef UNICODE
-#define gai_strerror gai_strerrorW
-#else
-#define gai_strerror gai_strerrorA
-#endif
+
+#define gai_strerror __AW(gai_strerror)
/* Some older IPv4/IPv6 compatibility stuff */
} OLD_INTERFACE_INFO;
*/
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+/**
+ * For WIN2K the user includes wspiapi.h for these functions.
+ */
+void WSAAPI freeaddrinfo (struct addrinfo*);
+int WSAAPI getaddrinfo (const char*,const char*,const struct addrinfo*,
+ struct addrinfo**);
+int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
+ char*,DWORD,int);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WSAHELP_H
#define _WSAHELP_H
#pragma GCC system_header
+#include <_mingw.h>
#include <winsock2.h>
#include <ntsecapi.h>
+
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#ifndef _WSIPX_H
#define _WSIPX_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _WSNETBS_H
#define _WSNETBS_H
#pragma GCC system_header
+#include <_mingw.h>
#define NETBIOS_NAME_LENGTH 16
#define NETBIOS_UNIQUE_NAME 0
_s->snb_name[NETBIOS_NAME_LENGTH-1] = (_port); \
}
#endif /* RC_INVOKED */
+
#endif
#ifndef _WTSAPI32_H
#define _WTSAPI32_H
#pragma GCC system_header
+#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
-#if (_WIN32_WINNT >= 0x0501)
- // session notification message
-#define WM_WTSSESSION_CHANGE 0x02B1
-
-typedef enum _WTS_INFO_CLASS {
- WTSInitialProgram = 0,
- WTSApplicationName = 1,
- WTSWorkingDirectory = 2,
- WTSOEMId = 3,
- WTSSessionId = 4,
- WTSUserName = 5,
- WTSWinStationName = 6,
- WTSDomainName = 7,
- WTSConnectState = 8,
- WTSClientBuildNumber = 9,
- WTSClientName = 10,
- WTSClientDirectory = 11,
- WTSClientProductId = 12,
- WTSClientHardwareId = 13,
- WTSClientAddress = 14,
- WTSClientDisplay = 15,
- WTSClientProtocolType = 16,
- WTSIdleTime = 17,
- WTSLogonTime = 18,
- WTSIncomingBytes = 19,
- WTSOutgoingBytes = 20,
- WTSIncomingFrames = 21,
- WTSOutgoingFrames = 22,
- WTSClientInfo = 23,
- WTSSessionInfo = 24
-} WTS_INFO_CLASS;
-
-typedef enum _WTS_CONNECTSTATE_CLASS {
- WTSActive,
- WTSConnected,
- WTSConnectQuery,
- WTSShadow,
- WTSDisconnected,
- WTSIdle,
- WTSListen,
- WTSReset,
- WTSDown,
- WTSInit
-} WTS_CONNECTSTATE_CLASS;
-
- // session notification message flags
-#define WTS_CONSOLE_CONNECT 0x1
-#define WTS_CONSOLE_DISCONNECT 0x2
-#define WTS_REMOTE_CONNECT 0x3
-#define WTS_REMOTE_DISCONNECT 0x4
-#define WTS_SESSION_LOGON 0x5
-#define WTS_SESSION_LOGOFF 0x6
-#define WTS_SESSION_LOCK 0x7
-#define WTS_SESSION_UNLOCK 0x8
-#define WTS_SESSION_REMOTE_CONTROL 0x9
-
- // WTSRegisterSessionNotifiction flags
-#define NOTIFY_FOR_THIS_SESSION 0
-#define NOTIFY_FOR_ALL_SESSIONS 1
-
-BOOL WINAPI WTSRegisterSessionNotification(HWND hWnd, DWORD dwFlags);
-BOOL WINAPI WTSUnRegisterSessionNotification(HWND hWnd);
-BOOL WINAPI WTSQueryUserToken(ULONG SessionId, PHANDLE pToken);
-
-#endif /* _WIN32_WINNT >= 0x0501 */
-
#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
-
typedef struct _WTS_SESSION_INFOW {
DWORD SessionId;
LPWSTR pWinStationName;
WTS_CONNECTSTATE_CLASS State;
} WTS_SESSION_INFOA, *PWTS_SESSION_INFOA;
-#ifdef UNICODE
-#define WTS_SESSION_INFO WTS_SESSION_INFOW
-#define PWTS_SESSION_INFO PWTS_SESSION_INFOW
-#else
-#define WTS_SESSION_INFO WTS_SESSION_INFOA
-#define PWTS_SESSION_INFO PWTS_SESSION_INFOA
-#endif
+#define WTS_SESSION_INFO __AW(WTS_SESSION_INFO)
+#define PWTS_SESSION_INFO __AW(PWTS_SESSION_INFO)
// WTSWaitSystemEvent local server handle
#define WTS_CURRENT_SERVER_HANDLE 0
PDWORD pCount);
void WINAPI WTSFreeMemory(PVOID pMemory);
-#ifdef UNICODE
-#define WTSEnumerateSessions WTSEnumerateSessionsW
-#define WTSQuerySessionInformation WTSQuerySessionInformationW
-#else
-#define WTSEnumerateSessions WTSEnumerateSessionsA
-#define WTSQuerySessionInformation WTSQuerySessionInformationA
-#endif
+#define WTSEnumerateSessions __AW(WTSEnumerateSessions)
+#define WTSQuerySessionInformation __AW(WTSQuerySessionInformation)
BOOL WTSSendMessageA(
HANDLE hServer,
BOOL bWait
);
-#ifdef UNICODE
-#define WTSSendMessage WTSSendMessageW
-#else
-#define WTSSendMessage WTSSendMessageA
-#endif
+#define WTSSendMessage __AW(WTSSendMessage)
BOOL WTSVirtualChannelClose(
__in HANDLE hChannelHandle
__in LPSTR pVirtualName
);
-#if _WIN32_WINNT >= _WIN32_WINNT_VISTA
-HANDLE WTSVirtualChannelOpenEx(
- __in DWORD SessionId,
- __in LPSTR pVirtualName,
- __in DWORD flags
-);
-#endif
-
BOOL WTSVirtualChannelPurgeInput(
__in HANDLE hChannelHandle
);
__in HANDLE hChannelHandle
);
-#if _WIN32_WINNT >= _WIN32_WINNT_WINXP
-BOOL WTSVirtualChannelQuery(
- __in HANDLE hChannelHandle,
- __in WTS_VIRTUAL_CLASS WtsVirtualClass,
- __out PVOID *ppBuffer,
- __out DWORD *pBytesReturned
-);
-#endif
-
BOOL WTSVirtualChannelRead(
__in HANDLE hChannelHandle,
__in ULONG TimeOut,
__in ULONG Length,
__out PULONG pBytesWritten
);
+#endif /* _WIN32_WINNT >= _WIN32_WINNT_WIN2K */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+ // session notification message
+#define WM_WTSSESSION_CHANGE 0x02B1
+
+typedef enum _WTS_INFO_CLASS {
+ WTSInitialProgram = 0,
+ WTSApplicationName = 1,
+ WTSWorkingDirectory = 2,
+ WTSOEMId = 3,
+ WTSSessionId = 4,
+ WTSUserName = 5,
+ WTSWinStationName = 6,
+ WTSDomainName = 7,
+ WTSConnectState = 8,
+ WTSClientBuildNumber = 9,
+ WTSClientName = 10,
+ WTSClientDirectory = 11,
+ WTSClientProductId = 12,
+ WTSClientHardwareId = 13,
+ WTSClientAddress = 14,
+ WTSClientDisplay = 15,
+ WTSClientProtocolType = 16,
+ WTSIdleTime = 17,
+ WTSLogonTime = 18,
+ WTSIncomingBytes = 19,
+ WTSOutgoingBytes = 20,
+ WTSIncomingFrames = 21,
+ WTSOutgoingFrames = 22,
+ WTSClientInfo = 23,
+ WTSSessionInfo = 24
+} WTS_INFO_CLASS;
+
+typedef enum _WTS_CONNECTSTATE_CLASS {
+ WTSActive,
+ WTSConnected,
+ WTSConnectQuery,
+ WTSShadow,
+ WTSDisconnected,
+ WTSIdle,
+ WTSListen,
+ WTSReset,
+ WTSDown,
+ WTSInit
+} WTS_CONNECTSTATE_CLASS;
+
+ // session notification message flags
+#define WTS_CONSOLE_CONNECT 0x1
+#define WTS_CONSOLE_DISCONNECT 0x2
+#define WTS_REMOTE_CONNECT 0x3
+#define WTS_REMOTE_DISCONNECT 0x4
+#define WTS_SESSION_LOGON 0x5
+#define WTS_SESSION_LOGOFF 0x6
+#define WTS_SESSION_LOCK 0x7
+#define WTS_SESSION_UNLOCK 0x8
+#define WTS_SESSION_REMOTE_CONTROL 0x9
+
+ // WTSRegisterSessionNotifiction flags
+#define NOTIFY_FOR_THIS_SESSION 0
+#define NOTIFY_FOR_ALL_SESSIONS 1
+
+BOOL WINAPI WTSRegisterSessionNotification(HWND hWnd, DWORD dwFlags);
+BOOL WINAPI WTSUnRegisterSessionNotification(HWND hWnd);
+BOOL WINAPI WTSQueryUserToken(ULONG SessionId, PHANDLE pToken);
+
+BOOL WTSVirtualChannelQuery(
+ __in HANDLE hChannelHandle,
+ __in WTS_VIRTUAL_CLASS WtsVirtualClass,
+ __out PVOID *ppBuffer,
+ __out DWORD *pBytesReturned
+);
+#endif /* _WIN32_WINNT >= _WIN32_WINNT_WINXP */
-#endif /* _WIN32_WINNT >= 0x0500 */
+#if _WIN32_WINNT >= _WIN32_WINNT_VISTA
+HANDLE WTSVirtualChannelOpenEx(
+ __in DWORD SessionId,
+ __in LPSTR pVirtualName,
+ __in DWORD flags
+);
+#endif
#ifdef __cplusplus
}
#ifndef _WTYPES_H
#define _WTYPES_H
#pragma GCC system_header
+#include <_mingw.h>
#include <rpc.h>
#include <rpcndr.h>
BYTE *pBlobData;
} BLOB,*PBLOB,*LPBLOB;
#endif
+
typedef enum tagDVASPECT {
DVASPECT_CONTENT=1,
DVASPECT_THUMBNAIL=2,
typedef LPCWSTR LPCOLESTR;
#define OLESTR(s) L##s
#else
+
typedef char OLECHAR;
typedef LPSTR LPOLESTR;
typedef LPCSTR LPCOLESTR;
#define OLESTR(s) s
#endif
+
typedef unsigned short VARTYPE;
typedef short VARIANT_BOOL;
typedef VARIANT_BOOL _VARIANT_BOOL;
} DECIMAL;
typedef DECIMAL *LPDECIMAL;
#define DECIMAL_NEG ((BYTE)0x80)
+
#ifdef NONAMELESSUNION
#define DECIMAL_SETZERO(d) {(d).DUMMYUNIONNAME2.Lo64=(d).Hi32=(d).DUMMYUNIONNAME.signscale=0;}
#else
+
#define DECIMAL_SETZERO(d) {(d).Lo64=(d).Hi32=(d).signscale=0;}
#endif
+
typedef void *HMETAFILEPICT;
+
#ifdef __cplusplus
}
#endif
+
#endif
#ifndef _XPTRDEFS_H
#define _XPTRDEFS_H
#pragma GCC system_header
+#include <_mingw.h>
/*--- DirectShow Reference - DirectShow Structures - TIMECODE_SAMPLE Structure */
#define ED_DEVCAP_ATN_READ 0x13B7
#ifndef _ZMOUSE_H
#define _ZMOUSE_H
#pragma GCC system_header
+#include <_mingw.h>
/*
* FIXME: This file is obviously horribly incomplete!