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