mirror of
				https://gitlab.com/freepascal.org/fpc/source.git
				synced 2025-11-04 02:19:22 +01:00 
			
		
		
		
	* Second part of 64-bit Windows fixes and updates from Mantis #23074.
git-svn-id: trunk@26807 -
This commit is contained in:
		
							parent
							
								
									83deae45b8
								
							
						
					
					
						commit
						5e762cc6ea
					
				@ -111,6 +111,7 @@
 | 
			
		||||
     HDC = HANDLE;
 | 
			
		||||
     HDDEDATA = HANDLE;
 | 
			
		||||
     HDESK = HANDLE;
 | 
			
		||||
     HDEVNOTIFY = HANDLE;
 | 
			
		||||
     HDROP = HANDLE;
 | 
			
		||||
     HDWP = HANDLE;
 | 
			
		||||
     HENHMETAFILE = HANDLE;
 | 
			
		||||
@ -197,6 +198,10 @@
 | 
			
		||||
     LPWSTR = Pwidechar;
 | 
			
		||||
     NWPSTR = Pwidechar;
 | 
			
		||||
 | 
			
		||||
     LPPSTR = ^LPSTR;
 | 
			
		||||
     LPPWSTR = ^LPWSTR;
 | 
			
		||||
     LPPTSTR = ^LPTSTR;
 | 
			
		||||
 | 
			
		||||
     PWINBOOL = ^WINBOOL;
 | 
			
		||||
     PBOOLEAN = ^BYTE {$ifndef VER2_2} deprecated {$endif};
 | 
			
		||||
 | 
			
		||||
@ -604,7 +609,7 @@
 | 
			
		||||
 | 
			
		||||
     LPTHREAD_START_ROUTINE = PTHREAD_START_ROUTINE;
 | 
			
		||||
 | 
			
		||||
     EDITSTREAMCALLBACK = function (_para1:DWORD; _para2:LPBYTE; _para3:LONG; _para4:LONG):DWORD;stdcall;
 | 
			
		||||
     EDITSTREAMCALLBACK = function (_para1:DWORD_PTR; _para2:LPBYTE; _para3:LONG; _para4:LONG):DWORD;stdcall;
 | 
			
		||||
 | 
			
		||||
     LPFRHOOKPROC = function (_para1:HWND; _para2:UINT; _para3:WPARAM; _para4:LPARAM):UINT_PTR;stdcall;
 | 
			
		||||
 | 
			
		||||
@ -618,7 +623,7 @@
 | 
			
		||||
 | 
			
		||||
     PFNPROPSHEETCALLBACK = function (_para1:HWND; _para2:UINT; _para3:LPARAM):longint;stdcall;
 | 
			
		||||
 | 
			
		||||
     LPSERVICE_MAIN_FUNCTION = procedure (_para1:DWORD; _para2:LPTSTR);stdcall;
 | 
			
		||||
     LPSERVICE_MAIN_FUNCTION = procedure (_para1:DWORD; _para2:LPPTSTR);stdcall;
 | 
			
		||||
 | 
			
		||||
     PFNTVCOMPARE = function (_para1:LPARAM; _para2:LPARAM; _para3:LPARAM):longint;stdcall;
 | 
			
		||||
 | 
			
		||||
@ -632,11 +637,11 @@
 | 
			
		||||
 | 
			
		||||
     PROC = FARPROC;
 | 
			
		||||
 | 
			
		||||
     ENUMRESTYPEPROC = function (hModule:HANDLE; lpszType:LPTSTR; lParam:LONG_PTR):WINBOOL;stdcall;
 | 
			
		||||
     ENUMRESTYPEPROC = function (hModule:HMODULE; lpszType:LPTSTR; lParam:LONG_PTR):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
     ENUMRESNAMEPROC = function (hModule:HANDLE; lpszType:LPCTSTR; lpszName:LPTSTR; lParam:LONG_PTR):WINBOOL;stdcall;
 | 
			
		||||
     ENUMRESNAMEPROC = function (hModule:HMODULE; lpszType:LPCTSTR; lpszName:LPTSTR; lParam:LONG_PTR):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
     ENUMRESLANGPROC = function (hModule:HANDLE; lpszType:LPCTSTR; lpszName:LPCTSTR; wIDLanguage:WORD; lParam:LONG_PTR):WINBOOL;stdcall;
 | 
			
		||||
     ENUMRESLANGPROC = function (hModule:HMODULE; lpszType:LPCTSTR; lpszName:LPCTSTR; wIDLanguage:WORD; lParam:LONG_PTR):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
     DESKTOPENUMPROC = FARPROC;
 | 
			
		||||
 | 
			
		||||
@ -644,7 +649,7 @@
 | 
			
		||||
 | 
			
		||||
     ENUMWINDOWSTATIONPROC = function (_para1:LPTSTR; _para2:LPARAM):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
     SENDASYNCPROC = procedure (_para1:HWND; _para2:UINT; _para3:DWORD; _para4:LRESULT);stdcall;
 | 
			
		||||
     SENDASYNCPROC = procedure (_para1:HWND; _para2:UINT; _para3:ULONG_PTR; _para4:LRESULT);stdcall;
 | 
			
		||||
 | 
			
		||||
     TIMERPROC = procedure (hWnd: HWND; uMsg: UINT; idEvent: UINT_PTR; dwTime: DWORD); stdcall;
 | 
			
		||||
 | 
			
		||||
@ -652,9 +657,9 @@
 | 
			
		||||
 | 
			
		||||
     DRAWSTATEPROC = function (_para1:HDC; _para2:LPARAM; _para3:WPARAM; _para4:longint; _para5:longint):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
     PROPENUMPROCEXA = function (_para1:HWND; _para2:LPCSTR;  _para3:HANDLE; _para4:DWORD):WINBOOL;stdcall;
 | 
			
		||||
     PROPENUMPROCEXW = function (_para1:HWND; _para2:LPCWSTR; _para3:HANDLE; _para4:DWORD):WINBOOL;stdcall;
 | 
			
		||||
     PROPENUMPROCEX  = function (_para1:HWND; _para2:LPCTSTR; _para3:HANDLE; _para4:DWORD):WINBOOL;stdcall;
 | 
			
		||||
     PROPENUMPROCEXA = function (_para1:HWND; _para2:LPCSTR;  _para3:HANDLE; _para4:DWORD_PTR):WINBOOL;stdcall;
 | 
			
		||||
     PROPENUMPROCEXW = function (_para1:HWND; _para2:LPCWSTR; _para3:HANDLE; _para4:DWORD_PTR):WINBOOL;stdcall;
 | 
			
		||||
     PROPENUMPROCEX  = function (_para1:HWND; _para2:LPCTSTR; _para3:HANDLE; _para4:DWORD_PTR):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
     PROPENUMPROCA = function (_para1:HWND; _para2:LPCSTR;  _para3:HANDLE):WINBOOL;stdcall;
 | 
			
		||||
     PROPENUMPROCW = function (_para1:HWND; _para2:LPCWSTR; _para3:HANDLE):WINBOOL;stdcall;
 | 
			
		||||
 | 
			
		||||
@ -60,10 +60,10 @@ procedure FreeLibraryAndExitThread(hLibModule:HMODULE; dwExitCode:DWORD); extern
 | 
			
		||||
function DisableThreadLibraryCalls(hLibModule:HMODULE):WINBOOL; external 'kernel32' name 'DisableThreadLibraryCalls';
 | 
			
		||||
function GetProcAddress(hModule:HINST; lpProcName:LPCSTR):FARPROC; external 'kernel32' name 'GetProcAddress';
 | 
			
		||||
function GetVersion:DWORD; external 'kernel32' name 'GetVersion';
 | 
			
		||||
function GlobalAlloc(uFlags:UINT; dwBytes:DWORD):HGLOBAL; external 'kernel32' name 'GlobalAlloc';
 | 
			
		||||
function GlobalAlloc(uFlags:UINT; dwBytes:PTRUINT):HGLOBAL; external 'kernel32' name 'GlobalAlloc';
 | 
			
		||||
function GlobalDiscard(hglbMem:HGLOBAL):HGLOBAL;
 | 
			
		||||
function GlobalReAlloc(hMem:HGLOBAL; dwBytes:DWORD; uFlags:UINT):HGLOBAL; external 'kernel32' name 'GlobalReAlloc';
 | 
			
		||||
function GlobalSize(hMem:HGLOBAL):DWORD; external 'kernel32' name 'GlobalSize';
 | 
			
		||||
function GlobalReAlloc(hMem:HGLOBAL; dwBytes:PTRUINT; uFlags:UINT):HGLOBAL; external 'kernel32' name 'GlobalReAlloc';
 | 
			
		||||
function GlobalSize(hMem:HGLOBAL):PTRUINT; external 'kernel32' name 'GlobalSize';
 | 
			
		||||
function GlobalFlags(hMem:HGLOBAL):UINT; external 'kernel32' name 'GlobalFlags';
 | 
			
		||||
function GlobalLock(hMem:HGLOBAL):LPVOID; external 'kernel32' name 'GlobalLock';
 | 
			
		||||
function GlobalHandle(pMem:LPCVOID):HGLOBAL; external 'kernel32' name 'GlobalHandle';
 | 
			
		||||
@ -75,9 +75,9 @@ procedure GlobalUnfix(hMem:HGLOBAL); external 'kernel32' name 'GlobalUnfix';
 | 
			
		||||
function GlobalWire(hMem:HGLOBAL):LPVOID; external 'kernel32' name 'GlobalWire';
 | 
			
		||||
function GlobalUnWire(hMem:HGLOBAL):WINBOOL; external 'kernel32' name 'GlobalUnWire';
 | 
			
		||||
procedure GlobalMemoryStatus(lpBuffer:LPMEMORYSTATUS); external 'kernel32' name 'GlobalMemoryStatus';
 | 
			
		||||
function LocalAlloc(uFlags:UINT; uBytes:UINT):HLOCAL; external 'kernel32' name 'LocalAlloc';
 | 
			
		||||
function LocalAlloc(uFlags:UINT; uBytes:PTRUINT):HLOCAL; external 'kernel32' name 'LocalAlloc';
 | 
			
		||||
function LocalDiscard(hlocMem:HLOCAL):HLOCAL;
 | 
			
		||||
function LocalReAlloc(hMem:HLOCAL; uBytes:UINT; uFlags:UINT):HLOCAL; external 'kernel32' name 'LocalReAlloc';
 | 
			
		||||
function LocalReAlloc(hMem:HLOCAL; uBytes:PTRUINT; uFlags:UINT):HLOCAL; external 'kernel32' name 'LocalReAlloc';
 | 
			
		||||
function LocalLock(hMem:HLOCAL):LPVOID; external 'kernel32' name 'LocalLock';
 | 
			
		||||
function LocalHandle(pMem:LPCVOID):HLOCAL; external 'kernel32' name 'LocalHandle';
 | 
			
		||||
function LocalUnlock(hMem:HLOCAL):WINBOOL; external 'kernel32' name 'LocalUnlock';
 | 
			
		||||
@ -86,7 +86,7 @@ function LocalFlags(hMem:HLOCAL):UINT; external 'kernel32' name 'LocalFlags';
 | 
			
		||||
function LocalFree(hMem:HLOCAL):HLOCAL; external 'kernel32' name 'LocalFree';
 | 
			
		||||
function LocalShrink(hMem:HLOCAL; cbNewSize:UINT):UINT; external 'kernel32' name 'LocalShrink';
 | 
			
		||||
function LocalCompact(uMinFree:UINT):UINT; external 'kernel32' name 'LocalCompact';
 | 
			
		||||
function FlushInstructionCache(hProcess:HANDLE; lpBaseAddress:LPCVOID; dwSize:DWORD):WINBOOL; external 'kernel32' name 'FlushInstructionCache';
 | 
			
		||||
function FlushInstructionCache(hProcess:HANDLE; lpBaseAddress:LPCVOID; dwSize:PTRUINT):WINBOOL; external 'kernel32' name 'FlushInstructionCache';
 | 
			
		||||
function VirtualAlloc(lpAddress:LPVOID; dwSize:PTRUINT; flAllocationType:DWORD; flProtect:DWORD):LPVOID; external 'kernel32' name 'VirtualAlloc';
 | 
			
		||||
function VirtualAllocEx(hProcess:THandle;lpAddress:LPVOID;dwsize:PTRUINT;flAllocationType :DWORD;flProtect:DWORD):LPVOID; external 'kernel32' name 'VirtualAllocEx';
 | 
			
		||||
function VirtualAllocExNuma(hProcess:THandle;lpAddress:LPVOID;dwsize:PTRUINT;flAllocationType :DWORD;flProtect:DWORD;nndPreferred:DWORD):LPVOID; external 'kernel32' name 'VirtualAllocExNuma';
 | 
			
		||||
@ -94,11 +94,11 @@ function VirtualFree(lpAddress:LPVOID; dwSize:PTRUINT; dwFreeType:DWORD):WINBOOL
 | 
			
		||||
function VirtualFreeEx(hProcess:THandle;lpAddress:LPVOID; dwSize:PTRUINT; dwFreeType:DWORD):WINBOOL; external 'kernel32' name 'VirtualFreeEx';
 | 
			
		||||
function VirtualProtect(lpAddress:LPVOID; dwSize:PTRUINT; flNewProtect:DWORD; lpflOldProtect:PDWORD):WINBOOL; external 'kernel32' name 'VirtualProtect';
 | 
			
		||||
function VirtualQuery(lpAddress:LPCVOID; lpBuffer:PMEMORY_BASIC_INFORMATION; dwLength:PTRUINT):PTRUINT; external 'kernel32' name 'VirtualQuery';
 | 
			
		||||
function VirtualProtectEx(hProcess:HANDLE; lpAddress:LPVOID; dwSize:DWORD; flNewProtect:DWORD; lpflOldProtect:PDWORD):WINBOOL; external 'kernel32' name 'VirtualProtectEx';
 | 
			
		||||
function VirtualProtectEx(hProcess:HANDLE; lpAddress:LPVOID; dwSize:PTRUINT; flNewProtect:DWORD; lpflOldProtect:PDWORD):WINBOOL; external 'kernel32' name 'VirtualProtectEx';
 | 
			
		||||
function VirtualQueryEx(hProcess:HANDLE; lpAddress:LPCVOID; lpBuffer:PMEMORY_BASIC_INFORMATION; dwLength:PTRUINT):PTRUINT; external 'kernel32' name 'VirtualQueryEx';
 | 
			
		||||
function HeapCreate(flOptions:DWORD; dwInitialSize:PTRUINT; dwMaximumSize:PTRUINT):HANDLE; external 'kernel32' name 'HeapCreate';
 | 
			
		||||
function HeapDestroy(hHeap:HANDLE):WINBOOL; external 'kernel32' name 'HeapDestroy';
 | 
			
		||||
function HeapAlloc(hHeap:HANDLE; dwFlags:DWORD; dwBytes:DWORD):LPVOID; external 'kernel32' name 'HeapAlloc';
 | 
			
		||||
function HeapAlloc(hHeap:HANDLE; dwFlags:DWORD; dwBytes:PTRUINT):LPVOID; external 'kernel32' name 'HeapAlloc';
 | 
			
		||||
function HeapReAlloc(hHeap:HANDLE; dwFlags:DWORD; lpMem:LPVOID; dwBytes:PTRUINT):LPVOID; external 'kernel32' name 'HeapReAlloc';
 | 
			
		||||
function HeapFree(hHeap:HANDLE; dwFlags:DWORD; lpMem:LPVOID):WINBOOL; external 'kernel32' name 'HeapFree';
 | 
			
		||||
function HeapSize(hHeap:HANDLE; dwFlags:DWORD; lpMem:LPCVOID):PTRUINT; external 'kernel32' name 'HeapSize';
 | 
			
		||||
@ -111,8 +111,8 @@ function HeapUnlock(hHeap:HANDLE):WINBOOL; external 'kernel32' name 'HeapUnlock'
 | 
			
		||||
function HeapWalk(hHeap:HANDLE; lpEntry:LPPROCESS_HEAP_ENTRY):WINBOOL; external 'kernel32' name 'HeapWalk';
 | 
			
		||||
function GetProcessAffinityMask(hProcess:HANDLE; lpProcessAffinityMask:PDWORD_PTR; lpSystemAffinityMask:PDWORD_PTR):WINBOOL; external 'kernel32' name 'GetProcessAffinityMask';
 | 
			
		||||
function GetProcessTimes(hProcess:HANDLE; lpCreationTime:LPFILETIME; lpExitTime:LPFILETIME; lpKernelTime:LPFILETIME; lpUserTime:LPFILETIME):WINBOOL; external 'kernel32' name 'GetProcessTimes';
 | 
			
		||||
function GetProcessWorkingSetSize(hProcess:HANDLE; lpMinimumWorkingSetSize:LPDWORD; lpMaximumWorkingSetSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetProcessWorkingSetSize';
 | 
			
		||||
function SetProcessWorkingSetSize(hProcess:HANDLE; dwMinimumWorkingSetSize:DWORD; dwMaximumWorkingSetSize:DWORD):WINBOOL; external 'kernel32' name 'SetProcessWorkingSetSize';
 | 
			
		||||
function GetProcessWorkingSetSize(hProcess:HANDLE; lpMinimumWorkingSetSize:PPTRUINT; lpMaximumWorkingSetSize:PPTRUINT):WINBOOL; external 'kernel32' name 'GetProcessWorkingSetSize';
 | 
			
		||||
function SetProcessWorkingSetSize(hProcess:HANDLE; dwMinimumWorkingSetSize:PTRUINT; dwMaximumWorkingSetSize:PTRUINT):WINBOOL; external 'kernel32' name 'SetProcessWorkingSetSize';
 | 
			
		||||
function OpenProcess(dwDesiredAccess:DWORD; bInheritHandle:WINBOOL; dwProcessId:DWORD):HANDLE; external 'kernel32' name 'OpenProcess';
 | 
			
		||||
function GetCurrentProcess:HANDLE; external 'kernel32' name 'GetCurrentProcess';
 | 
			
		||||
function GetCurrentProcessId:DWORD; external 'kernel32' name 'GetCurrentProcessId';
 | 
			
		||||
@ -123,7 +123,7 @@ function GetExitCodeProcess(hProcess:HANDLE; lpExitCode:LPDWORD):WINBOOL; extern
 | 
			
		||||
procedure FatalExit(ExitCode:longint); external 'kernel32' name 'FatalExit';
 | 
			
		||||
procedure RaiseException(dwExceptionCode:DWORD; dwExceptionFlags:DWORD; nNumberOfArguments:DWORD; lpArguments:LPDWORD); external 'kernel32' name 'RaiseException';
 | 
			
		||||
function UnhandledExceptionFilter(ExceptionInfo:lpemptyrecord):LONG; external 'kernel32' name 'UnhandledExceptionFilter';
 | 
			
		||||
function CreateRemoteThread(hProcess:HANDLE; lpThreadAttributes:LPSECURITY_ATTRIBUTES; dwStackSize:DWORD; lpStartAddress:LPTHREAD_START_ROUTINE; lpParameter:LPVOID;
 | 
			
		||||
function CreateRemoteThread(hProcess:HANDLE; lpThreadAttributes:LPSECURITY_ATTRIBUTES; dwStackSize:PTRUINT; lpStartAddress:LPTHREAD_START_ROUTINE; lpParameter:LPVOID;
 | 
			
		||||
  dwCreationFlags:DWORD; lpThreadId:LPDWORD):HANDLE; external 'kernel32' name 'CreateRemoteThread';
 | 
			
		||||
function GetCurrentThread:HANDLE; external 'kernel32' name 'GetCurrentThread';
 | 
			
		||||
function GetCurrentThreadId:DWORD; external 'kernel32' name 'GetCurrentThreadId';
 | 
			
		||||
@ -139,8 +139,8 @@ function GetLastError:DWORD; external 'kernel32' name 'GetLastError';
 | 
			
		||||
procedure SetLastError(dwErrCode:DWORD); external 'kernel32' name 'SetLastError';
 | 
			
		||||
function CreateIoCompletionPort(FileHandle:HANDLE; ExistingCompletionPort:HANDLE; CompletionKey:ULONG_PTR; NumberOfConcurrentThreads:DWORD):HANDLE; external 'kernel32' name 'CreateIoCompletionPort';
 | 
			
		||||
function SetErrorMode(uMode:UINT):UINT; external 'kernel32' name 'SetErrorMode';
 | 
			
		||||
function ReadProcessMemory(hProcess:HANDLE; lpBaseAddress:LPCVOID; lpBuffer:LPVOID; nSize:DWORD; lpNumberOfBytesRead:LPDWORD):WINBOOL; external 'kernel32' name 'ReadProcessMemory';
 | 
			
		||||
function WriteProcessMemory(hProcess:HANDLE; lpBaseAddress:LPVOID; lpBuffer:LPVOID; nSize:DWORD; lpNumberOfBytesWritten:LPDWORD):WINBOOL; external 'kernel32' name 'WriteProcessMemory';
 | 
			
		||||
function ReadProcessMemory(hProcess:HANDLE; lpBaseAddress:LPCVOID; lpBuffer:LPVOID; nSize:PTRUINT; lpNumberOfBytesRead:PPTRUINT):WINBOOL; external 'kernel32' name 'ReadProcessMemory';
 | 
			
		||||
function WriteProcessMemory(hProcess:HANDLE; lpBaseAddress:LPVOID; lpBuffer:LPVOID; nSize:PTRUINT; lpNumberOfBytesWritten:PPTRUINT):WINBOOL; external 'kernel32' name 'WriteProcessMemory';
 | 
			
		||||
function GetThreadContext(hThread:HANDLE; lpContext:LPCONTEXT):WINBOOL; external 'kernel32' name 'GetThreadContext';
 | 
			
		||||
function SuspendThread(hThread:HANDLE):DWORD; external 'kernel32' name 'SuspendThread';
 | 
			
		||||
function ResumeThread(hThread:HANDLE):DWORD; external 'kernel32' name 'ResumeThread';
 | 
			
		||||
@ -372,8 +372,8 @@ function MakeAbsoluteSD(pSelfRelativeSecurityDescriptor:PSECURITY_DESCRIPTOR; pA
 | 
			
		||||
function SetKernelObjectSecurity(Handle:HANDLE; SecurityInformation:SECURITY_INFORMATION; SecurityDescriptor:PSECURITY_DESCRIPTOR):WINBOOL; external 'advapi32' name 'SetKernelObjectSecurity';
 | 
			
		||||
function FindNextChangeNotification(hChangeHandle:HANDLE):WINBOOL; external 'kernel32' name 'FindNextChangeNotification';
 | 
			
		||||
function FindCloseChangeNotification(hChangeHandle:HANDLE):WINBOOL; external 'kernel32' name 'FindCloseChangeNotification';
 | 
			
		||||
function VirtualLock(lpAddress:LPVOID; dwSize:DWORD):WINBOOL; external 'kernel32' name 'VirtualLock';
 | 
			
		||||
function VirtualUnlock(lpAddress:LPVOID; dwSize:DWORD):WINBOOL; external 'kernel32' name 'VirtualUnlock';
 | 
			
		||||
function VirtualLock(lpAddress:LPVOID; dwSize:PTRUINT):WINBOOL; external 'kernel32' name 'VirtualLock';
 | 
			
		||||
function VirtualUnlock(lpAddress:LPVOID; dwSize:PTRUINT):WINBOOL; external 'kernel32' name 'VirtualUnlock';
 | 
			
		||||
function MapViewOfFileEx(hFileMappingObject:HANDLE; dwDesiredAccess:DWORD; dwFileOffsetHigh:DWORD; dwFileOffsetLow:DWORD; dwNumberOfBytesToMap:SIZE_T;lpBaseAddress:LPVOID):LPVOID; external 'kernel32' name 'MapViewOfFileEx';
 | 
			
		||||
function SetPriorityClass(hProcess:HANDLE; dwPriorityClass:DWORD):WINBOOL; external 'kernel32' name 'SetPriorityClass';
 | 
			
		||||
function GetPriorityClass(hProcess:HANDLE):DWORD; external 'kernel32' name 'GetPriorityClass';
 | 
			
		||||
@ -926,7 +926,7 @@ function ImageList_GetImageInfo(himl:HIMAGELIST; i:longint; var pImageInfo:IMAGE
 | 
			
		||||
function ImageList_Merge(himl1:HIMAGELIST; i1:longint; himl2:HIMAGELIST; i2:longint; dx:longint;dy:longint):HIMAGELIST; external 'comctl32' name 'ImageList_Merge';
 | 
			
		||||
function ImageList_SetImageCount(himl: HIMAGELIST; uNewCount: UINT): Integer; external 'comctl32.dll' name 'ImageList_SetImageCount';
 | 
			
		||||
 | 
			
		||||
function CreateToolbarEx(hwnd:HWND; ws:DWORD; wID:UINT; nBitmaps:longint; hBMInst:HINST;wBMID:UINT; lpButtons:LPCTBBUTTON; iNumButtons:longint; dxButton:longint; dyButton:longint;dxBitmap:longint;
 | 
			
		||||
function CreateToolbarEx(hwnd:HWND; ws:DWORD; wID:UINT; nBitmaps:longint; hBMInst:HINST;wBMID:UINT_PTR; lpButtons:LPCTBBUTTON; iNumButtons:longint; dxButton:longint; dyButton:longint;dxBitmap:longint;
 | 
			
		||||
  dyBitmap:longint; uStructSize:UINT):HWND; external 'comctl32' name 'CreateToolbarEx';
 | 
			
		||||
function CreateMappedBitmap(hInstance:HINST; idBitmap:longint; wFlags:UINT; lpColorMap:LPCOLORMAP; iNumMaps:longint):HBITMAP; external 'comctl32' name 'CreateMappedBitmap';
 | 
			
		||||
procedure MenuHelp(uMsg:UINT; wParam:WPARAM; lParam:LPARAM; hMainMenu:HMENU; hInst:HINST;hwndStatus:HWND; var lpwIDs:UINT); external 'comctl32' name 'MenuHelp';
 | 
			
		||||
 | 
			
		||||
@ -349,9 +349,9 @@ function CreateProcessA(lpApplicationName: LPCSTR; lpCommandLine: LPCSTR; lpProc
 | 
			
		||||
function CreateProcessW(lpApplicationName: LPWSTR; lpCommandLine: LPWSTR; lpProcessAttributes, lpThreadAttributes: PSecurityAttributes; bInheritHandles: BOOL; dwCreationFlags: DWORD; lpEnvironment: Pointer; lpCurrentDirectory: LPWSTR;
 | 
			
		||||
  const lpStartupInfo: TStartupInfo; var lpProcessInformation: TProcessInformation): BOOL; external 'kernel32' name 'CreateProcessW';
 | 
			
		||||
//function CreateRectRgnIndirect(const p1: TRect): HRGN; external 'gdi32' name 'CreateRectRgnIndirect';
 | 
			
		||||
function CreateRemoteThread(hProcess: THandle; lpThreadAttributes: Pointer; dwStackSize: DWORD; lpStartAddress: TFNThreadStartRoutine; lpParameter: Pointer; dwCreationFlags: DWORD; var lpThreadId: DWORD): THandle;
 | 
			
		||||
function CreateRemoteThread(hProcess: THandle; lpThreadAttributes: Pointer; dwStackSize: PTRUINT; lpStartAddress: TFNThreadStartRoutine; lpParameter: Pointer; dwCreationFlags: DWORD; var lpThreadId: DWORD): THandle;
 | 
			
		||||
  external 'kernel32' name 'CreateRemoteThread';
 | 
			
		||||
function CreateThread(lpThreadAttributes: Pointer; dwStackSize: DWORD; lpStartAddress: TFNThreadStartRoutine; lpParameter: Pointer; dwCreationFlags: DWORD; var lpThreadId: DWORD): THandle; external 'kernel32' name 'CreateThread';
 | 
			
		||||
function CreateThread(lpThreadAttributes: Pointer; dwStackSize: PTRUINT; lpStartAddress: TFNThreadStartRoutine; lpParameter: Pointer; dwCreationFlags: DWORD; var lpThreadId: DWORD): THandle; external 'kernel32' name 'CreateThread';
 | 
			
		||||
function DdeSetQualityOfService(hWndClient: HWnd; const pqosNew: TSecurityQualityOfService; pqosPrev: PSecurityQualityOfService): BOOL;external 'user32' name 'DdeSetQualityOfService';
 | 
			
		||||
function DdeConnect(_para1:DWORD; _para2:HSZ; _para3:HSZ; var _para4:CONVCONTEXT):HCONV; external 'user32' name 'DdeConnect';
 | 
			
		||||
//function DeleteAce(var pAcl: TACL; dwAceIndex: DWORD): BOOL; external 'advapi32' name 'DeleteAce';
 | 
			
		||||
@ -410,7 +410,7 @@ function FindFirstFileW(lpFileName: LPWSTR; var lpFindFileData: TWIN32FindDataW)
 | 
			
		||||
function FindNextFile(hFindFile: THandle; var lpFindFileData: TWIN32FindData): BOOL;external 'kernel32' name 'FindNextFileA';
 | 
			
		||||
function FindNextFileA(hFindFile: THandle; var lpFindFileData: TWIN32FindDataA): BOOL; external 'kernel32' name 'FindNextFileA';
 | 
			
		||||
function FindNextFileW(hFindFile: THandle; var lpFindFileData: TWIN32FindDataW): BOOL; external 'kernel32' name 'FindNextFileW';
 | 
			
		||||
//function FlushInstructionCache(hProcess: THandle; const lpBaseAddress: Pointer; dwSize: DWORD): BOOL; external 'kernel32' name 'FlushInstructionCache';
 | 
			
		||||
//function FlushInstructionCache(hProcess: THandle; const lpBaseAddress: Pointer; dwSize: PTRUINT): BOOL; external 'kernel32' name 'FlushInstructionCache';
 | 
			
		||||
//function FlushViewOfFile(const lpBaseAddress: Pointer; dwNumberOfBytesToFlush: DWORD): BOOL; external 'kernel32' name 'FlushViewOfFile';
 | 
			
		||||
//function FrameRect(hDC: HDC; const lprc: TRect; hbr: HBRUSH): Integer; external 'user32' name 'FrameRect';
 | 
			
		||||
//function GetAce(const pAcl: TACL; dwAceIndex: DWORD; var pAce: Pointer): BOOL; external 'advapi32' name 'GetAce';
 | 
			
		||||
@ -571,7 +571,7 @@ function GetProcessPriorityBoost(hThread: THandle; var DisablePriorityBoost: Boo
 | 
			
		||||
{$endif NO_SMART_LINK}
 | 
			
		||||
function GetProcessShutdownParameters(var lpdwLevel, lpdwFlags: DWORD): BOOL; external 'kernel32' name 'GetProcessShutdownParameters';
 | 
			
		||||
function GetProcessTimes(hProcess: THandle; var lpCreationTime, lpExitTime, lpKernelTime, lpUserTime: TFileTime): BOOL; external 'kernel32' name 'GetProcessTimes';
 | 
			
		||||
function GetProcessWorkingSetSize(hProcess: THandle; var lpMinimumWorkingSetSize, lpMaximumWorkingSetSize: DWORD): BOOL; external 'kernel32' name 'GetProcessWorkingSetSize';
 | 
			
		||||
function GetProcessWorkingSetSize(hProcess: THandle; var lpMinimumWorkingSetSize, lpMaximumWorkingSetSize: PTRUINT): BOOL; external 'kernel32' name 'GetProcessWorkingSetSize';
 | 
			
		||||
function GetQueuedCompletionStatus(CompletionPort: THandle; var lpNumberOfBytesTransferred: DWORD; var lpCompletionKey: ULONG_PTR; var lpOverlapped: POverlapped; dwMilliseconds: DWORD): BOOL; external 'kernel32' name 'GetQueuedCompletionStatus';
 | 
			
		||||
function PostQueuedCompletionStatus(CompletionPort: THandle; NumberOfBytesTransferred:dword; dwCompletionKey: ULONG_PTR; lpOverlapped: POverlapped): BOOL; external 'kernel32' name 'PostQueuedCompletionStatus';
 | 
			
		||||
function GetRasterizerCaps(var p1: TRasterizerStatus; p2: UINT): BOOL; external 'gdi32' name 'GetRasterizerCaps';
 | 
			
		||||
@ -766,7 +766,7 @@ function ReadEventLog(hEventLog: THandle; dwReadFlags, dwRecordOffset: DWORD; lp
 | 
			
		||||
function ReadEventLogA(hEventLog: THandle; dwReadFlags, dwRecordOffset: DWORD; lpBuffer: Pointer; nNumberOfBytesToRead: DWORD; var pnBytesRead, pnMinNumberOfBytesNeeded: DWORD): BOOL; external 'advapi32' name 'ReadEventLogA';
 | 
			
		||||
function ReadEventLogW(hEventLog: THandle; dwReadFlags, dwRecordOffset: DWORD; lpBuffer: Pointer; nNumberOfBytesToRead: DWORD; var pnBytesRead, pnMinNumberOfBytesNeeded: DWORD): BOOL; external 'advapi32' name 'ReadEventLogW';
 | 
			
		||||
function ReadFile(hFile: THandle; var Buffer; nNumberOfBytesToRead: DWORD; var lpNumberOfBytesRead: DWORD; lpOverlapped: POverlapped): BOOL; external 'kernel32' name 'ReadFile';
 | 
			
		||||
function ReadProcessMemory(hProcess: THandle; const lpBaseAddress: Pointer; lpBuffer: Pointer; nSize: DWORD; var lpNumberOfBytesRead: DWORD): BOOL; external 'kernel32' name 'ReadProcessMemory';
 | 
			
		||||
function ReadProcessMemory(hProcess: THandle; const lpBaseAddress: Pointer; lpBuffer: Pointer; nSize: PTRUINT; var lpNumberOfBytesRead: PTRUINT): BOOL; external 'kernel32' name 'ReadProcessMemory';
 | 
			
		||||
//function RectInRegion(RGN: HRGN; const p2: TRect): BOOL; external 'gdi32' name 'RectInRegion';
 | 
			
		||||
//function RectVisible(DC: HDC; const Rect: TRect): BOOL; external 'gdi32' name 'RectVisible';
 | 
			
		||||
function RegConnectRegistry(lpMachineName: PChar; hKey: HKEY; var phkResult: HKEY): Longint;external 'advapi32' name 'RegConnectRegistryA';
 | 
			
		||||
@ -906,9 +906,9 @@ function VerInstallFileW(uFlags: DWORD; szSrcFileName, szDestFileName, szSrcDir,
 | 
			
		||||
function VerQueryValue(pBlock: Pointer; lpSubBlock: PChar; var lplpBuffer: Pointer; var puLen: UINT): BOOL;external 'version' name 'VerQueryValueA';
 | 
			
		||||
function VerQueryValueA(pBlock: Pointer; lpSubBlock: LPCSTR; var lplpBuffer: Pointer; var puLen: UINT): BOOL; external 'version' name 'VerQueryValueA';
 | 
			
		||||
function VerQueryValueW(pBlock: Pointer; lpSubBlock: LPWSTR; var lplpBuffer: Pointer; var puLen: UINT): BOOL; external 'version' name 'VerQueryValueW';
 | 
			
		||||
function VirtualProtect(lpAddress:LPVOID; dwSize:DWORD; flNewProtect:DWORD; var lpflOldProtect:DWORD):WINBOOL; external 'kernel32' name 'VirtualProtect';
 | 
			
		||||
function VirtualQuery(lpAddress: Pointer; var lpBuffer: TMemoryBasicInformation; dwLength: DWORD): DWORD; external 'kernel32' name 'VirtualQuery';
 | 
			
		||||
function VirtualQueryEx(hProcess: THandle; lpAddress: Pointer; var lpBuffer: TMemoryBasicInformation; dwLength: DWORD): DWORD; external 'kernel32' name 'VirtualQueryEx';
 | 
			
		||||
function VirtualProtect(lpAddress:LPVOID; dwSize:PTRUINT; flNewProtect:DWORD; var lpflOldProtect:DWORD):WINBOOL; external 'kernel32' name 'VirtualProtect';
 | 
			
		||||
function VirtualQuery(lpAddress: Pointer; var lpBuffer: TMemoryBasicInformation; dwLength: PTRUINT): PTRUINT; external 'kernel32' name 'VirtualQuery';
 | 
			
		||||
function VirtualQueryEx(hProcess: THandle; lpAddress: Pointer; var lpBuffer: TMemoryBasicInformation; dwLength: PTRUINT): PTRUINT; external 'kernel32' name 'VirtualQueryEx';
 | 
			
		||||
function WaitCommEvent(hFile: THandle; var lpEvtMask: DWORD; lpOverlapped: POverlapped): BOOL; external 'kernel32' name 'WaitCommEvent';
 | 
			
		||||
function WaitForDebugEvent(var lpDebugEvent: TDebugEvent; dwMilliseconds: DWORD): BOOL; external 'kernel32' name 'WaitForDebugEvent';
 | 
			
		||||
function wglDescribeLayerPlane(DC: HDC; iPixelFormat, iLayerPlane: Integer; nBytes: Cardinal; var pfd: TLayerPlaneDescriptor): BOOL;external 'opengl32' name 'wglDescribeLayerPlane';
 | 
			
		||||
@ -977,7 +977,7 @@ function WriteFileEx(hFile: THandle; lpBuffer: Pointer; nNumberOfBytesToWrite: D
 | 
			
		||||
function WritePrivateProfileStructA(lpszSection, lpszKey: LPCSTR; lpStruct: LPVOID; uSizeStruct: UINT; szFile: LPCSTR): BOOL; external 'kernel32' name 'WritePrivateProfileStructA';
 | 
			
		||||
function WritePrivateProfileStructW(lpszSection, lpszKey: LPCWSTR; lpStruct: LPVOID; uSizeStruct: UINT; szFile: LPCWSTR): BOOL; external 'kernel32' name 'WritePrivateProfileStructW';
 | 
			
		||||
function WritePrivateProfileStruct(lpszSection, lpszKey: LPCTSTR; lpStruct: LPVOID; uSizeStruct: UINT; szFile: LPCTSTR): BOOL; external 'kernel32' name 'WritePrivateProfileStructA';
 | 
			
		||||
function WriteProcessMemory(hProcess: THandle; const lpBaseAddress: Pointer; lpBuffer: Pointer; nSize: DWORD; var lpNumberOfBytesWritten: DWORD): BOOL; external 'kernel32' name 'WriteProcessMemory';
 | 
			
		||||
function WriteProcessMemory(hProcess: THandle; const lpBaseAddress: Pointer; lpBuffer: Pointer; nSize: PTRUINT; var lpNumberOfBytesWritten: PTRUINT): BOOL; external 'kernel32' name 'WriteProcessMemory';
 | 
			
		||||
function SHFileOperation(Var para1: SHFILEOPSTRUCT):longint; external 'shell32' name 'SHFileOperation';
 | 
			
		||||
// these are old Win16 funcs that under win32 are aliases for several char* funcs.
 | 
			
		||||
// exist under Win32 (even in SDK's from 2002), but are officially "depreciated"
 | 
			
		||||
 | 
			
		||||
@ -432,8 +432,8 @@ Const
 | 
			
		||||
     BROWSEINFO = record
 | 
			
		||||
          hwndOwner : HWND;
 | 
			
		||||
          pidlRoot : LPCITEMIDLIST;
 | 
			
		||||
          pszDisplayName : LPSTR;
 | 
			
		||||
          lpszTitle : LPCSTR;
 | 
			
		||||
          pszDisplayName : LPTSTR;
 | 
			
		||||
          lpszTitle : LPCTSTR;
 | 
			
		||||
          ulFlags : UINT;
 | 
			
		||||
          lpfn : BFFCALLBACK;
 | 
			
		||||
          lParam : LPARAM;
 | 
			
		||||
@ -734,7 +734,7 @@ Const
 | 
			
		||||
          lpLogFont : LPLOGFONT;
 | 
			
		||||
          iPointSize : WINT;
 | 
			
		||||
          Flags : DWORD;
 | 
			
		||||
          rgbColors : DWORD;
 | 
			
		||||
          rgbColors : COLORREF;
 | 
			
		||||
          lCustData : LPARAM;
 | 
			
		||||
          lpfnHook : LPCFHOOKPROC;
 | 
			
		||||
          lpTemplateName : LPCTSTR;
 | 
			
		||||
@ -952,6 +952,7 @@ Const
 | 
			
		||||
          itemData1 : ULONG_PTR;
 | 
			
		||||
          itemID2 : UINT;
 | 
			
		||||
          itemData2 : ULONG_PTR;
 | 
			
		||||
          dwLocaleID : DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
     tagCOMPAREITEMSTRUCT = COMPAREITEMSTRUCT;
 | 
			
		||||
     TCOMPAREITEMSTRUCT = COMPAREITEMSTRUCT;
 | 
			
		||||
@ -1480,7 +1481,7 @@ Const
 | 
			
		||||
     SECURITY_QUALITY_OF_SERVICE = record
 | 
			
		||||
          Length : DWORD;
 | 
			
		||||
          ImpersonationLevel : SECURITY_IMPERSONATION_LEVEL;
 | 
			
		||||
          ContextTrackingMode : WINBOOL;
 | 
			
		||||
          ContextTrackingMode : WINBOOL;    // SECURITY_CONTEXT_TRACKING_MODE
 | 
			
		||||
          EffectiveOnly : BOOLEAN;
 | 
			
		||||
       end;
 | 
			
		||||
     PSECURITY_QUALITY_OF_SERVICE = ^SECURITY_QUALITY_OF_SERVICE;
 | 
			
		||||
@ -1586,7 +1587,7 @@ Const
 | 
			
		||||
          idIcon : longint;
 | 
			
		||||
          idName : longint;
 | 
			
		||||
          idInfo : longint;
 | 
			
		||||
          lData : LONG;
 | 
			
		||||
          lData : LONG_PTR;
 | 
			
		||||
       end;
 | 
			
		||||
     tagCPLINFO = CPLINFO;
 | 
			
		||||
     TCPLINFO = CPLINFO;
 | 
			
		||||
@ -1777,8 +1778,8 @@ Const
 | 
			
		||||
  type
 | 
			
		||||
 | 
			
		||||
     DDEML_MSG_HOOK_DATA = record
 | 
			
		||||
          uiLo : UINT;
 | 
			
		||||
          uiHi : UINT;
 | 
			
		||||
          uiLo : UINT_PTR;
 | 
			
		||||
          uiHi : UINT_PTR;
 | 
			
		||||
          cbData : DWORD;
 | 
			
		||||
          Data : array[0..7] of DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
@ -2013,11 +2014,11 @@ Const
 | 
			
		||||
     PDEVBROADCASTHDR = ^DEV_BROADCAST_HDR;
 | 
			
		||||
 | 
			
		||||
     DEV_BROADCAST_OEM = record
 | 
			
		||||
          dbco_size : ULONG;
 | 
			
		||||
          dbco_devicetype : ULONG;
 | 
			
		||||
          dbco_reserved : ULONG;
 | 
			
		||||
          dbco_identifier : ULONG;
 | 
			
		||||
          dbco_suppfunc : ULONG;
 | 
			
		||||
          dbco_size : DWORD;
 | 
			
		||||
          dbco_devicetype : DWORD;
 | 
			
		||||
          dbco_reserved : DWORD;
 | 
			
		||||
          dbco_identifier : DWORD;
 | 
			
		||||
          dbco_suppfunc : DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
     PDEV_BROADCAST_OEM = ^DEV_BROADCAST_OEM;
 | 
			
		||||
     _DEV_BROADCAST_OEM = DEV_BROADCAST_OEM;
 | 
			
		||||
@ -2025,10 +2026,10 @@ Const
 | 
			
		||||
     PDEVBROADCASTOEM = ^DEV_BROADCAST_OEM;
 | 
			
		||||
 | 
			
		||||
     DEV_BROADCAST_PORT = record
 | 
			
		||||
          dbcp_size : ULONG;
 | 
			
		||||
          dbcp_devicetype : ULONG;
 | 
			
		||||
          dbcp_reserved : ULONG;
 | 
			
		||||
          dbcp_name : array[0..0] of char;
 | 
			
		||||
          dbcp_size : DWORD;
 | 
			
		||||
          dbcp_devicetype : DWORD;
 | 
			
		||||
          dbcp_reserved : DWORD;
 | 
			
		||||
          dbcp_name : array[0..0] of TCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     PDEV_BROADCAST_PORT = ^DEV_BROADCAST_PORT;
 | 
			
		||||
     _DEV_BROADCAST_PORT = DEV_BROADCAST_PORT;
 | 
			
		||||
@ -2044,11 +2045,11 @@ Const
 | 
			
		||||
     PDEVBROADCASTUSERDEFINED = ^_DEV_BROADCAST_USERDEFINED;
 | 
			
		||||
 | 
			
		||||
     DEV_BROADCAST_VOLUME = record
 | 
			
		||||
          dbcv_size : ULONG;
 | 
			
		||||
          dbcv_devicetype : ULONG;
 | 
			
		||||
          dbcv_reserved : ULONG;
 | 
			
		||||
          dbcv_unitmask : ULONG;
 | 
			
		||||
          dbcv_flags : USHORT;
 | 
			
		||||
          dbcv_size : DWORD;
 | 
			
		||||
          dbcv_devicetype : DWORD;
 | 
			
		||||
          dbcv_reserved : DWORD;
 | 
			
		||||
          dbcv_unitmask : DWORD;
 | 
			
		||||
          dbcv_flags : WORD;
 | 
			
		||||
       end;
 | 
			
		||||
     PDEV_BROADCAST_VOLUME = ^DEV_BROADCAST_VOLUME;
 | 
			
		||||
     _DEV_BROADCAST_VOLUME = DEV_BROADCAST_VOLUME;
 | 
			
		||||
@ -2242,9 +2243,14 @@ Const
 | 
			
		||||
          BytesWritten : LARGE_INTEGER;
 | 
			
		||||
          ReadTime : LARGE_INTEGER;
 | 
			
		||||
          WriteTime : LARGE_INTEGER;
 | 
			
		||||
          IdleTime : LARGE_INTEGER;
 | 
			
		||||
          ReadCount : DWORD;
 | 
			
		||||
          WriteCount : DWORD;
 | 
			
		||||
          QueueDepth : DWORD;
 | 
			
		||||
          SplitCount : DWORD;
 | 
			
		||||
          QueryTime : LARGE_INTEGER;
 | 
			
		||||
          StorageDeviceNumber : DWORD;
 | 
			
		||||
          StorageManagerName : array [0..7] of WCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     _DISK_PERFORMANCE = DISK_PERFORMANCE;
 | 
			
		||||
     TDISKPERFORMANCE = DISK_PERFORMANCE;
 | 
			
		||||
@ -2485,7 +2491,7 @@ Const
 | 
			
		||||
     PDRIVERINFO3 = ^DRIVER_INFO_3;
 | 
			
		||||
 | 
			
		||||
     EDITSTREAM = record
 | 
			
		||||
          dwCookie : DWORD;
 | 
			
		||||
          dwCookie : DWORD_PTR;
 | 
			
		||||
          dwError : DWORD;
 | 
			
		||||
          pfnCallback : EDITSTREAMCALLBACK;
 | 
			
		||||
       end;
 | 
			
		||||
@ -2561,6 +2567,7 @@ Const
 | 
			
		||||
          crBkColorSrc : COLORREF;
 | 
			
		||||
          iUsageSrc : DWORD;
 | 
			
		||||
          offBmiSrc : DWORD;
 | 
			
		||||
          cbBmiSrc : DWORD;
 | 
			
		||||
          offBitsSrc : DWORD;
 | 
			
		||||
          cbBitsSrc : DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
@ -2829,11 +2836,11 @@ Const
 | 
			
		||||
     PEMREXTCREATEFONTINDIRECTW = ^EMREXTCREATEFONTINDIRECTW;
 | 
			
		||||
 | 
			
		||||
     EXTLOGPEN = record
 | 
			
		||||
          elpPenStyle : UINT;
 | 
			
		||||
          elpWidth : UINT;
 | 
			
		||||
          elpPenStyle : DWORD;
 | 
			
		||||
          elpWidth : DWORD;
 | 
			
		||||
          elpBrushStyle : UINT;
 | 
			
		||||
          elpColor : COLORREF;
 | 
			
		||||
          elpHatch : ULONG_ptr;
 | 
			
		||||
          elpHatch : ULONG_PTR;
 | 
			
		||||
          elpNumEntries : DWORD;
 | 
			
		||||
          elpStyleEntry : array[0..0] of DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
@ -3574,6 +3581,14 @@ Const
 | 
			
		||||
          nPalEntries : DWORD;
 | 
			
		||||
          szlDevice : SIZEL;
 | 
			
		||||
          szlMillimeters : SIZEL;
 | 
			
		||||
// #if (WINVER >= 0x0400)
 | 
			
		||||
          cbPixelFormat : DWORD;
 | 
			
		||||
          offPixelFormat : DWORD;
 | 
			
		||||
          bOpenGL : DWORD;
 | 
			
		||||
// #endif
 | 
			
		||||
// #if (WINVER >= 0x0500)
 | 
			
		||||
          szlMicrometers : SIZEL;
 | 
			
		||||
// #endif
 | 
			
		||||
       end;
 | 
			
		||||
     LPENHMETAHEADER = ^ENHMETAHEADER;
 | 
			
		||||
     tagENHMETAHEADER = ENHMETAHEADER;
 | 
			
		||||
@ -3627,8 +3642,8 @@ Const
 | 
			
		||||
 | 
			
		||||
     ENUMLOGFONT = record
 | 
			
		||||
          elfLogFont : LOGFONT;
 | 
			
		||||
          elfFullName : array[0..(LF_FULLFACESIZE)-1] of BCHAR;
 | 
			
		||||
          elfStyle : array[0..(LF_FACESIZE)-1] of BCHAR;
 | 
			
		||||
          elfFullName : array[0..(LF_FULLFACESIZE)-1] of TCHAR;
 | 
			
		||||
          elfStyle : array[0..(LF_FACESIZE)-1] of TCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     tagENUMLOGFONT = ENUMLOGFONT;
 | 
			
		||||
     TENUMLOGFONT = ENUMLOGFONT;
 | 
			
		||||
@ -3636,9 +3651,9 @@ Const
 | 
			
		||||
 | 
			
		||||
     ENUMLOGFONTEX = record
 | 
			
		||||
          elfLogFont : LOGFONT;
 | 
			
		||||
          elfFullName : array[0..(LF_FULLFACESIZE)-1] of BCHAR;
 | 
			
		||||
          elfStyle : array[0..(LF_FACESIZE)-1] of BCHAR;
 | 
			
		||||
          elfScript : array[0..(LF_FACESIZE)-1] of BCHAR;
 | 
			
		||||
          elfFullName : array[0..(LF_FULLFACESIZE)-1] of TCHAR;
 | 
			
		||||
          elfStyle : array[0..(LF_FACESIZE)-1] of TCHAR;
 | 
			
		||||
          elfScript : array[0..(LF_FACESIZE)-1] of TCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     tagENUMLOGFONTEX = ENUMLOGFONTEX;
 | 
			
		||||
     TENUMLOGFONTEX = ENUMLOGFONTEX;
 | 
			
		||||
@ -3927,10 +3942,10 @@ Const
 | 
			
		||||
          lpOrder : ^UINT;
 | 
			
		||||
          lpDx : ^WINT;
 | 
			
		||||
          lpCaretPos : ^WINT;
 | 
			
		||||
          lpClass : LPTSTR;
 | 
			
		||||
          lpGlyphs : ^UINT;
 | 
			
		||||
          lpClass : LPSTR;           { Unicode-independent, i.e. not LPTSTR }
 | 
			
		||||
          lpGlyphs : LPWSTR;         { Unicode-independent }
 | 
			
		||||
          nGlyphs : UINT;
 | 
			
		||||
          nMaxFit : UINT;
 | 
			
		||||
          nMaxFit : WINT;
 | 
			
		||||
       end;
 | 
			
		||||
     LPGCP_RESULTS = ^GCP_RESULTS;
 | 
			
		||||
     tagGCP_RESULTS = GCP_RESULTS;
 | 
			
		||||
@ -4043,6 +4058,8 @@ Const
 | 
			
		||||
          iCtrlId : longint;
 | 
			
		||||
          hItemHandle : HANDLE;
 | 
			
		||||
          dwContextId : DWORD_PTR;
 | 
			
		||||
 // NOTE:  this is defined as DWORD in http://msdn.microsoft.com/en-us/library/windows/desktop/bb773313%28v=vs.85%29.asp
 | 
			
		||||
// but mingw has it as DWORD_PTR, so we will use that
 | 
			
		||||
          MousePos : POINT;
 | 
			
		||||
       end;
 | 
			
		||||
     LPHELPINFO = ^HELPINFO;
 | 
			
		||||
@ -4465,6 +4482,8 @@ Const
 | 
			
		||||
          pt : POINT;
 | 
			
		||||
          flags : UINT;
 | 
			
		||||
          iItem : longint;
 | 
			
		||||
          iSubItem : longint;
 | 
			
		||||
          iGroup : longint;
 | 
			
		||||
       end;
 | 
			
		||||
     _LV_HITTESTINFO = LV_HITTESTINFO;
 | 
			
		||||
     TLVHITTESTINFO = LV_HITTESTINFO;
 | 
			
		||||
@ -4739,8 +4758,8 @@ Const
 | 
			
		||||
          hsz1 : HSZ;
 | 
			
		||||
          hsz2 : HSZ;
 | 
			
		||||
          hData : HDDEDATA;
 | 
			
		||||
          dwData1 : DWORD;
 | 
			
		||||
          dwData2 : DWORD;
 | 
			
		||||
          dwData1 : ULONG_PTR;
 | 
			
		||||
          dwData2 : ULONG_PTR;
 | 
			
		||||
          cc : CONVCONTEXT;
 | 
			
		||||
          cbData : DWORD;
 | 
			
		||||
          Data : array[0..7] of DWORD;
 | 
			
		||||
@ -4860,7 +4879,7 @@ Const
 | 
			
		||||
          pt : POINT;
 | 
			
		||||
          hwnd : HWND;
 | 
			
		||||
          wHitTestCode : UINT;
 | 
			
		||||
          dwExtraInfo : DWORD;
 | 
			
		||||
          dwExtraInfo : ULONG_PTR;
 | 
			
		||||
       end;
 | 
			
		||||
     LPMOUSEHOOKSTRUCT = ^MOUSEHOOKSTRUCT;
 | 
			
		||||
     tagMOUSEHOOKSTRUCT = MOUSEHOOKSTRUCT;
 | 
			
		||||
@ -4886,10 +4905,10 @@ Const
 | 
			
		||||
          cbSize : UINT;
 | 
			
		||||
          hwndOwner : HWND;
 | 
			
		||||
          hInstance : HINST;
 | 
			
		||||
          lpszText : LPCSTR;
 | 
			
		||||
          lpszCaption : LPCSTR;
 | 
			
		||||
          lpszText : LPCTSTR;
 | 
			
		||||
          lpszCaption : LPCTSTR;
 | 
			
		||||
          dwStyle : DWORD;
 | 
			
		||||
          lpszIcon : LPCSTR;
 | 
			
		||||
          lpszIcon : LPCTSTR;
 | 
			
		||||
          dwContextHelpId : DWORD_PTR;
 | 
			
		||||
          lpfnMsgBoxCallback : MSGBOXCALLBACK;
 | 
			
		||||
          dwLanguageId : DWORD;
 | 
			
		||||
@ -5015,7 +5034,7 @@ Const
 | 
			
		||||
          dwSize : DWORD;
 | 
			
		||||
          dwFlags : DWORD;
 | 
			
		||||
          dwHelpContext : DWORD;
 | 
			
		||||
          lData : LONG;
 | 
			
		||||
          lpData : LONG_PTR;
 | 
			
		||||
          hIcon : HICON;
 | 
			
		||||
          szName : array[0..31] of AnsiCHAR;
 | 
			
		||||
          szInfo : array[0..63] of AnsiCHAR;
 | 
			
		||||
@ -5232,6 +5251,7 @@ Const
 | 
			
		||||
          lfMenuFont : LOGFONT;
 | 
			
		||||
          lfStatusFont : LOGFONT;
 | 
			
		||||
          lfMessageFont : LOGFONT;
 | 
			
		||||
          //iPaddedBorderWidth : longint;     // WINVER >= 0x0600
 | 
			
		||||
       end;
 | 
			
		||||
     LPNONCLIENTMETRICS = ^NONCLIENTMETRICS;
 | 
			
		||||
     tagNONCLIENTMETRICS = NONCLIENTMETRICS;
 | 
			
		||||
@ -5780,8 +5800,8 @@ Const
 | 
			
		||||
     TPRINTDLG = packed record
 | 
			
		||||
          lStructSize : DWORD;
 | 
			
		||||
          hwndOwner : HWND;
 | 
			
		||||
          hDevMode : HANDLE;
 | 
			
		||||
          hDevNames : HANDLE;
 | 
			
		||||
          hDevMode : HGLOBAL;
 | 
			
		||||
          hDevNames : HGLOBAL;
 | 
			
		||||
          hDC : HDC;
 | 
			
		||||
          Flags : DWORD;
 | 
			
		||||
          nFromPage : WORD;
 | 
			
		||||
@ -5790,13 +5810,13 @@ Const
 | 
			
		||||
          nMaxPage : WORD;
 | 
			
		||||
          nCopies : WORD;
 | 
			
		||||
          hInstance : HINST;
 | 
			
		||||
          lCustData : DWORD;
 | 
			
		||||
          lCustData : LPARAM;
 | 
			
		||||
          lpfnPrintHook : LPPRINTHOOKPROC;
 | 
			
		||||
          lpfnSetupHook : LPSETUPHOOKPROC;
 | 
			
		||||
          lpPrintTemplateName : LPCTSTR;
 | 
			
		||||
          lpSetupTemplateName : LPCTSTR;
 | 
			
		||||
          hPrintTemplate : HANDLE;
 | 
			
		||||
          hSetupTemplate : HANDLE;
 | 
			
		||||
          hPrintTemplate : HGLOBAL;
 | 
			
		||||
          hSetupTemplate : HGLOBAL;
 | 
			
		||||
       end;
 | 
			
		||||
     LPPRINTDLG = ^TPRINTDLG;
 | 
			
		||||
     PPRINTDLG = ^TPRINTDLG;
 | 
			
		||||
@ -5955,11 +5975,15 @@ Const
 | 
			
		||||
          cbOverhead : BYTE;
 | 
			
		||||
          iRegionIndex : BYTE;
 | 
			
		||||
          wFlags : WORD;
 | 
			
		||||
          dwCommittedSize : DWORD;
 | 
			
		||||
          dwUnCommittedSize : DWORD;
 | 
			
		||||
          lpFirstBlock : LPVOID;
 | 
			
		||||
          lpLastBlock : LPVOID;
 | 
			
		||||
          hMem : HANDLE;
 | 
			
		||||
          case longint of
 | 
			
		||||
            0 : (hMem : HANDLE;
 | 
			
		||||
                 dwReserved : array [0..2] of DWORD;
 | 
			
		||||
                );
 | 
			
		||||
            1 : (dwCommittedSize : DWORD;
 | 
			
		||||
                 dwUnCommittedSize : DWORD;
 | 
			
		||||
                 lpFirstBlock : LPVOID;
 | 
			
		||||
                 lpLastBlock : LPVOID;
 | 
			
		||||
                );
 | 
			
		||||
       end;
 | 
			
		||||
     LPPROCESS_HEAP_ENTRY = ^PROCESS_HEAPENTRY;
 | 
			
		||||
     _PROCESS_HEAP_ENTRY = PROCESS_HEAPENTRY;
 | 
			
		||||
@ -6181,12 +6205,46 @@ Const
 | 
			
		||||
        RASCONN  = RASCONNA;
 | 
			
		||||
     {$endif}
 | 
			
		||||
 | 
			
		||||
     { actually: in_addr }
 | 
			
		||||
     RASIPV4ADDR = record
 | 
			
		||||
       case longint of
 | 
			
		||||
         0 : (s_b1 : BYTE;
 | 
			
		||||
              s_b2 : BYTE;
 | 
			
		||||
              s_b3 : BYTE;
 | 
			
		||||
              s_b4 : BYTE;
 | 
			
		||||
             );
 | 
			
		||||
         1 : (s_w1 : USHORT;
 | 
			
		||||
              s_w2 : USHORT;
 | 
			
		||||
             );
 | 
			
		||||
         2 : (S_addr : ULONG;);
 | 
			
		||||
     end;
 | 
			
		||||
 | 
			
		||||
     { actually: in6_addr }
 | 
			
		||||
     RASIPV6ADDR = record
 | 
			
		||||
       case longint of
 | 
			
		||||
         0 : (rbyte : array[0..15] of BYTE);
 | 
			
		||||
         1 : (rword : array[0..7] of USHORT);
 | 
			
		||||
     end;
 | 
			
		||||
 | 
			
		||||
     RASTUNNELENDPOINT = record
 | 
			
		||||
       dwType : DWORD;
 | 
			
		||||
       case longint of
 | 
			
		||||
         0 : (ipv4 : RASIPV4ADDR);
 | 
			
		||||
         1 : (ipv6 : RASIPV6ADDR);
 | 
			
		||||
     end;
 | 
			
		||||
 | 
			
		||||
     RASCONNSUBSTATE = longint;   //enumerated type
 | 
			
		||||
 | 
			
		||||
     RASCONNSTATUSA = record
 | 
			
		||||
          dwSize : DWORD;
 | 
			
		||||
          rasconnstate : RASCONNSTATE;
 | 
			
		||||
          dwError : DWORD;
 | 
			
		||||
          szDeviceType : array[0..(RAS_MaxDeviceType + 1)-1] of AnsiCHAR;
 | 
			
		||||
          szDeviceName : array[0..(RAS_MaxDeviceName + 1)-1] of AnsiCHAR;
 | 
			
		||||
          szPhoneNumber : array[0..(RAS_MaxPhoneNumber + 1)-1] of AnsiCHAR; // http://msdn.microsoft.com/en-us/library/windows/desktop/aa376728%28v=vs.85%29.aspx
 | 
			
		||||
          localEndPoint : RASTUNNELENDPOINT;
 | 
			
		||||
          remoteEndPoint : RASTUNNELENDPOINT;
 | 
			
		||||
          rasconnsubstate : RASCONNSUBSTATE;
 | 
			
		||||
       end;
 | 
			
		||||
     _RASCONNSTATUSA = RASCONNSTATUSA;
 | 
			
		||||
     TRASCONNSTATUSA = RASCONNSTATUSA;
 | 
			
		||||
@ -6198,6 +6256,10 @@ Const
 | 
			
		||||
          dwError : DWORD;
 | 
			
		||||
          szDeviceType : array[0..(RAS_MaxDeviceType + 1)-1] of WideCHAR;
 | 
			
		||||
          szDeviceName : array[0..(RAS_MaxDeviceName + 1)-1] of WideCHAR;
 | 
			
		||||
          szPhoneNumber : array[0..(RAS_MaxPhoneNumber + 1)-1] of WideCHAR; // http://msdn.microsoft.com/en-us/library/windows/desktop/aa376728%28v=vs.85%29.aspx
 | 
			
		||||
          localEndPoint : RASTUNNELENDPOINT;
 | 
			
		||||
          remoteEndPoint : RASTUNNELENDPOINT;
 | 
			
		||||
          rasconnsubstate : RASCONNSUBSTATE;
 | 
			
		||||
       end;
 | 
			
		||||
     _RASCONNSTATUSW = RASCONNSTATUSW;
 | 
			
		||||
     TRASCONNSTATUSW = RASCONNSTATUSW;
 | 
			
		||||
@ -6232,6 +6294,9 @@ Const
 | 
			
		||||
          szUserName : array[0..(UNLEN + 1)-1] of AnsiCHAR;
 | 
			
		||||
          szPassword : array[0..(PWLEN + 1)-1] of AnsiCHAR;
 | 
			
		||||
          szDomain : array[0..(DNLEN + 1)-1] of AnsiCHAR;
 | 
			
		||||
          dwSubEntry : DWORD; // http://msdn.microsoft.com/en-us/library/windows/desktop/aa377238%28v=vs.85%29.aspx
 | 
			
		||||
          dwCallbackId : ULONG_PTR;
 | 
			
		||||
          dwIfIndex : DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
     _RASDIALPARAMSA = RASDIALPARAMSA;
 | 
			
		||||
     TRASDIALPARAMSA = RASDIALPARAMSA;
 | 
			
		||||
@ -6245,6 +6310,9 @@ Const
 | 
			
		||||
          szUserName : array[0..(UNLEN + 1)-1] of WCHAR;
 | 
			
		||||
          szPassword : array[0..(PWLEN + 1)-1] of WCHAR;
 | 
			
		||||
          szDomain : array[0..(DNLEN + 1)-1] of WCHAR;
 | 
			
		||||
          dwSubEntry : DWORD; // http://msdn.microsoft.com/en-us/library/windows/desktop/aa377238%28v=vs.85%29.aspx
 | 
			
		||||
          dwCallbackId : ULONG_PTR;
 | 
			
		||||
          dwIfIndex : DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
     _RASDIALPARAMSW = RASDIALPARAMSW;
 | 
			
		||||
     TRASDIALPARAMSW = RASDIALPARAMSW;
 | 
			
		||||
@ -6264,6 +6332,9 @@ Const
 | 
			
		||||
     RASENTRYNAMEA = record
 | 
			
		||||
          dwSize : DWORD;
 | 
			
		||||
          szEntryName : array[0..(RAS_MaxEntryName + 1)-1] of AnsiCHAR;
 | 
			
		||||
          { Winver>=0x500 members }
 | 
			
		||||
          dwFlags : DWORD;
 | 
			
		||||
          szPhonebookPath : array[0..(MAX_PATH + 1)-1] of AnsiCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     _RASENTRYNAMEA = RASENTRYNAMEA;
 | 
			
		||||
     TRASENTRYNAMEA = RASENTRYNAMEA;
 | 
			
		||||
@ -6272,6 +6343,9 @@ Const
 | 
			
		||||
     RASENTRYNAMEW = record
 | 
			
		||||
          dwSize : DWORD;
 | 
			
		||||
          szEntryName : array[0..(RAS_MaxEntryName + 1)-1] of WCHAR;
 | 
			
		||||
          { Winver>=0x500 members }
 | 
			
		||||
          dwFlags : DWORD;
 | 
			
		||||
          szPhonebookPath : array[0..(MAX_PATH + 1)-1] of WCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     _RASENTRYNAMEW = RASENTRYNAMEW;
 | 
			
		||||
     TRASENTRYNAMEW = RASENTRYNAMEW;
 | 
			
		||||
@ -6501,7 +6575,7 @@ Const
 | 
			
		||||
     Pselchange = ^SELCHANGE;
 | 
			
		||||
 | 
			
		||||
     SERIALKEYS = record
 | 
			
		||||
          cbSize : DWORD;
 | 
			
		||||
          cbSize : UINT;
 | 
			
		||||
          dwFlags : DWORD;
 | 
			
		||||
          lpszActivePort : LPSTR;
 | 
			
		||||
          lpszPort : LPSTR;
 | 
			
		||||
@ -6574,8 +6648,8 @@ Const
 | 
			
		||||
          hIcon : HICON;
 | 
			
		||||
          iIcon : longint;
 | 
			
		||||
          dwAttributes : DWORD;
 | 
			
		||||
          szDisplayName : array[0..(MAX_PATH)-1] of char;
 | 
			
		||||
          szTypeName : array[0..79] of char;
 | 
			
		||||
          szDisplayName : array[0..(MAX_PATH)-1] of TCHAR;
 | 
			
		||||
          szTypeName : array[0..79] of TCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     _SHFILEINFO = SHFILEINFO;
 | 
			
		||||
     TSHFILEINFO = SHFILEINFO;
 | 
			
		||||
@ -6588,12 +6662,12 @@ Const
 | 
			
		||||
     SHFILEOPSTRUCT = record
 | 
			
		||||
          hwnd : HWND;
 | 
			
		||||
          wFunc : UINT;
 | 
			
		||||
          pFrom : LPCSTR;
 | 
			
		||||
          pTo : LPCSTR;
 | 
			
		||||
          pFrom : LPCSTR;   // PCZZTSTR
 | 
			
		||||
          pTo : LPCSTR;     // PCZZTSTR
 | 
			
		||||
          fFlags : FILEOP_FLAGS;
 | 
			
		||||
          fAnyOperationsAborted : WINBOOL;
 | 
			
		||||
          hNameMappings : LPVOID;
 | 
			
		||||
          lpszProgressTitle : LPCSTR;
 | 
			
		||||
          lpszProgressTitle : LPCSTR;   // PCTSTR
 | 
			
		||||
       end;
 | 
			
		||||
     LPSHFILEOPSTRUCT = ^SHFILEOPSTRUCT;
 | 
			
		||||
     _SHFILEOPSTRUCT = SHFILEOPSTRUCT;
 | 
			
		||||
@ -6703,7 +6777,7 @@ Const
 | 
			
		||||
 | 
			
		||||
     STYLEBUF = record
 | 
			
		||||
          dwStyle : DWORD;
 | 
			
		||||
          szDescription : array[0..31] of CHAR;
 | 
			
		||||
          szDescription : array[0..31] of TCHAR;
 | 
			
		||||
       end;
 | 
			
		||||
     LPSTYLEBUF = ^STYLEBUF;
 | 
			
		||||
     _tagSTYLEBUF = STYLEBUF;
 | 
			
		||||
@ -6743,6 +6817,7 @@ Const
 | 
			
		||||
			 );
 | 
			
		||||
                 1 : (
 | 
			
		||||
                      wProcessorArchitecture : WORD;
 | 
			
		||||
                      wReserved : WORD;
 | 
			
		||||
                    );
 | 
			
		||||
       end;
 | 
			
		||||
     LPSYSTEM_INFO = ^SYSTEM_INFO;
 | 
			
		||||
@ -6766,6 +6841,7 @@ Const
 | 
			
		||||
 | 
			
		||||
     TAPE_ERASE = record
 | 
			
		||||
          _Type : ULONG;
 | 
			
		||||
          Immediate : BOOLEAN;
 | 
			
		||||
       end;
 | 
			
		||||
     _TAPE_ERASE = TAPE_ERASE;
 | 
			
		||||
     TTAPEERASE = TAPE_ERASE;
 | 
			
		||||
@ -6791,8 +6867,8 @@ Const
 | 
			
		||||
     TAPE_GET_MEDIA_PARAMETERS = record
 | 
			
		||||
          Capacity : LARGE_INTEGER;
 | 
			
		||||
          Remaining : LARGE_INTEGER;
 | 
			
		||||
          BlockSize : DWORD;
 | 
			
		||||
          PartitionCount : DWORD;
 | 
			
		||||
          BlockSize : ULONG;
 | 
			
		||||
          PartitionCount : ULONG;
 | 
			
		||||
          WriteProtected : BOOLEAN;
 | 
			
		||||
       end;
 | 
			
		||||
     _TAPE_GET_MEDIA_PARAMETERS = TAPE_GET_MEDIA_PARAMETERS;
 | 
			
		||||
@ -6811,6 +6887,7 @@ Const
 | 
			
		||||
 | 
			
		||||
     TAPE_PREPARE = record
 | 
			
		||||
          Operation : ULONG;
 | 
			
		||||
          Immediate : BOOLEAN;
 | 
			
		||||
       end;
 | 
			
		||||
     _TAPE_PREPARE = TAPE_PREPARE;
 | 
			
		||||
     TTAPEPREPARE = TAPE_PREPARE;
 | 
			
		||||
@ -6839,6 +6916,7 @@ Const
 | 
			
		||||
          Partition : ULONG;
 | 
			
		||||
          OffsetLow : ULONG;
 | 
			
		||||
          OffsetHigh : ULONG;
 | 
			
		||||
          Immediate : BOOLEAN;
 | 
			
		||||
       end;
 | 
			
		||||
     _TAPE_SET_POSITION = TAPE_SET_POSITION;
 | 
			
		||||
     TTAPESETPOSITION = TAPE_SET_POSITION;
 | 
			
		||||
@ -6847,6 +6925,7 @@ Const
 | 
			
		||||
     TAPE_WRITE_MARKS = record
 | 
			
		||||
          _Type : ULONG;
 | 
			
		||||
          Count : ULONG;
 | 
			
		||||
          Immediate : BOOLEAN;
 | 
			
		||||
       end;
 | 
			
		||||
     _TAPE_WRITE_MARKS = TAPE_WRITE_MARKS;
 | 
			
		||||
     TTAPEWRITEMARKS = TAPE_WRITE_MARKS;
 | 
			
		||||
@ -6854,7 +6933,7 @@ Const
 | 
			
		||||
 | 
			
		||||
     TBADDBITMAP = record
 | 
			
		||||
          hInst : HINST;
 | 
			
		||||
          nID : UINT;
 | 
			
		||||
          nID : UINT_PTR;
 | 
			
		||||
       end;
 | 
			
		||||
     LPTBADDBITMAP = ^TBADDBITMAP;
 | 
			
		||||
     TTBADDBITMAP = TBADDBITMAP;
 | 
			
		||||
@ -6865,8 +6944,13 @@ Const
 | 
			
		||||
          idCommand : longint;
 | 
			
		||||
          fsState : BYTE;
 | 
			
		||||
          fsStyle : BYTE;
 | 
			
		||||
          dwData : DWORD;
 | 
			
		||||
          iString : longint;
 | 
			
		||||
{$ifdef _WIN64}
 | 
			
		||||
          bReserved : array[0..5] of BYTE;
 | 
			
		||||
{$else}
 | 
			
		||||
          bReserved : array[0..1] of BYTE;
 | 
			
		||||
{$endif}
 | 
			
		||||
          dwData : DWORD_PTR;
 | 
			
		||||
          iString : INT_PTR;
 | 
			
		||||
       end;
 | 
			
		||||
     LPTBBUTTON = ^TBBUTTON;
 | 
			
		||||
     LPCTBBUTTON = ^TBBUTTON;
 | 
			
		||||
@ -6966,7 +7050,7 @@ Const
 | 
			
		||||
     PTOGGLEKEYS = ^TOGGLEKEYS;
 | 
			
		||||
 | 
			
		||||
     TOKEN_SOURCE = record
 | 
			
		||||
          SourceName : array[0..7] of CHAR;
 | 
			
		||||
          SourceName : array[0..7] of CHAR;  // 0..(TOKEN_SOURCE_LENGTH-1)
 | 
			
		||||
          SourceIdentifier : LUID;
 | 
			
		||||
       end;
 | 
			
		||||
     _TOKEN_SOURCE = TOKEN_SOURCE;
 | 
			
		||||
@ -7056,6 +7140,8 @@ Const
 | 
			
		||||
          rect : RECT;
 | 
			
		||||
          hinst : HINST;
 | 
			
		||||
          lpszText : LPTSTR;
 | 
			
		||||
          lParam : LPARAM;
 | 
			
		||||
          lpReserved : LPVOID;
 | 
			
		||||
       end;
 | 
			
		||||
     LPTOOLINFO = ^TOOLINFO;
 | 
			
		||||
     TTOOLINFO = TOOLINFO;
 | 
			
		||||
@ -7064,9 +7150,10 @@ Const
 | 
			
		||||
     TOOLTIPTEXT = record
 | 
			
		||||
          hdr : NMHDR;
 | 
			
		||||
          lpszText : LPTSTR;
 | 
			
		||||
          szText : array[0..79] of char;
 | 
			
		||||
          szText : array[0..79] of TCHAR;
 | 
			
		||||
          hinst : HINST;
 | 
			
		||||
          uFlags : UINT;
 | 
			
		||||
          lParam : LPARAM;
 | 
			
		||||
       end;
 | 
			
		||||
     LPTOOLTIPTEXT = ^TOOLTIPTEXT;
 | 
			
		||||
     TTOOLTIPTEXT = TOOLTIPTEXT;
 | 
			
		||||
@ -7139,10 +7226,26 @@ Const
 | 
			
		||||
     TTVHITTESTINFO = TV_HITTESTINFO;
 | 
			
		||||
     PTVHITTESTINFO = ^TV_HITTESTINFO;
 | 
			
		||||
 | 
			
		||||
     TVITEMEX = record
 | 
			
		||||
          mask : UINT;
 | 
			
		||||
          hItem : HTREEITEM;
 | 
			
		||||
          state : UINT;
 | 
			
		||||
          stateMask : UINT;
 | 
			
		||||
          pszText : LPTSTR;
 | 
			
		||||
          cchTextMax : longint;
 | 
			
		||||
          iImage : longint;
 | 
			
		||||
          iSelectedImage : longint;
 | 
			
		||||
          cChildren : longint;
 | 
			
		||||
          lParam : LPARAM;
 | 
			
		||||
          iIntegral : longint;
 | 
			
		||||
       end;
 | 
			
		||||
 | 
			
		||||
     TV_INSERTSTRUCT = record
 | 
			
		||||
          hParent : HTREEITEM;
 | 
			
		||||
          hInsertAfter : HTREEITEM;
 | 
			
		||||
          item : TV_ITEM;
 | 
			
		||||
          case longint of
 | 
			
		||||
          0 : (item : TV_ITEM;);
 | 
			
		||||
          1 : (itemex : TVITEMEX;);
 | 
			
		||||
       end;
 | 
			
		||||
     LPTV_INSERTSTRUCT = ^TV_INSERTSTRUCT;
 | 
			
		||||
     _TV_INSERTSTRUCT = TV_INSERTSTRUCT;
 | 
			
		||||
@ -7195,7 +7298,7 @@ Const
 | 
			
		||||
     VALENT = record
 | 
			
		||||
          ve_valuename : LPTSTR;
 | 
			
		||||
          ve_valuelen : DWORD;
 | 
			
		||||
          ve_valueptr : DWORD;
 | 
			
		||||
          ve_valueptr : DWORD_PTR;
 | 
			
		||||
          ve_type : DWORD;
 | 
			
		||||
       end;
 | 
			
		||||
     TVALENT = VALENT;
 | 
			
		||||
@ -7291,7 +7394,7 @@ Const
 | 
			
		||||
          dwStreamAttributes : DWORD;
 | 
			
		||||
          Size : LARGE_INTEGER;
 | 
			
		||||
          dwStreamNameSize : DWORD;
 | 
			
		||||
          cStreamName : ^WCHAR;
 | 
			
		||||
          cStreamName : array[0..0] of WCHAR;  // really array[0..(dwStreamNameSize)] of WCHAR
 | 
			
		||||
       end;
 | 
			
		||||
     _WIN32_STREAM_ID = WIN32_STREAM_ID;
 | 
			
		||||
     TWIN32STREAMID = WIN32_STREAM_ID;
 | 
			
		||||
@ -7314,7 +7417,7 @@ Const
 | 
			
		||||
          lpfnWndProc : WNDPROC;
 | 
			
		||||
          cbClsExtra : longint;
 | 
			
		||||
          cbWndExtra : longint;
 | 
			
		||||
          hInstance : HANDLE;
 | 
			
		||||
          hInstance : HINST;
 | 
			
		||||
          hIcon : HICON;
 | 
			
		||||
          hCursor : HCURSOR;
 | 
			
		||||
          hbrBackground : HBRUSH;
 | 
			
		||||
@ -7331,7 +7434,7 @@ Const
 | 
			
		||||
          lpfnWndProc : WNDPROC;
 | 
			
		||||
          cbClsExtra : longint;
 | 
			
		||||
          cbWndExtra : longint;
 | 
			
		||||
          hInstance : HANDLE;
 | 
			
		||||
          hInstance : HINST;
 | 
			
		||||
          hIcon : HICON;
 | 
			
		||||
          hCursor : HCURSOR;
 | 
			
		||||
          hbrBackground : HBRUSH;
 | 
			
		||||
@ -7362,7 +7465,7 @@ Const
 | 
			
		||||
          lpfnWndProc : WNDPROC;
 | 
			
		||||
          cbClsExtra : longint;
 | 
			
		||||
          cbWndExtra : longint;
 | 
			
		||||
          hInstance : HANDLE;
 | 
			
		||||
          hInstance : HINST;
 | 
			
		||||
          hIcon : HICON;
 | 
			
		||||
          hCursor : HCURSOR;
 | 
			
		||||
          hbrBackground : HBRUSH;
 | 
			
		||||
@ -7381,7 +7484,7 @@ Const
 | 
			
		||||
          lpfnWndProc : WNDPROC;
 | 
			
		||||
          cbClsExtra : longint;
 | 
			
		||||
          cbWndExtra : longint;
 | 
			
		||||
          hInstance : HANDLE;
 | 
			
		||||
          hInstance : HINST;
 | 
			
		||||
          hIcon : HICON;
 | 
			
		||||
          hCursor : HCURSOR;
 | 
			
		||||
          hbrBackground : HBRUSH;
 | 
			
		||||
@ -7438,7 +7541,7 @@ Const
 | 
			
		||||
          dwProviderVersion : DWORD;
 | 
			
		||||
          dwStatus : DWORD;
 | 
			
		||||
          dwCharacteristics : DWORD;
 | 
			
		||||
          dwHandle : DWORD;
 | 
			
		||||
          dwHandle : ULONG_PTR;
 | 
			
		||||
          wNetType : WORD;
 | 
			
		||||
          dwPrinters : DWORD;
 | 
			
		||||
          dwDrives : DWORD;
 | 
			
		||||
@ -7710,7 +7813,17 @@ Const
 | 
			
		||||
          uFlags: UINT;
 | 
			
		||||
          uCallbackMessage: UINT;
 | 
			
		||||
          hIcon: HICON;
 | 
			
		||||
          szTip: array [0..63] of Char;
 | 
			
		||||
          szTip: array [0..127] of AnsiChar;
 | 
			
		||||
          dwState : DWORD;
 | 
			
		||||
          dwStateMask : DWORD;
 | 
			
		||||
          szInfo : array[0..255] of AnsiChar;
 | 
			
		||||
          case longint of
 | 
			
		||||
            0 : (uTimeout : UINT;);
 | 
			
		||||
            1 : (uVersion : UINT;
 | 
			
		||||
                 szInfoTitle : array[0..63] of AnsiChar;
 | 
			
		||||
                 dwInfoFlags : DWORD;
 | 
			
		||||
                 //guidItem : TGUID;     // #if (_WIN32_IE >= 0x600)}
 | 
			
		||||
                );
 | 
			
		||||
     end;
 | 
			
		||||
     _NOTIFYICONDATA = _NOTIFYICONDATAA;
 | 
			
		||||
 | 
			
		||||
@ -7721,7 +7834,17 @@ Const
 | 
			
		||||
         uFlags: UINT;
 | 
			
		||||
         uCallbackMessage: UINT;
 | 
			
		||||
         hIcon: HICON;
 | 
			
		||||
         szTip: array [0..63] of Word;
 | 
			
		||||
         szTip: array [0..127] of WCHAR;
 | 
			
		||||
         dwState : DWORD;
 | 
			
		||||
         dwStateMask : DWORD;
 | 
			
		||||
         szInfo : array[0..255] of WCHAR;
 | 
			
		||||
         case longint of
 | 
			
		||||
           0 : (uTimeout : UINT;);
 | 
			
		||||
           1 : (uVersion : UINT;
 | 
			
		||||
                szInfoTitle : array[0..63] of WCHAR;
 | 
			
		||||
                dwInfoFlags : DWORD;
 | 
			
		||||
                //guidItem : TGUID;     // #if (_WIN32_IE >= 0x600)}
 | 
			
		||||
               );
 | 
			
		||||
     end;
 | 
			
		||||
     TNotifyIconDataA = _NOTIFYICONDATAA;
 | 
			
		||||
     TNotifyIconDataW = _NOTIFYICONDATAW;
 | 
			
		||||
@ -7941,8 +8064,13 @@ const
 | 
			
		||||
  IMAGE_ROM_OPTIONAL_HDR_MAGIC  = $107;
 | 
			
		||||
 | 
			
		||||
type
 | 
			
		||||
{$ifdef _WIN64}
 | 
			
		||||
  IMAGE_OPTIONAL_HEADER = IMAGE_OPTIONAL_HEADER64;
 | 
			
		||||
  PIMAGE_OPTIONAL_HEADER = PIMAGE_OPTIONAL_HEADER64;
 | 
			
		||||
{$else}
 | 
			
		||||
  IMAGE_OPTIONAL_HEADER = IMAGE_OPTIONAL_HEADER32;
 | 
			
		||||
  PIMAGE_OPTIONAL_HEADER = PIMAGE_OPTIONAL_HEADER32;
 | 
			
		||||
{$endif}
 | 
			
		||||
  TImageOptionalHeader = IMAGE_OPTIONAL_HEADER;
 | 
			
		||||
  PImageOptionalHeader = PIMAGE_OPTIONAL_HEADER;
 | 
			
		||||
 | 
			
		||||
@ -7980,10 +8108,15 @@ type
 | 
			
		||||
  TImageRomHeaders = IMAGE_ROM_HEADERS;
 | 
			
		||||
  PImageRomHeaders = PIMAGE_ROM_HEADERS;
 | 
			
		||||
 | 
			
		||||
{$ifdef _WIN64}
 | 
			
		||||
  IMAGE_NT_HEADERS = IMAGE_NT_HEADERS64;
 | 
			
		||||
  PIMAGE_NT_HEADERS = PIMAGE_NT_HEADERS64;
 | 
			
		||||
{$else}
 | 
			
		||||
  IMAGE_NT_HEADERS = IMAGE_NT_HEADERS32;
 | 
			
		||||
  PIMAGE_NT_HEADERS = PIMAGE_NT_HEADERS32;
 | 
			
		||||
{$endif}
 | 
			
		||||
 | 
			
		||||
  TImageNtHeaders = IMAGE_NT_HEADERS32;
 | 
			
		||||
  TImageNtHeaders = IMAGE_NT_HEADERS;
 | 
			
		||||
  PImageNtHeaders = PIMAGE_NT_HEADERS;
 | 
			
		||||
 | 
			
		||||
  _GET_FILEEX_INFO_LEVELS = (GetFileExInfoStandard, GetFileExMaxInfoLevel);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user