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;

Average rating: