![]() |
Programm Build - dynamisch erzeugen
Hallo,
ich möchte während der Laufzeit ein Programm dynamisch erzeugen lassen. Einfaches Beispiel: - Programm A enthält ein Edit-Feld (Edit1) und einen Button. - Beim Klicken auf den Button wird ein ausführbares Programm B erzeugt, dass ein Label hat, dess Caption die von Edit1.Text ist. Es würde mich sehr freuen, wenn mir jemand helfen könnte, auch wenn es nur ein Ansatz ist. Übrigens soll das Programm A überall laufen, auch wo keine IDE installiert ist, d.h. es darf nicht eine eigene make.exe von freepascal/delphi/... brauchen. Vielen Dank |
AW: Programm Build - dynamisch erzeugen
Zitat:
|
AW: Programm Build - dynamisch erzeugen
Könntest du dir eine von beiden Möglichkeiten als realisierbar vorstellen ?
|
AW: Programm Build - dynamisch erzeugen
Sie sind beide realisierbar. Einfacher wäre es allerdings, einfach den FPC und die LCL-Sourcen mitzuliefern.
|
AW: Programm Build - dynamisch erzeugen
Mal abgesehen davon, daß das sicher realisierbar ist (Delphi selbst ist ja im Grunde auch nichts anderes), stellt sich die Frage, ob man es so realisieren sollte.
Ich gehe zwar davon aus, daß dein Beispiel mit dem Label nur fiktiv ist, aber das könnte man mit einer fertig compilierten EXE, die eine Konfigurationsdatei liest, wesentlich einfacher und schneller hinkriegen. Beschreib doch einfach mal, was du wirklich machen willst. |
AW: Programm Build - dynamisch erzeugen
Schuss ins Blaue: Liefere eine Vorlage für die zu erzeugende Exe mit, kopiere sie auf Knopfdruck und bette den String mit
![]() |
AW: Programm Build - dynamisch erzeugen
Die Frage ist viel eher, was will er damit erreichen. Man kann sein jetztiges Vorhaben auch ganz einfach lösen, indem man einfach Daten/Flags hinten an die Kopie der Exe dran macht und bei jedem Start prüft, ob was da ist und darauf reagiert...
Aber in was für einem Ausmaß der das braucht und wie komplex das dann wird, ist für mich ungewiss! |
AW: Programm Build - dynamisch erzeugen
Eine echte Ressource braucht man dafür gar nicht:
![]() |
AW: Programm Build - dynamisch erzeugen
Vielen Dank für die zahlreichen Antworten :)
Einen konkreten Anwendungsfall habe ich nicht, dies war eher eine theoretische Frage. Meistens suche ich mir zuerst die Lösung, dann das Problem, es wird sicherlich eines kommen, in dem ich dies anwenden kann. Die Idee von uligerhardt halte ich für sehr treffend. Leider ist UpdateResource neu für mich, daher muss ich mich damit zunächst beschäftigen. Übrigens müsste man gar keine Kopie von Programm B mitliefern, da ich Programm B als Ressource in mein Programm A einbauen kann. Beim Button-Klick wird die Ressource extrahiert und dann im Programm B mit UpdateRessource der String / die Strings ersetzt. Desweiteren hoffe ich, dass ich aus dem String ABC auch wxyz machen kann, also unterschiedliche Zeichenlänge, was mit einem "normalen" Hexeditor nicht geht :( Gruß, Thomas |
AW: Programm Build - dynamisch erzeugen
Zitat:
Du kannst in der Demo in einem Memo Text eingeben und anhängen, beim nächsten Start ist der dann beim Start im Memo. Da du mit Lazarus arbeitest, wäre UpdateResource wohl weniger sinnvoll, da es eine Windows API Funktion ist. Und Lazarus ist ja vor allem für Cross Plattform sinnvoll, was dann damit nicht mehr ginge. Meine Lösung macht das selbst. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:14 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 by Thomas Breitkreuz