Voici une unité avec son exemple
pour détecter le debuggeur SoftIce
Softice est un débuggeur (pour detecter les bugs d'une application.
Il permet d'executer une application (plus précisement Windows) pas à pas.
Cela permet de savoir précisément où l'erreur existe.
Il permet aussi de voir le contenue de la mémoire et des registres à un moment d'arret.
SoftIce n'est pas à mettre entre toutes les mains.
Novice s'abstenir.
Source / Exemple :
Function IsSoftIceLoaded :Boolean;
var hFile: Thandle;
begin
result := false;
// --- Pour SoftIce95 ---
hFile := CreateFileA('\\.\SICE', GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
if( hFile <> INVALID_HANDLE_VALUE ) then
begin
CloseHandle(hFile);
result := TRUE;
end;
if result = true then exit; // Si SoftIce95 est chargé, on ne continue pas la détection
// --- Pour SoftIceNT ---
hFile := CreateFileA('\\.\NTICE', GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
if( hFile <> INVALID_HANDLE_VALUE ) then
begin
CloseHandle(hFile);
result := TRUE;
end;
end;
Conclusion :
http://delphicool.developpez.com
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.