Mega Code Archive

 
Categories / Delphi / Examples
 

How to check if Softice is loaded

Title: How to check if Softice is loaded //SoftIce in W9x OS function IsSoftIce95Loaded: Boolean; var hFile: THandle; begin Result := False; 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; end; // SoftIce in NT/2000 OS function IsSoftIceNTLoaded: Boolean; var hFile: THandle; begin Result := False; 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; procedure TForm1.Button1Click(Sender: TObject); begin if IsSoftIce95Loaded or IsSoftIceNTLoaded then begin //Do something if Softice is loaded end; end;