Comment faire pour éliminer ces ennuyeux ntdll.dbgUserBreakPoints
PatchINT3 est basée sur le code de Pete Morris
Ajouter cette procédure à votre unité, et aussi l'initialisation
section ci-dessous. Au moment de l'exécution, le contrevenant sera remplacé INT3
par une instruction NOP.
PatchINT3 procédure;
var
NOP: Byte;
BytesWritten: DWORD;
Ntdll: de manier;
P: Pointer;
commencer
si Win32Platform <> VER_PLATFORM_WIN32_NT puis
Exit;
Ntdll: = GetModuleHandle ( 'ntdll.dll');
ntdll si = 0 alors
Exit;
P: = GetProcAddress (ntdll, DbgBreakPoint ');
si P = nil alors
Exit;
essayer
Car si (P ^) <> # $ CC alors
Exit;
NOP: = $ 90;
si WriteProcessMemory (GetCurrentProcess, P, @ NOP, 1,
BytesWritten) et
(BytesWritten = 1) alors
FlushInstructionCache (GetCurrentProcess, P, 1);
sauf
/ / Ne paniquez pas si vous voyez un EAccessViolation ici,
/ / Il est tout à fait inoffensif!
EAccessViolation le faire;
else soulever;
fin;
fin;
initialisation
PatchINT3;

Delicious
Digg
Google
Yahoo