Gesucht: FileCopy...

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

ich habe noch mal zwei proceduren für dich:

Code: Alles auswählen

procedure TForm1.Button1Click(Sender: TObject);
var
  mem : TMemoryStream;
  FilePathA, FilePathB : String;
begin
  FilePathA := Edit1.Text; // Pfad der zu kopierenden Datei
  FilePathB := Edit2.Text; // Zielpfad
  mem := TMemoryStream.Create;
  try
    mem.LoadFromFile(filePathA);
    mem.SaveToFile(FilepathB);
  finally
    mem.Free;
  end;
end;
 
uses
 ShellApi;
 
function CopyFileEx(const ASource, ADest: String;
 ARenameCheck: boolean = false): boolean;
var
  sh: TSHFileOpStruct;
begin
  sh.Wnd := Application.Handle;
  sh.wFunc := FO_COPY;
 
  // String muss mit #0#0 Terminiert werden, um das Listenende zu setzen
  sh.pFrom := PChar(ASource + #0);
  sh.pTo := PChar(ADest + #0);
  sh.fFlags := fof_Silent or fof_MultiDestFiles;
  if ARenameCheck then
    sh.fFlags := sh.fFlags or fof_RenameOnCollision;
  Result:=ShFileOperation(sh)=0;
end;

gefunden bei
http://www.dsdt.info/tipps/
MFG
Michael Springwald

Quit
Beiträge: 65
Registriert: So 5. Nov 2006, 18:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Luzern

Beitrag von Quit »

Ich habs nun ENDLICH geschafft. Und zwar mit dem orginalen Filecopy. Du hast mir den besten Link dazu gegeben - danke ;)

Code: Alles auswählen

if CopyFile(PChar(ParamStr(1)), PChar(ParamStr(1) + '555'), False) then

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

(gleich in die WissnDB mit aufnehmen !
MFG
Michael Springwald

Quit
Beiträge: 65
Registriert: So 5. Nov 2006, 18:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Luzern

Beitrag von Quit »

Wär was. Mein Fehler war, dass ich strings statt Ansi-Strings verwendete - der Compiler meckerte nicht, es ging einfach nicht..

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Daran habe ich auch schon stunden gesesen*G* das es nur mit PChar geht !!!
MFG
Michael Springwald

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Pluto deine funktion macht eh das selbe wie die original lcl funktion wozu ist die also gut ?
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

sie scheint ja nicht zu funktionieren warum weiß ich nicht !
getestet habe ich sie nicht !

Ich dachte wenn die original funktionieren nicht geht könnte meine laufen
(ohne PChar)
MFG
Michael Springwald

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Die originalfunktionen funktionieren schon dazu werden die zu oft genutzt als das die nich laufen
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten