diff --git a/reactos/include/psdk/winbase.h b/reactos/include/psdk/winbase.h index 64cb5a2c428..cf889169d5c 100644 --- a/reactos/include/psdk/winbase.h +++ b/reactos/include/psdk/winbase.h @@ -572,6 +572,7 @@ extern "C" { #endif #ifndef RC_INVOKED + #ifndef _FILETIME_ #define _FILETIME_ typedef struct _FILETIME { @@ -579,6 +580,7 @@ typedef struct _FILETIME { DWORD dwHighDateTime; } FILETIME,*PFILETIME,*LPFILETIME; #endif + typedef struct _BY_HANDLE_FILE_INFORMATION { DWORD dwFileAttributes; FILETIME ftCreationTime; @@ -590,7 +592,8 @@ typedef struct _BY_HANDLE_FILE_INFORMATION { DWORD nNumberOfLinks; DWORD nFileIndexHigh; DWORD nFileIndexLow; -} BY_HANDLE_FILE_INFORMATION,*LPBY_HANDLE_FILE_INFORMATION; +} BY_HANDLE_FILE_INFORMATION,*PBY_HANDLE_FILE_INFORMATION,*LPBY_HANDLE_FILE_INFORMATION; + typedef struct _DCB { DWORD DCBlength; DWORD BaudRate; @@ -621,6 +624,7 @@ typedef struct _DCB { char EvtChar; WORD wReserved1; } DCB,*LPDCB; + typedef struct _COMM_CONFIG { DWORD dwSize; WORD wVersion; @@ -631,6 +635,7 @@ typedef struct _COMM_CONFIG { DWORD dwProviderSize; WCHAR wcProviderData[1]; } COMMCONFIG,*LPCOMMCONFIG; + typedef struct _COMMPROP { WORD wPacketLength; WORD wPacketVersion; @@ -651,6 +656,7 @@ typedef struct _COMMPROP { DWORD dwProvSpec2; WCHAR wcProvChar[1]; } COMMPROP,*LPCOMMPROP; + typedef struct _COMMTIMEOUTS { DWORD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; @@ -658,6 +664,7 @@ typedef struct _COMMTIMEOUTS { DWORD WriteTotalTimeoutMultiplier; DWORD WriteTotalTimeoutConstant; } COMMTIMEOUTS,*LPCOMMTIMEOUTS; + typedef struct _COMSTAT { DWORD fCtsHold:1; DWORD fDsrHold:1; @@ -670,7 +677,9 @@ typedef struct _COMSTAT { DWORD cbInQue; DWORD cbOutQue; } COMSTAT,*LPCOMSTAT; + typedef DWORD (WINAPI *LPTHREAD_START_ROUTINE)(LPVOID); + typedef struct _CREATE_PROCESS_DEBUG_INFO { HANDLE hFile; HANDLE hProcess; @@ -683,21 +692,26 @@ typedef struct _CREATE_PROCESS_DEBUG_INFO { LPVOID lpImageName; WORD fUnicode; } CREATE_PROCESS_DEBUG_INFO,*LPCREATE_PROCESS_DEBUG_INFO; + typedef struct _CREATE_THREAD_DEBUG_INFO { HANDLE hThread; LPVOID lpThreadLocalBase; LPTHREAD_START_ROUTINE lpStartAddress; } CREATE_THREAD_DEBUG_INFO,*LPCREATE_THREAD_DEBUG_INFO; + typedef struct _EXCEPTION_DEBUG_INFO { EXCEPTION_RECORD ExceptionRecord; DWORD dwFirstChance; } EXCEPTION_DEBUG_INFO,*LPEXCEPTION_DEBUG_INFO; + typedef struct _EXIT_THREAD_DEBUG_INFO { DWORD dwExitCode; } EXIT_THREAD_DEBUG_INFO,*LPEXIT_THREAD_DEBUG_INFO; + typedef struct _EXIT_PROCESS_DEBUG_INFO { DWORD dwExitCode; } EXIT_PROCESS_DEBUG_INFO,*LPEXIT_PROCESS_DEBUG_INFO; + typedef struct _LOAD_DLL_DEBUG_INFO { HANDLE hFile; LPVOID lpBaseOfDll; @@ -706,18 +720,22 @@ typedef struct _LOAD_DLL_DEBUG_INFO { LPVOID lpImageName; WORD fUnicode; } LOAD_DLL_DEBUG_INFO,*LPLOAD_DLL_DEBUG_INFO; + typedef struct _UNLOAD_DLL_DEBUG_INFO { LPVOID lpBaseOfDll; } UNLOAD_DLL_DEBUG_INFO,*LPUNLOAD_DLL_DEBUG_INFO; + typedef struct _OUTPUT_DEBUG_STRING_INFO { LPSTR lpDebugStringData; WORD fUnicode; WORD nDebugStringLength; } OUTPUT_DEBUG_STRING_INFO,*LPOUTPUT_DEBUG_STRING_INFO; + typedef struct _RIP_INFO { DWORD dwError; DWORD dwType; } RIP_INFO,*LPRIP_INFO; + typedef struct _DEBUG_EVENT { DWORD dwDebugEventCode; DWORD dwProcessId; @@ -734,6 +752,7 @@ typedef struct _DEBUG_EVENT { RIP_INFO RipInfo; } u; } DEBUG_EVENT,*LPDEBUG_EVENT; + typedef struct _OVERLAPPED { ULONG_PTR Internal; ULONG_PTR InternalHigh; @@ -741,6 +760,7 @@ typedef struct _OVERLAPPED { DWORD OffsetHigh; HANDLE hEvent; } OVERLAPPED,*POVERLAPPED,*LPOVERLAPPED; + typedef struct _STARTUPINFOA { DWORD cb; LPSTR lpReserved; @@ -761,6 +781,7 @@ typedef struct _STARTUPINFOA { HANDLE hStdOutput; HANDLE hStdError; } STARTUPINFOA,*LPSTARTUPINFOA; + typedef struct _STARTUPINFOW { DWORD cb; LPWSTR lpReserved; @@ -781,12 +802,14 @@ typedef struct _STARTUPINFOW { HANDLE hStdOutput; HANDLE hStdError; } STARTUPINFOW,*LPSTARTUPINFOW; + typedef struct _PROCESS_INFORMATION { HANDLE hProcess; HANDLE hThread; DWORD dwProcessId; DWORD dwThreadId; -} PROCESS_INFORMATION,*LPPROCESS_INFORMATION; +} PROCESS_INFORMATION,*PPROCESS_INFORMATION,*LPPROCESS_INFORMATION; + typedef struct _CRITICAL_SECTION_DEBUG { WORD Type; WORD CreatorBackTraceIndex; @@ -799,7 +822,8 @@ typedef struct _CRITICAL_SECTION_DEBUG { //#else //WORD SpareWORD; //#endif -} CRITICAL_SECTION_DEBUG,*PCRITICAL_SECTION_DEBUG; +} CRITICAL_SECTION_DEBUG,*PCRITICAL_SECTION_DEBUG,*LPCRITICAL_SECTION_DEBUG; + typedef struct _CRITICAL_SECTION { PCRITICAL_SECTION_DEBUG DebugInfo; LONG LockCount; @@ -808,6 +832,7 @@ typedef struct _CRITICAL_SECTION { HANDLE LockSemaphore; ULONG_PTR SpinCount; } CRITICAL_SECTION,*PCRITICAL_SECTION,*LPCRITICAL_SECTION; + #ifndef _SYSTEMTIME_ #define _SYSTEMTIME_ typedef struct _SYSTEMTIME { @@ -856,15 +881,18 @@ typedef struct _WIN32_FIND_DATAW { WCHAR cFileName[MAX_PATH]; WCHAR cAlternateFileName[14]; } WIN32_FIND_DATAW,*PWIN32_FIND_DATAW,*LPWIN32_FIND_DATAW; + #if (_WIN32_WINNT >= 0x0501) typedef enum _STREAM_INFO_LEVELS { FindStreamInfoStandard } STREAM_INFO_LEVELS; + typedef struct _WIN32_FIND_STREAM_DATA { LARGE_INTEGER StreamSize; WCHAR cStreamName[MAX_PATH + 36]; } WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA; #endif + typedef struct _WIN32_STREAM_ID { DWORD dwStreamId; DWORD dwStreamAttributes; @@ -872,11 +900,13 @@ typedef struct _WIN32_STREAM_ID { DWORD dwStreamNameSize; WCHAR cStreamName[ANYSIZE_ARRAY]; } WIN32_STREAM_ID, *LPWIN32_STREAM_ID; + #if (_WIN32_WINNT >= 0x0600) typedef enum _FILE_ID_TYPE { FileIdType, MaximumFileIdType } FILE_ID_TYPE, *PFILE_ID_TYPE; + typedef struct _FILE_ID_DESCRIPTOR { DWORD dwSize; FILE_ID_TYPE Type; @@ -885,30 +915,36 @@ typedef struct _FILE_ID_DESCRIPTOR { } DUMMYUNIONNAME; } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR; #endif + typedef enum _FINDEX_INFO_LEVELS { FindExInfoStandard, FindExInfoMaxInfoLevel } FINDEX_INFO_LEVELS; + typedef enum _FINDEX_SEARCH_OPS { FindExSearchNameMatch, FindExSearchLimitToDirectories, FindExSearchLimitToDevices, FindExSearchMaxSearchOp } FINDEX_SEARCH_OPS; + typedef struct tagHW_PROFILE_INFOA { DWORD dwDockInfo; CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; CHAR szHwProfileName[MAX_PROFILE_LEN]; } HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA; + typedef struct tagHW_PROFILE_INFOW { DWORD dwDockInfo; WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; WCHAR szHwProfileName[MAX_PROFILE_LEN]; } HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW; + typedef enum _GET_FILEEX_INFO_LEVELS { GetFileExInfoStandard, GetFileExMaxInfoLevel } GET_FILEEX_INFO_LEVELS; + typedef struct _SYSTEM_INFO { _ANONYMOUS_UNION union { DWORD dwOemId; @@ -927,6 +963,7 @@ typedef struct _SYSTEM_INFO { WORD wProcessorLevel; WORD wProcessorRevision; } SYSTEM_INFO,*LPSYSTEM_INFO; + typedef struct _SYSTEM_POWER_STATUS { BYTE ACLineStatus; BYTE BatteryFlag; @@ -935,6 +972,7 @@ typedef struct _SYSTEM_POWER_STATUS { DWORD BatteryLifeTime; DWORD BatteryFullLifeTime; } SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS; + typedef struct _TIME_ZONE_INFORMATION { LONG Bias; WCHAR StandardName[32]; @@ -943,7 +981,8 @@ typedef struct _TIME_ZONE_INFORMATION { WCHAR DaylightName[32]; SYSTEMTIME DaylightDate; LONG DaylightBias; -} TIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION; +} TIME_ZONE_INFORMATION,*PTIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION; + typedef struct _MEMORYSTATUS { DWORD dwLength; DWORD dwMemoryLoad; @@ -954,6 +993,7 @@ typedef struct _MEMORYSTATUS { DWORD dwTotalVirtual; DWORD dwAvailVirtual; } MEMORYSTATUS,*LPMEMORYSTATUS; + #if (_WIN32_WINNT >= 0x0500) typedef struct _MEMORYSTATUSEX { DWORD dwLength; @@ -967,6 +1007,7 @@ typedef struct _MEMORYSTATUSEX { DWORDLONG ullAvailExtendedVirtual; } MEMORYSTATUSEX, *LPMEMORYSTATUSEX; #endif + #ifndef _LDT_ENTRY_DEFINED #define _LDT_ENTRY_DEFINED typedef struct _LDT_ENTRY { @@ -994,6 +1035,7 @@ typedef struct _LDT_ENTRY { } HighWord; } LDT_ENTRY,*PLDT_ENTRY,*LPLDT_ENTRY; #endif + typedef struct _PROCESS_HEAP_ENTRY { PVOID lpData; DWORD cbData; @@ -1012,7 +1054,8 @@ typedef struct _PROCESS_HEAP_ENTRY { LPVOID lpLastBlock; } Region; } DUMMYUNIONNAME; -} PROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY; +} PROCESS_HEAP_ENTRY,*PPROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY; + typedef struct _OFSTRUCT { BYTE cBytes; BYTE fFixedDisk; @@ -1021,6 +1064,7 @@ typedef struct _OFSTRUCT { WORD Reserved2; CHAR szPathName[OFS_MAXPATHNAME]; } OFSTRUCT,*LPOFSTRUCT,*POFSTRUCT; + #if (_WIN32_WINNT >= 0x0501) typedef struct tagACTCTXA { ULONG cbSize; @@ -1034,6 +1078,7 @@ typedef struct tagACTCTXA { HMODULE hModule; } ACTCTXA,*PACTCTXA; typedef const ACTCTXA *PCACTCTXA; + typedef struct tagACTCTXW { ULONG cbSize; DWORD dwFlags; @@ -1046,6 +1091,30 @@ typedef struct tagACTCTXW { HMODULE hModule; } ACTCTXW,*PACTCTXW; typedef const ACTCTXW *PCACTCTXW; + +typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 { + ULONG cbSize; + ULONG ulDataFormatVersion; + PVOID lpData; + ULONG ulLength; + PVOID lpSectionGlobalData; + ULONG ulSectionGlobalDataLength; + PVOID lpSectionBase; + ULONG ulSectionTotalLength; + HANDLE hActCtx; + ULONG ulAssemblyRosterIndex; +} ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600; +typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600; + +typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA { + PVOID lpInformation; + PVOID lpSectionBase; + ULONG ulSectionLength; + PVOID lpSectionGlobalDataBase; + ULONG ulSectionGlobalDataLength; +} ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA; +typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA; + typedef struct tagACTCTX_SECTION_KEYED_DATA { ULONG cbSize; ULONG ulDataFormatVersion; @@ -1057,18 +1126,27 @@ typedef struct tagACTCTX_SECTION_KEYED_DATA { ULONG ulSectionTotalLength; HANDLE hActCtx; ULONG ulAssemblyRosterIndex; + /* Non 2600 extra fields */ + ULONG ulFlags; + ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata; } ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA; + typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA; + typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION { HANDLE hActCtx; DWORD dwFlags; } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION; typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION; + +typedef BOOL (WINAPI *PQUERYACTCTXW_FUNC)(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T *); + typedef enum { LowMemoryResourceNotification , HighMemoryResourceNotification } MEMORY_RESOURCE_NOTIFICATION_TYPE; #endif /* (_WIN32_WINNT >= 0x0501) */ + #if (_WIN32_WINNT >= 0x0500) typedef enum _COMPUTER_NAME_FORMAT { ComputerNameNetBIOS, @@ -1082,12 +1160,17 @@ typedef enum _COMPUTER_NAME_FORMAT { ComputerNameMax } COMPUTER_NAME_FORMAT; #endif /* (_WIN32_WINNT >= 0x0500) */ + #if (_WIN32_WINNT >= 0x0600) typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK; typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE; #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 VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter ); +typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE; + typedef VOID (WINAPI *PFLS_CALLBACK_FUNCTION)(PVOID); typedef BOOL(CALLBACK *ENUMRESLANGPROCA)(HMODULE,LPCSTR,LPCSTR,WORD,LONG_PTR); typedef BOOL(CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG_PTR);