Einzelnen Beitrag anzeigen

freeriders

Registriert seit: 24. Feb 2008
15 Beiträge
 
#1

Shellfileoperation (Datei kann nicht kopiert werden)

  Alt 7. Mär 2008, 17:00
Hi!
Ja ich habe ein Problem bei Dateienkopieren mit Shellfileoperation.
Mein Programm sagt mir immer: "Datei kann nicht kopiert werden: Die Quelldatei oder vom Quelldatenträger kann nicht gelesen werden."

Also mein Code zum kopieren sieht so aus:
Delphi-Quellcode:
procedure ShellFileOperation(fromFile: string; toFile: string; Flags: Integer);
var
  shellinfo: TSHFileOpStructA;
begin
  with shellinfo do
  begin
    wnd := Application.Handle;
    wFunc := Flags;
    fFlags := FOF_NOCONFIRMATION;
    pFrom := PChar(fromFile);
    pTo := PChar(toFile);
  end;
  SHFileOperation(shellinfo);
end;
Und mein Code vom Button der die Aktion auslöst sieht so aus.
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);

var s: string;
var Ini: TIniFile;

begin
  try
    Ini:=TIniFile.Create(GetCurrentDir+'\Pfad.ini');
    Ini.WriteString('Section','FIFA Pfad',Label1.Caption);
  finally
    Ini.Free;
end;

begin

 if RadioButton1.Checked then
   begin
   ShellFileOperation(GetCurrentDir+'\ORG_Daten\fifa.db', Label1.Caption+'\data\cmn', FO_COPY);
   ShellFileOperation(GetCurrentDir+'\ORG_Daten\ger.db', Label1.Caption+'\data\cmn\fe', FO_COPY);
   end;

 if RadioButton2.Checked then
   begin
   ShellFileOperation(GetCurrentDir+'\WSL_Daten\fifa.db', Label1.Caption+'\data\cmn', FO_COPY);
   ShellFileOperation(GetCurrentDir+'\WSL_Daten\ger.db', Label1.Caption+'\data\cmn\fe', FO_COPY);
   end;

end;
end;
Das seltsame an dem Problem ist, dass es nur manchaml geht.
Manchmal macht er auch nur bei einem File Probleme.
Die Ordner WSL_Daten und ORG_Daten existieren auch in meinem Areitsverzeichnis und die Dateien dortdrin auch.
Deswegen verstehe ich das Problem nicht so recht.

Wäre über Hilfestellungen sehr dankbar=)

LG

David Geis
  Mit Zitat antworten Zitat