Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Erstellen und bearbeiten der .RES Dateien (https://www.delphipraxis.net/157063-erstellen-und-bearbeiten-der-res-dateien.html)

mz23 27. Dez 2010 18:41

Erstellen und bearbeiten der .RES Dateien
 
Hallo liebe DP Gemeinde,

mich würde mal interessieren, wie Ihr Eure .res Dateien
erstellt bzw. bearbeitet.

Ich verwende dazu den Resource-Editor von Anders Melander
und wenn ich viele Resourcen zulinken muß den brcc32.exe,
erstelle eine .rc Datei (mit NotePad und vorher angehängter
.txt Extension) mit den Einträgen (z.B. 1001 RCDATA "Bildchen.jpg" usw.) und ziehe im Explorer die (rückumbenannte .rc.txt in .rc Datei)
BEISPIEL.rc Datei dann mit der Maus über die brcc32.exe Datei.

Das Ergebnis wird dann als BEISPIEL.RES Datei im selben Verzeichnis
erzeugt. Natürlich kann man beim kurzen Auftauchen des
CMD Fensters keine Fehlermeldungen lesen :( und man sollte
eine bereits existierende BEISPIEL.RES Datei vorher von Hand löschen.

Den Klartext der .rc Datei kopiere ich dann als Kommentar in
mein Formular, damit ich weiß, welche IDs zu welchen Bildchen
gehören.

Mit freundlichen Grüßen, aus einem schneereichen Nürnberg,
wünscht Euch Allen viel Spaß beim Programmieren,
Manfred Zenns

himitsu 27. Dez 2010 19:15

AW: Erstellen und bearbeiten der .RES Dateien
 
Du kannst die .rc auch direkt mit deinem Editor öffnen.
Popupmenü > Ausführen mit ... > und da deinen Editor angeben.

Also zum Teil nehme ich auch nur 'nen billigen Editor (Notepad), um die RES oder EXE/DLL zu bearbeiten, hab ich auch irgendeinen Resourcen-Editor (weiß nur grad nicht wie der heißt) und für einige Teile der Resource gibt es noch den Hier im Forum suchenManifest-Creator :stupid:

PS: zum kompilieren der RC kann man sich ebenfalls noch einen Eintrag im Explorer machenm entweder über SentTo oder als Menüeintrag.
[DP]Datei mit eigenem Programm öffnen[/DP] (es muß ja nicht unbedingt ein eigenes Programm dafür nehmen)

patti 27. Dez 2010 19:16

AW: Erstellen und bearbeiten der .RES Dateien
 
Also ich schreib grundsätzlich meine RC-Dateien in einem einfachen Text-Editor, compilieren tu ich auch mit brcc32.exe, allerdings komplett über die Konsole, d.h. ich wechsle innerhalb der Konsole ins BIN-Verzeichnis von Delphi und rufe dann die brcc32.exe mit meinem Dateinamen als Parameter auf, dann erhalte ich auch alle Meldungen etc. in der Konsole.

Zitat:

Zitat von mz23 (Beitrag 1070662)
Mit freundlichen Grüßen, aus einem schneereichen Nürnberg,

Etwa 20 Kilometer von Nürnberg entfernt schauts nicht anders aus ;-)

mfg
Patti

Luckie 27. Dez 2010 20:08

AW: Erstellen und bearbeiten der .RES Dateien
 
Zitat:

Zitat von patti (Beitrag 1070668)
d.h. ich wechsle innerhalb der Konsole ins BIN-Verzeichnis von Delphi und rufe dann die brcc32.exe

Nimm den Pfad in den Suchpfad mit auf, dann kannst du von überall das Ressourcenskript kompilieren. Ich habe mir dafür eine Batchdatei geschrieben:

Testbuild:
Code:
rem Make Skript zum Erstellen eines Delphi Projektes zum Testen
rem Michael Puff <mail@michael-puff.de>
rem 2010-12-27

@echo off
cls
echo Testbuild
echo =========
echo.
echo Loeschen alter kompilierte Units...
echo -----------------------------------
del /s *.dcu
echo.
echo Kompilieren der Anwendung...
echo ----------------------------
dcc32 %1.dpr
echo.
echo Packen mit UPX...
echo -----------------
upx -9 ..\%1.exe
echo.
start ..\%1.exe
pause
Mein Projektordner sieht immer so aus:
Code:
Projekt\Projekt.exe, Projekt.zip
Projekt\source\Projekt.*, Make.cmd. ShipBuild.cmd
Projekt\source\units
Projekt\source\res
Projekt\source\~dcu
Projekt\source\includes
rcstamp ist ein extrenes Programm, welches die Buikdnummer automatisch erhöht. Das Packen mit UPX kann man weglassen, was ich auch manch mal mache. Die Exe-Datei wird dann einen Ordner höher erstellt. Wichtig ist nur, dass alle Dateien auch im Suchpfad liegen. Das ist meine Make-Skript zum Testen und das ist mein Make-Skript zum Ausliefern. Dabei wird die Buildnummer automatisch erhöht und das ganze wird als Zip gepackt.

ShipBuild:
Code:
rem Shipping Skript zum Erstellen und
rem Ausliefern eine Delphi Projektes
rem Michael Puff <mail@michael-puff.de>
rem 2010-12-27

@echo off
cls
echo Shipbuild
echo =========
echo.
echo Kompilieren der Ressourcen...
echo -----------------------------
rcstamp res\resource.rc *.*.*.+
brcc32 res\resource.rc resources\-foresource.res
echo.
echo Loeschen alter kompilierte Units...
echo -----------------------------------
del /s *.dcu
echo.
echo Kompilieren der Anwendung...
echo ------------------------------
echo.
dcc32 %1
echo.
echo Loeschen der temporaeren Dateien und der kompilierten Units...
echo --------------------------------------------------------------
del /s *.~*
del /s *.dcu
echo.
echo Packen mit UPX...
echo -----------------
upx -9 ..\%1.exe
echo.
echo History Ordner loeschen
echo -----------------------
if not exist __history\NUL goto NOHISTORY
cd __history
del *.* 
cd..
rd __history
echo.
:NOHISTORY
echo Packen mit 7Zip
echo ---------------
cd..
if exist %1.zip del %1.zip
call 7z a "%1.zip" "."
cd source
pause

patti 27. Dez 2010 20:48

AW: Erstellen und bearbeiten der .RES Dateien
 
Zitat:

Zitat von Luckie (Beitrag 1070691)
Zitat:

Zitat von patti (Beitrag 1070668)
d.h. ich wechsle innerhalb der Konsole ins BIN-Verzeichnis von Delphi und rufe dann die brcc32.exe

Nimm den Pfad in den Suchpfad mit auf, dann kannst du von überall das Ressourcenskript kompilieren.

Da hast du natürlich recht, wenn man häufig Ressourcen compiliert, dann macht das absolut Sinn. So habe ich den Java-Compiler auch im Suchpfad, sonst wirds viel zu umständlich...

Patrick

himitsu 27. Dez 2010 23:02

AW: Erstellen und bearbeiten der .RES Dateien
 
PS: Man kann nach dem Aufruf von DCC32, BRCC32 und UPX auch den ERRORLEVEL prüfen und dann fehlerabhängig reagieren.

Luckie 28. Dez 2010 01:36

AW: Erstellen und bearbeiten der .RES Dateien
 
Das war mir dann doch zu aufwendig. Mit PAUSE bleibt ja die Konsole offen, so dass man die Fehlermeldungen sieht.

himitsu 28. Dez 2010 09:30

AW: Erstellen und bearbeiten der .RES Dateien
 
Hällt die Konsole nur offen, wenn es ein Problem gab
(und der vorherige Befehl/Programm dieses via Errorlevel meldete)
Code:
IF ERRORLEVEL 1 PAUSE
aka
Delphi-Quellcode:
if ErrorLevel >= 1 then Pause;
.

Ich fand es nervig, wenn die Konsole immer offen blieb ... schließt sich die Konsole lief (wahrscheinlich) alles gut und wenn nicht (wenn sie offen bleibt), dann sieht man beben auf die Fehlermeldungen.

DCC32, BRCC32 und UPX liefern solche Fehlercodes.

Luckie 28. Dez 2010 10:13

AW: Erstellen und bearbeiten der .RES Dateien
 
Nun ja, bei den Testbuilds kann die Konsole schon offen bleiben, denn braucht man sie nicht jedes mal neu öffnen und kann das Skript mit der Pfeil nach oben Taste und Return neu aufrufen. Für das Shipbuild Skript wäre das eine Option.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:13 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