![]() |
Re: EXE kopiert sich selbst...
Geht doch gaanz einfach:
Delphi-Quellcode:
var
f,t:file of byte; buf:array[1..4096] of byte; copied:integer; begin assignfile(f,application.exename); assignfile(t,NEWFILENAME); filemode:=0; reset(f); filemode:=2; rewrite(t); while not eof(f) do begin blockread(f,buf,4096,copied); blockwrite(t,buf,copied); end; closefile(f); closefile(t); end; |
Re: EXE kopiert sich selbst...
Nein, nein...
Wie ich die Batch-Datei starte ist mir klar. Was ich mich frage ist, wie ich in dieser Datei (also der Batch-Datei) die Pfade übergebe. Also ob die $,%-Zeichen drinne sein müssen. Oder ob das auch so gehen kann
Delphi-Quellcode:
copy "C:\\bla.exe" "D:\\bla.exe"
oder wie muss das genau aussehen? Mit ein paar Beispielen würde ich's sicherlich verstehen! :zwinker: |
Re: EXE kopiert sich selbst...
Mit der Batchdatei ist das immer schwierig, da, falls z.B. ein ä im exename vorkommt, dieses übersetzt werden muss. Viel besser ist es wenn du die EXE einfach schon im Code kopierst. Natürlich kann es auch so gehen wie du es beschrieben hast:
Code:
@echo off
echo. Kopiere... copy "c:\bla.exe" "d:\bla.exe" |
Re: EXE kopiert sich selbst...
Ja! Es funzt! Danke für eure Hilfe!
|
Re: EXE kopiert sich selbst...
Zitat:
|
Re: EXE kopiert sich selbst...
weil es dennoch einige gibt, die lieber Application.ExeName nehmen und es das halt auch gibt ... und nur weil ich selber ParamStr(0) verwende, muß ich es ja keinem aufzwingen (schließlich kann man bei ExeName wenigstens erkennen, was da gemeint ist)
|
Re: EXE kopiert sich selbst...
Zitat:
Zitat:
|
Re: EXE kopiert sich selbst...
Und du wiederholst dich.
Delphi-Quellcode:
Was effektiver ist, sollte wohl erkennbar sein.
type
TApplication = class(TComponent) private ... function GetExeName: string; ... public ... property ExeName: string read GetExeName; ... end; ... function TApplication.GetExeName: string; begin Result := ParamStr(0); end; Es ist ja jedem selber überlassen, was er/sie nimmt. Aber dennoch ist der Hinweis darauf, was "besser" (nach Tempo und Codegröße) ist nicht verkehrt, da dieses ja unter Umständen die Entscheidung, was letzt Endlich genommen wird, beeinflussen kann. |
Re: EXE kopiert sich selbst...
Application.ExeName hat den Vorteil, dass der Code dann besser lesbar ist.
Paramstr(0) hat den Vorteil, dass es einen Aufruf spart. Was einem wichtiger ist, kann sich doch dann jeder selbst aussuchen. Muss man darauf so herumreiten? :roll: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:50 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