![]() |
Dateien Kopieren (Ins WinDir)
Hallo,
ich habe im Easy Helper folgendes gefunden:
Code:
Das hab ich so umgeschrieben, das eine bestimmte Datei kopiert wird, ich möchte aber, das die ins Windows Verzeichniss kommt, mit %WinDir% lief es leider nicht :(
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; |
Re: Dateien Kopieren (Ins WinDir)
|
Re: Dateien Kopieren (Ins WinDir)
Hi,
wusste ich nicht :P
Code:
GWas ist nun wieder falsch (Hab lang nicht mehr mit Delhpi gearbeitet)
Function WinDowsDir:String;
var a : Array[0..MAX_PATH] of char; Temp:String; begin GetWindowsDirectory(a, sizeof(a)); Temp:=(StrPas(a)); Temp:=copy(temp,length(temp),1); /// Abschließenden Slash anfügen ! if Temp='\' then WinDowsDir:=((trim(StrPas(a)))) else WinDowsDir:=((trim(StrPas(a))))+'\'; end; procedure TForm1.Button15Click(Sender: TObject); var mem : TMemoryStream; FilePathA, FilePathB : String; begin FilePathA := 'C:\test.exe'; // Pfad der zu kopierenden Datei FilePathB := 'C:\WinDowsDir\NEUETEST.exe'; // Zielpfad mem := TMemoryStream.Create; try mem.LoadFromFile(filePathA); mem.SaveToFile(FilepathB); finally mem.Free; end; |
Re: Dateien Kopieren (Ins WinDir)
warum nicht direkt Windows.CopyFile(lpsrc,lpdest: Pchar; bFailIfExists: Boolean): Boolean benutzen ?
|
Re: Dateien Kopieren (Ins WinDir)
Delphi-Quellcode:
.. ich will nicht wissen was du machst, flipscreen und dann windir :O
function Copy2WinDir: Boolean;
var lpBuffer: Array[0..MAX_PATH] of Char; sPfad: String; begin ZeroMemory(@lpBuffer, sizeof(lpBuffer)); GetWindowsDirectory(lpBuffer, sizeof(lpBuffer)); sPfad := String(lpBuffer) + '\' + ExtractFileName(ParamStr(0)); Result := CopyFile(PChar(ParamStr(0)), PChar(sPfad), False); end; |
Re: Dateien Kopieren (Ins WinDir)
Delphi-Quellcode:
Da WindowsDir eine Funktion ist, darfst du sie nicht als String schreiben (in den ''-Zeichen). Außerdem - WindowsDir muss ja nicht auf C: sein.
Function WinDowsDir: String;
... procedure TForm1.Button15Click(Sender: TObject); var mem : TMemoryStream; FilePathA, FilePathB : String; begin FilePathA := 'C:\test.exe'; // Pfad der zu kopierenden Datei FilePathB := WindowsDir + 'NEUETEST.exe'; // Zielpfad mem := TMemoryStream.Create; try mem.LoadFromFile(filePathA); mem.SaveToFile(FilepathB); finally mem.Free; end; Aber wie The-X geschrieben hat, für den "Hausgebrauch" ;-) reicht auch CopyFile. Gruß, ManuMF |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz