Einzelnen Beitrag anzeigen

MCQ

Registriert seit: 14. Jan 2004
Ort: Dessau
80 Beiträge
 
#1

E/A-Fehler 998 bei BlockRead :(

  Alt 9. Dez 2005, 17:57
Delphi-Quellcode:
function AddToArchive(archive_filename:String;InstallPath:String;FileName:String):boolean;
var fpos_start:cardinal;
    CRC:DWORD;
    buf:array[0..10000] of DWORD;
    OneChar:Char;
    fArchiv,fSource:file;
    gelesen:integer;
    i:integer;
    fName:String;
begin
// Fügt eine Datei dem Archiv hinzu
 CRC:=0;
 OneChar:=#0;
 gelesen:=0;
 AssignFile(fArchiv,archive_filename);
 AssignFile(fSource,FileName);
 reset(fArchiv);
 reset(fSource);
 fpos_start:=filesize(fArchiv);
 seek(fArchiv,fpos_start);
 FName:=InstallPath+ExtractFileName(FileName);
 BlockWrite(fArchiv,CRC,SizeOf(CRC));
 BlockWrite(fArchiv,FName,length(FName));
 BlockWrite(fArchiv,OneChar,SizeOf(OneChar));
 While Not eof(fSource) do
  begin
   BlockRead(fSource,Buf,10000,gelesen);
   BlockWrite(fArchiv,Buf,gelesen);
   For i := 0 to gelesen do
    begin
     CRC:=CRC xor Buf[i];
    end;
  end;
 CloseFile(fSource);
 CloseFile(fArchiv);
end;
Mit dieser Prozedure hab ich angefangen zu versuchen eine Datei in ein eigenes Archiv hinzuzufügen, allerdings stüzt das Programm in der BlockRead-Zeile mit einem E/A-Fehler 998 ab.
Ich konnte leider bisher nichts finden, deshalb hoffe ich hier eine antwort auf die Frage zu finden. Was bedeutet dieser e/A-Fehler 998 und wie kann ich ihn vermeiden?
  Mit Zitat antworten Zitat