BOOL 恢復原始記憶體資料()
{
__asm{int 3}
if (VirtualAlloc(舊模塊地址, 4096, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE) == 0)
{
char msg[256];
sprintf_s(msg, "分配資訊表地址失敗:%d", GetLastError());
MessageBoxA(NULL, msg, "caption", 0);
return FALSE;
}
memcpy(舊模塊地址, 臨時資訊表地址, 4096);
for (int i = 0; i < 塊數;i++)
{
if (VirtualAlloc((PVOID)(舊塊地址[i]), 舊塊尺寸[i], MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE) == 0)
{
char msg[256];
sprintf_s(msg, "分配塊地址失敗:%d", GetLastError());
MessageBoxA(NULL, msg, "caption", 0);
return FALSE;
}
memcpy((PVOID)(舊塊地址[i]), 臨時塊表地址[i], 舊塊尺寸[i]);
}
return TRUE;
}
第一步先復制了模塊資料到臨時地址里
第二步FreeLibrary了舊模塊
第三步(出錯了)在申請節地址時提示錯誤487
卡了兩天了,萬般無奈上網求助
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/133312.html
標籤:基礎類
