瀏覽代碼

* several virtual* and heap* functions checked for 64-bit issues.

git-svn-id: trunk@17979 -
marco 14 年之前
父節點
當前提交
1e9733d2d7
共有 1 個文件被更改,包括 12 次插入9 次删除
  1. 12 9
      rtl/win/wininc/func.inc

+ 12 - 9
rtl/win/wininc/func.inc

@@ -87,20 +87,23 @@ 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 VirtualAlloc(lpAddress:LPVOID; dwSize:DWORD; flAllocationType:DWORD; flProtect:DWORD):LPVOID; external 'kernel32' name 'VirtualAlloc';
-function VirtualFree(lpAddress:LPVOID; dwSize:DWORD; dwFreeType:DWORD):WINBOOL; external 'kernel32' name 'VirtualFree';
-function VirtualProtect(lpAddress:LPVOID; dwSize:DWORD; flNewProtect:DWORD; lpflOldProtect:PDWORD):WINBOOL; external 'kernel32' name 'VirtualProtect';
-function VirtualQuery(lpAddress:LPCVOID; lpBuffer:PMEMORY_BASIC_INFORMATION; dwLength:DWORD):DWORD; external 'kernel32' name 'VirtualQuery';
+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';
+function VirtualFree(lpAddress:LPVOID; dwSize:PTRUINT; dwFreeType:DWORD):WINBOOL; external 'kernel32' name 'VirtualFree';
+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 VirtualQueryEx(hProcess:HANDLE; lpAddress:LPCVOID; lpBuffer:PMEMORY_BASIC_INFORMATION; dwLength:DWORD):DWORD; external 'kernel32' name 'VirtualQueryEx';
-function HeapCreate(flOptions:DWORD; dwInitialSize:DWORD; dwMaximumSize:DWORD):HANDLE; external 'kernel32' name 'HeapCreate';
+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 HeapReAlloc(hHeap:HANDLE; dwFlags:DWORD; lpMem:LPVOID; dwBytes:DWORD):LPVOID; external 'kernel32' name 'HeapReAlloc';
+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):DWORD; external 'kernel32' name 'HeapSize';
+function HeapSize(hHeap:HANDLE; dwFlags:DWORD; lpMem:LPCVOID):PTRUINT; external 'kernel32' name 'HeapSize';
 function HeapValidate(hHeap:HANDLE; dwFlags:DWORD; lpMem:LPCVOID):WINBOOL; external 'kernel32' name 'HeapValidate';
-function HeapCompact(hHeap:HANDLE; dwFlags:DWORD):UINT; external 'kernel32' name 'HeapCompact';
+function HeapCompact(hHeap:HANDLE; dwFlags:DWORD):PTRUINT; external 'kernel32' name 'HeapCompact';
 function GetProcessHeap:HANDLE; external 'kernel32' name 'GetProcessHeap';
 function GetProcessHeaps(NumberOfHeaps:DWORD; ProcessHeaps:PHANDLE):DWORD; external 'kernel32' name 'GetProcessHeaps';
 function HeapLock(hHeap:HANDLE):WINBOOL; external 'kernel32' name 'HeapLock';