AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Dynamisches Array & ReadFile

Ein Thema von WorstNightmare · begonnen am 2. Mai 2009 · letzter Beitrag vom 2. Mai 2009
 
WorstNightmare

Registriert seit: 6. Okt 2008
159 Beiträge
 
RAD-Studio 2010 Arc
 
#1

Dynamisches Array & ReadFile

  Alt 2. Mai 2009, 10:14
Hallo,

ich möchte ReadFile gerne ein dynamisches Array übergeben, allerdings schlägt es dann immer fehl.

Delphi-Quellcode:
function TPartition.ReadSector(Handle: THandle; lba, count: DWORD;
  var Buf): Integer;
var
  large: LARGE_INTEGER;
  read: DWORD;
  offset: Int64;
begin
  offset := lba;
  offset := offset * 512;
  large.QuadPart := offset;

  if not SetFilePointerEx(Handle, large, nil, FILE_BEGIN) then
  begin
  // Result := 1;
    raise Exception.Create('SetFilePointerEx fehlgeschlagen!');
  end;

  read := 0;
  if not ReadFile(Handle, Buf, count * 512, read, nil) then
  begin
 // Result := 1;
    raise Exception.Create('Sektor konnte nicht gelesen werden!');
  end;

  Result := 0;
end;

procedure TPartition.TestRead;
var
  bigBuf: array of Byte;
  i, disc_info_sz_lba: Integer;
begin
  i := 1;
  disc_info_sz_lba := 19;

  SetLength(bigBuf, 10000);
  Showmessage(IntToStr(SizeOf(bigBuf)));

  ReadSector(FHandle, 1 + i * disc_info_sz_lba, disc_info_sz_lba, bigBuf);
end;
Bei dem ShowMessage kommt 4 raus (ich glaube weil dynamische Arrays Pointer sind), wenn es aber ein statisches Array ist (damit funktioniert das Lesen dann auch), zeigt es die Länge + 1 oder 2 an. Somit kommt bei dieser dynamischen Variante "Sektor konnte nicht gelesen werden!".
Kann ich es irgendwie hinbekommen, die Größe dieses dynamischen Arrays zu vergrößern?
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz