Einzelnen Beitrag anzeigen

romber

Registriert seit: 15. Apr 2004
Ort: Köln
1.164 Beiträge
 
Delphi 10 Seattle Professional
 
#1

Schreibgeschützte Dateien kopieren?

  Alt 3. Sep 2006, 10:44
Hallo!

Ich habe einen Tipp bei "Swissdelphicenter" gefunden, wie mann eine Datei mit Fortschrittsanzeige kopiert.

Delphi-Quellcode:
procedure TForm1.CopyFileWithProgressBar1(Source, Destination: string);
var
  FromF, ToF: file of byte;
  Buffer: array[0..4096] of char;
  NumRead: integer;
  FileLength: longint;
begin
  AssignFile(FromF, Source);
  reset(FromF);
  AssignFile(ToF, Destination);
  rewrite(ToF);
  FileLength := FileSize(FromF);
  with Progressbar1 do
  begin
    Min := 0;
    Max := FileLength;
    while FileLength > 0 do
    begin
      BlockRead(FromF, Buffer[0], SizeOf(Buffer), NumRead);
      FileLength := FileLength - NumRead;
      BlockWrite(ToF, Buffer[0], NumRead);
      Position := Position + NumRead;
    end;
    CloseFile(FromF);
    CloseFile(ToF);
  end;
end;
Diese Code schlägt aber fehl, wenn die Quelldatei (z.B. auf einer CD) schreibgeschützt ist. Wie kann ich die Code so modernisieren, dass es auch für schreibgeschützte Dateien tauglich ist?

Danke!
  Mit Zitat antworten Zitat