Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Ошибка при WriteProcessMemory


Автор: Sheff 14.11.2003, 17:41
Люди, проблема, есть код:
Код

if (!CreateProcess("process.exe","",NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS,NULL,NULL,&SI,&PI))
{
 MessageBox(0,"Error loading process.exe",NULL,MB_ICONERROR|MB_TOPMOST);
 return -1;
}
if (PI.hProcess)
{
 while (ReadProcessMemory(PI.hProcess,(LPVOID)0x0049f44f,&buf2,1,NULL)!=0)
 {
  if (buf2 == 0x74/*op-code for jz*/)
  {
   if (WriteProcessMemory(PI.hProcess,(LPVOID)0x0049f44f,&buf,1,NULL)==0) //Replace it with jnz
   {
    MessageBox(0,"Failed writing to process memory!",NULL,NULL);
   }
   return 0;
  }
 }
}
return 0;
}

Его задача, загрузить .exe, подождать, пока в адрес 0x0049f44f не загрузится 0xA74 и переписать 0x74 на 0x75
Но при запуске этой проги, вечно выскаивает Message Box с заголовком "Protection Error" и с текстом сообщения: "Error: 15"
Но если перед
Код
if (PI.hProcess)
написать Sleep(200); То всё Ok и память пишется нормально. В чём дело ? Можно как-то записать в память без этого Sleep'а confused.gif

Автор: Ars 14.11.2003, 18:55
Попробуй с помощью VirtualProtectEx установить доступ на чтение/запись

Автор: man2002ua 15.11.2003, 11:46
А ты не задумывался, над тем, что эта ошибка выдается после проверки целостности программы? smile.gif
Распаковщик (небось Asprotect?) распаковал код, заодно проверил целостность... Чего лечим-то?

Автор: Sheff 15.11.2003, 19:21
man2002ua
Да так, одну прогу ломаю, всё что надо сделал, осталось тока Loader написать,а тут лажа
Ars
Не помогает sad.gif

Что ж делать, народ ?

Автор: man2002ua 17.11.2003, 10:06
что за программа?

Автор: Sheff 20.11.2003, 19:28
Deep Exploration, а в прочем какая разница, WriteProcessMemory не смотрит какая программа

Автор: man2002ua 21.11.2003, 09:58
В инете есть несколько кряков для 3-й версии. Зачем ее нужно ломать еще раз? Или у тебя 4-я версия?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)