Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Installer-Resourcen mitkompilieren (https://www.delphipraxis.net/129219-installer-resourcen-mitkompilieren.html)

zorakh 14. Feb 2009 23:32


Installer-Resourcen mitkompilieren
 
Hi
Ich habe ein Programm geschrieben :wall:
und brauche um meine exe zu betreiben noch einiges an Rexourcen (Bildern)
Ich möchte aber nicht immer den ganzen Resourcen Ordner mitliefern müssen!
Jetzt könnte man natürlich ein selbstextrahierendes Archiv per WinRar machen, aber wenn schon denn schon:
Es gibt ja so Programme mit "Installern".
Wie wird das gemacht? Oder kann ich die Resourcen mit in die exe mit reinkompilieren?
Was gibts da so für Möglichkeiten?
Danke!

zorakh 15. Feb 2009 16:10

Re: Installer-Resourcen mitkompilieren
 
Ich dacht mir schon, dass das keienr weiß!
Gibts ne Möglichkeit den Thread zu schließen?

BUG 15. Feb 2009 16:22

Re: Installer-Resourcen mitkompilieren
 
Gib doch nicht so schnell auf bzw. pushen ist erst nach 24h erlaubt :warn:
Themen (grade ungelöste) bleiben hier allgemein offen.

@topic: Meinst du sowas: Inno Setup


MfG,
Bug

Micha88 18. Feb 2009 06:44

Re: Installer-Resourcen mitkompilieren
 
Also da du ja expizit danach gefragt hast, wie man Dateien "mit in die EXE kompilieren" kann, hier folgende Lösung:

Erstelle eine Datei mit der Endung .RC, diese bekommt folgenden Text:
100 BIN File1.exe
200 BMP Bitmap1.bmp

Kommentar zur RC-File:
Dort kommen logischerweise nur die Listings rein, die du brauchst. Wenn du 10 BMP's brauchst, eben 10x
nnn BMP BitmapN.bmp (bis 10)

Dann erstellst du eine Datei mit der Endung .bat, diese bekommt folgenden Text:
cd "C:\[...]\Delphi-Ordne"\X.0\bin\"
BRCC32.exe "// Dein absoluter Pfad zur "RC-Datei" //"

So, nun wird automatisch eine RESOURCE-Datei erstellt.


Folgendes nimmst du in deinen Code unterhalb implementation mit auf:
Delphi-Quellcode:
{$R _RessourceFiles.RES}
Folgende Variable deklarieren:
Delphi-Quellcode:
Install: TResourceStream;

Und zum Schluss das "entpacken"
Delphi-Quellcode:
 
Install := TResourceStream.CreateFromID(hInstance, 100, 'BIN'); // Hier ggf. dann BMP, BIN und die ZAHL angeben
Install.SaveToFile('C:\myResourceFile1.exe');


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:05 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz