![]() |
Kompilierte Datei editieren
Hallo,
Gibt es eine Möglichkeit, eine kompilierte Delphi-Datei im Nachhinein durch ein anderes Programm (Also nicht neu kompilieren) zu verändern? Ich möchte bei einer solchen nämlich später noch die Möglichkeit haben, bestimmte Labels und Images mit möglichst wenig Aufwand zu ändern (über ein anderes Programm, was ich für den Zweck schreiben würde, also nicht manuell per Resource editor o.ä.). Die kompierte Datei würde als .exe vorliegen, aber falls ein anderes Format dafür besser geeignet ist, kann das auch verwendet werden (solange das zweite Programm in der Lage ist, daraus eine .exe zu machen). tia |
Re: Kompilierte Datei editieren
Hallo,
Evtl eignet sich ![]() Mit dieser Komponente kann man nachträglich an bereits kompilierte Exe-Dateien sogenannte "Extra-Resourcen" anhängen und natürlich auch wieder auslesen. Bei diesen Extra-Resourcen handelt es sich allerdings nicht um herkömmliche Resourcen, die mit jedem Resource-Viewer erkannt werden können, sondern können nur mit Hilfe dieser Komponente erstellt und ausgelesen werden. Diese Komponente kann einem die Entwicklung von SFX-Archiven oder Setup- und Update-Programmen erheblich erleichtern! Die Komponente enthält auch eine Hilfe-Datei! Hinweis: Diese Komponente enthält und verwendet Teile des DEC von Hagen Reddmann. |
Re: Kompilierte Datei editieren
Danke :) , ich probier sie mal aus
|
Re: Kompilierte Datei editieren
Noch eine Frage : Kann man bei Delphi irgendwie einstellen, dass bestimmte Resourcen beim kompilieren aus Dateien geladen werden sollen? Also dass man z.B. nicht mehr manuell alle images neu laden lassen muss (über die IDE), sondern sie automatisch immer beim kompilieren aus festgelegten (Bild-)Dateien geladen werden
|
Re: Kompilierte Datei editieren
Damit funktionierts (für Bitmaps):
Delphi-Quellcode:
Beispiel aus der OH:
procedure LoadFromResourceName(Instance: THandle; const ResName: string);
Delphi-Quellcode:
für weitere Funktionen einfach mal die OH nach 'resource' durchsuchen, evtl auch in der Hilfe zum PSDK suchen.
procedure TForm1.Button1Click(Sender: TObject);
var BitMap1 : TBitMap; begin try BitMap1 := TBitMap.Create; BitMap1.LoadFromResourceName(HInstance,'THEBITMAP'); Canvas.Draw(12,12,BitMap1); finally BitMap1.Free; end; end; |
Re: Kompilierte Datei editieren
Hm, damit könnte man wohl Resourcen auf buttonclick, bei Programmstart o.ä. laden, aber kann man damit auch erreichen, dass die resourcen nur genau einmal, nämlich beim kompilieren geladen werden (und dannach nicht mehr eingebunden oder geladen werden müssen) ?
|
Re: Kompilierte Datei editieren
das macht der compiler automatisch,
bei doppelt vorhandenen resourcen (also mit gleicher ID oder gleichem NAMEN) meckert der compiler kA |
Re: Kompilierte Datei editieren
aber wenn ich nur eine onbuttonclick prozedur habe wie oben, lädt er die resourcen doch nicht beim kompilieren...?
|
Re: Kompilierte Datei editieren
Die Ressourcen werden ins Programm aufgenommen (kompiliert), wenn du die entsprechende RES-Datei im Quellcode angibst:
Delphi-Quellcode:
Ob du sie dann per Buttonklick lädtst, oder per "OnCreate" der Form, bleibt dir überlassen.
{$R MeinRessourcen.res}
|
Re: Kompilierte Datei editieren
Achso, alles klar. :) Bin in dem Thema noch nicht so bewandert, wie man sieht^^
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:21 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