Einzelnen Beitrag anzeigen

moperswings

Registriert seit: 27. Mai 2004
Ort: Bad Sooden-Allendorf
240 Beiträge
 
Delphi 6 Professional
 
#1

Shell-Funktion zum Kopieren hat einen Fehler

  Alt 30. Mai 2007, 16:13
Hallo,

ich habe dieses Beispiel-Programm um Dateien zu kopieren.
Das Kopieren funktioniert aber nur einmal, bei jedem weiteren Versuch kommt immer diese Fehlermeldung:
Datei kann nicht kopiert werden: Die QuellDatei oder vom Quelldatenträger kann nicht gelesen werden. Weiss jemand, wo da der Fehler ist und kann mir helfen?
Delphi-Quellcode:
uses shellapi;
{$R *.dfm}

var shellinfo : TSHFILEOPSTRUCT ;

type
TSHFILEOPSTRUCTA = record
        Wnd: HWND;
        Wfunc: uint;
        pfrom: pansichar;
        flags: fileop_flags;
        fanyoperationsaborted: bool;
        hnamemappings: pointer;
        lpszprogresstitle: pansichar;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
        i: integer;
        files: string;
begin
        files := '';
        for i := 0 to fileListBox1.Items.Count - 1 do
          if FileListBox1.Selected[i] then files := files + FileListbox1.Items[i] + #0;
        files := files + #0;

        fillchar(shellinfo, sizeof(shellinfo),0);
        with shellinfo do begin
          wnd := handle;
          wfunc := FO_COPY;
          pFrom := PCHAR(files);
          pTo := PChar(directoryListBox2.Directory);
        end;

        SHFileOperation(shellinfo);

        FileListBox1.Update;
        FileListBox2.Update;
end;
Viele Grüsse, moperswings
  Mit Zitat antworten Zitat