相关疑难解决方法(0)

使用VirtualAllocEX时出错代码487(ERROR_INVALID_ADDRESS)

我正在尝试使用VirtualAllocEx().当我将dwSize(第三个参数)设置为大于约63 MB的数字时,它会导致在我查看时生成错误代码487 GetLastError().但是,它适用于较小的尺寸,如4MB.

这是我的代码的一部分:

VirtualAllocEx(peProcessInformation.hProcess,
               (LPVOID)(INH.OptionalHeader.ImageBase),
               dwImageSize, 
               MEM_RESERVE | MEM_COMMIT,
               PAGE_EXECUTE_READWRITE);
Run Code Online (Sandbox Code Playgroud)

在我使用4MB EXE文件的情况下,LPVOID返回值是0x00400000,但在其他情况下(20MB或更大的文件)它返回0x00000000.

  1. 参数是否有最大值dwSize

  2. 我的问题是否有其他解决方案,例如另一个功能?

winapi memory-management error-code

4
推荐指数
1
解决办法
6282
查看次数

标签 统计

error-code ×1

memory-management ×1

winapi ×1