我在远程进程上使用VirtualAllocEx来保留这样的空间:
VirtualAllocEX (RemoteProcessHandle, nil, SizeInBytes, MEM_COMMIT or MEM_RESERVE, PAGE_EXECUTE_READWRITE);
然后我用WriteProcessMemory
然后我正确使用
VirtualFreeEx (RemoteProcessHandle, Address, 0, MEM_RELEASE);
释放分配的空间。
是否可以在调用 VirtualAllocEx
之后检查VirtualFreeEx
的地址,以检查VirtualFreeEx
是否成功?
答案 0 :(得分:4)
只要将地址返回给系统,该地址的任何将来引用都将无效。成功拨打VirtualFreeEx
电话后,您不得再次引用Address
。将地址返回系统后,系统将拥有该地址。该地址将来有效的唯一方法是通过另一次调用VirtualAllocEx
。