一.VirtualFreeEx 释放内存失败-错误码 87
mFuncAddr = VirtualAllocEx(hProcess, NULL, 1000, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
//远程申请了1000个字节大小的内存区域,权限为可读,可写,可执行
VirtualFreeEx(hProcess, mFuncAddr, 1000, MEM_RELEASE); //错误写法
//原本第三个参数,写的是1000,但是,在释放内存的时候,发现内存释放不掉,一直在占用。
//因为,第4个参数,如果选择MEM_RELEASE,意思是,释放从这个地址开始,申请的全部占用内存,第三个参数,就赋值0就好了。否则,报错。
VirtualFreeEx(hProcess, mFuncAddr, 0, MEM_RELEASE); //正确写法