Thema: MBR auslesen

Einzelnen Beitrag anzeigen

bassman

Registriert seit: 8. Apr 2008
18 Beiträge
 
Delphi 2009 Professional
 
#13

Re: MBR auslesen

  Alt 1. Dez 2008, 15:01
So gehts bei mir

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  nBytesRead ,
  fHandle : Cardinal;
  Buffer : Array of Byte;
  Success : Boolean;
begin
fHandle := CreateFile(
    PChar('\\.\PHYSICALDRIVE0'), // ...PHYSICALDRIVE0 <--<< first Harddisk ( Primary Master )
    GENERIC_READ, // ...read only
    FILE_SHARE_WRITE, // ...Wichtig, nicht das es Probleme gibt
    nil,
    OPEN_EXISTING, // ...ist klar warum
    0,
    0);

  if fHandle = INVALID_HANDLE_VALUE then
  begin
    ShowMessage('CreateFile - Error: Invalid Handle');
    exit;
  end;

  SetLength(Buffer,512);

   // ....read the first 512 Byte (MBR)
  if not ReadFile(fHandle, Buffer[0], 512, nBytesRead, nil) then
  begin
    ShowMessage('ReadFile - Error');
  end;

  CloseHandle(fHandle); // ...Schnell wieder den MBR zu-machen ;-)

  // --- nun sollte man den MBR im Array "Buffer" haben ---
end;
Gruss, Jörn
  Mit Zitat antworten Zitat