AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte RES Builder
Thema durchsuchen
Ansicht
Themen-Optionen

RES Builder

Ein Thema von Deltachaos · begonnen am 29. Apr 2009 · letzter Beitrag vom 3. Mai 2009
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Deltachaos
Deltachaos
Registriert seit: 20. Feb 2008
Ich habe angefangen ein GUI für das erstellen von RES Dateien zu erstellen.
Ist OpenSurce und steht unter GNU/GPL (http://www.gnu.de/documents/gpl.de.html)

RES Builder 0.2 Alpha:

http://666kb.com/i/b8osgwlxp4hpqzt06.png

Funktionen:
Automatisches finden der Compiler
Mannuells auswählen eines Compilers
Überprüfung der Eingaben im Identefier Feld
Komplettes Anpassen der Sprache über *.ini Datei
Automatische Vorschläge des Dateityps
Anpassen der Vorschläge durch *.ini Datei
Öffnen des Ordners nach Fertigstellung der *.RES Datei

Was fehlt noch?
Menü hat noch keine Funktion!
Vorhandene *.rc Dateien lassen sich noch nicht öffnen

Screens:
http://666kb.com/i/b8l5bril4efqbxfoe.jpg

http://666kb.com/i/b8l5bmpddi95zbzq6.jpg

http://666kb.com/i/b8lfhuw1z2amar4bi.jpg

Zur Bedienung:

Oben Rechts wird der Compiler und die Delphi Version ausgewählt
Darunter werden die Dateien eingetragen
Sobalt die Einstellungen für die Datei stimmen klickt man auf "Speicher".
Dann wird diese Datei der *.rc Datei hinzugefügt.
In der Box "Dateien" kann man diese Einträge wieder Löschen, nach oben und unten bewegen.
Wenn man mit seiner Zusammenstellung zufrieden ist klickt man in der Box "Aktionen" auf "Ziel auswählen...". Dort gibt man an wo die *.RES Datei gespeichert werden soll.

Das war die letzte Einstellung - Nun wird der Vorgang mit dem Button "Starten" gestartet.
Sobalt der Vorgang beendet ist wird man darüber Informiert.


Es währe mir eine Hilfe wen mir jemand eine Liste mit den von brcc32.exe und brc32.exe Verstandenen Dateitypen mit der dazugehörigen Dateierweiterung geben könnte.
Ich habe bis jetzt nur RC_DATA und BITMAP.
Angehängte Dateien
Dateityp: zip res_builder_0.2.1_222.zip (632,9 KB, 64x aufgerufen)
Ich weiß mein Deutsch ist ! Bei Fragen: ich bin fast immer im Mumble
Server: cubexsports.de
Port: 64738
 
Benutzerbild von jaenicke
jaenicke
Online

 
Delphi 11 Alexandria
 
#2
  Alt 30. Apr 2009, 01:02
Die neueren Delphiversionen beachtest du gar nicht.

Dessen Pfade kannst du so bekommen (Auszug aus einem Autosetup-Tool für eine Komponente):
Delphi-Quellcode:
const
  RegKeyDelphiRoot = 'Software\%s\%s\%d.0';

type
  TDelphiVersion = (dlvDelphi5, dlvDelphi6, dlvDelphi7, dlvBDS3, dlvBDS4,
    dlvRadStudio2007, dlvRadStudio2009);

function GetDelphiRegKey(Version: TDelphiVersion): String;
begin
  case Version of
    dlvDelphi5, dlvDelphi6, dlvDelphi7:
      Result := Format(RegKeyDelphiRoot, ['Borland', 'Delphi', Integer(Version) + 5]);
    dlvBDS3, dlvBDS4, dlvRadStudio2007:
      Result := Format(RegKeyDelphiRoot, ['Borland', 'BDS', Integer(Version)]);
    dlvRadStudio2009:
      Result := Format(RegKeyDelphiRoot, ['CodeGear', 'BDS', Integer(Version)]);
  end;
end;

function GetDelphiRootDir(Version: TDelphiVersion): String;
var
  Reg: TRegistry;
begin
  Result := '';
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKeyReadOnly(GetDelphiRegKey(Version))
      and Reg.ValueExists('RootDir') then
      Result := Reg.ReadString('RootDir');
  finally
    Reg.Free;
  end;
end;

function IsDelphiInstalled(Version: TDelphiVersion): Boolean;
begin
  Result := GetDelphiRootDir(Version) <> '';
end;

function GetResCompilerExecutable(Version: TDelphiVersion): String;
begin
  Result := GetDelphiRootDir(Version);
  if Result <> 'then
    Result := IncludeTrailingPathDelimiter(Result) + 'Bin\brcc32.exe';
  if not FileExists(Result) then
    Result := '';
end;
Diese Funktionen sollten so wie sie sind bei dir funktionieren.
Sebastian Jänicke
  Mit Zitat antworten Zitat
R2009

 
Delphi 2007 Professional
 
#3
  Alt 30. Apr 2009, 05:29
Hi,

sorry, aber völlig unverständliches Programm!
Könntest du bitte erläutern wie das ganze benutzt wird!
Ich hatte trotz einiger Bemühungen keinen Erfolg. (weder res Datei noch sonst was)
Du kannst doch nicht sowas 1/3 fertiges hier hinschmeissen und hoffen die werden schon rauskriegen
wie's funktioniert.

Viele Grüsse
Rainer Unger
  Mit Zitat antworten Zitat
Benutzerbild von Deltachaos
Deltachaos

 
Delphi 7 Personal
 
#4
  Alt 30. Apr 2009, 06:15
Vielen Dank erstaml für den Tipp, jaenicke. Ich hab hat nur Delphi 7 und von daher wuste ich nicht wie es mit anderen Versionen ist.
Aus diesem Grund kann man den Delphi Ordner auf Manuell angeben. Aber Natürlich werde ich auch die Metode die du gepostet hast einbauen.


Zur Bedienung des Programms sage ich volgendes:

Man wählt oben Links seine Delphi Version aus, dann sucht das Programm nach den Compilern die für die *.rc Dateien benötigt werden.(brc32.exe und brcc32.exe; wobei ich das Gefühl habe das es mit dem brcc32.exe besser Funktionirt. Dieser ist auch von Standartmäsig ausgewählt, also muss man dort nichts verändern.)

Als nächstes müssen die in der GroupBox "Datei hizufügen" vorhandenen Felder ausgefüllt werden.

In der *.rc Datei müssen nähmlich volgende Informationen stehen:
1. Den Identifier oder wie man ihn auch immer nent. Damit arbeitet Delphi später wenn man z.b. etwas aus der *.RES Datei laden möchte. Dieser sollte mit einem Buchstaben anfangen!
2. Den Typ - ich weis nicht was das mit den Typen auf sich hat; ob man nun alle Daten die nicht etwas anderes sind als RC_DATA eintragen kann oder nicht, Ich weis auch nicht ob es den Compiler stört wen man einen Falschen Datentyp angibt. Auserdem weiß ich nicht was es alles für Dateitypen gibt. Deswegen stehen in der ComboBox auch nur RC_DATA und BITMAP; das wird später noch erweitert.
3. Der Pfad zu der Datei die in der *.RES Datei gespeichert werden soll. Um eine Datei auszuwählen klickt man auf Durchsuchen.

Nachdem man das getan hat klickt man auf "Hinzufügen >>>". Nun erscheint der Eintrag in der rechten List Box.
Man kann auch mehrere Einträge hinzufügen wobei man daruf achten sollte das der Identifier nicht doppelt vorkommt.

Nachdem das alles erledigt ist klickt man auf "Starten..." dann wählt man aus wo und wie die *.RES Datei gespeichert/heißen soll.

Nach all dem
Maximilian Ruta
  Mit Zitat antworten Zitat
Satty67

 
Delphi 2007 Professional
 
#5
  Alt 30. Apr 2009, 06:44
Nimm einen Hilfe-Button mit auf's Formular und lass den Text, den Du oben geschrieben hast da anzeigen (noch etwas besser formuliert und strukturiert). Da die Buttons sowieso so lang sind (zu lang für meinen Geschmack), könntest Du im Caption auch etwas genauer beschreiben, was der Button macht.

Aber die Idee finde ich gut, nur jetzt musst Du die Kritik abarbeiten, damit es besser wird.
Zitat von R2009:
Du kannst doch nicht sowas 1/3 fertiges hier hinschmeissen und hoffen die werden schon rauskriegen
wie's funktioniert.
Naja, sei nicht so hart... ganz so schlimm war es dann auch nicht
Ist ja als Alpha gekennzeichnet und OpenSource. Das heißt er weis, dass da noch Verbesserungen nötig sind.

€: Mal ein Vorschlag zum Programm-Ablauf (also auch Anordnung der Eingabe-Elemente)

1) Projekt auswählen [optional] zur Generierung eines Pfades/Namens (Standard Resource nicht überschreiben!)
2) Pfad/Dateiname der Resource bilden und evtl. schon vorhandene RC Datei laden
3) Resourcen-Dateien auswählen und anhand Extension einen Typ/Namen vorschlagen
4) Resource-Compiler auswählen (Einstellung merken) und compilieren

5) Falls Project ausgewählt, Include-Anweisung in Quelltext übernehmen (incl. Backup-Erstellung, wie es Delphi macht). Aber nur, wenn Du das narrensicher machen kannst... bei verlorenem Quelltext gibt es mehr als böse Worte
  Mit Zitat antworten Zitat
Benutzerbild von Deltachaos
Deltachaos

 
Delphi 7 Personal
 
#6
  Alt 2. Mai 2009, 17:36
Neue Version
Informationen oben
Maximilian Ruta
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

 
Delphi 3 Professional
 
#7
  Alt 2. Mai 2009, 23:03
vielleicht hilft dir mein rfe (http://rfe.sf.net) bei den restlichen Funktionen ist zwar auch nicht perfekt, aber man kann res-dateien laden und z.b. auch versioninfo bearbeiten.

Gruß Frank
Frank Wunderlich
  Mit Zitat antworten Zitat
Benutzerbild von Deltachaos
Deltachaos

 
Delphi 7 Personal
 
#8
  Alt 2. Mai 2009, 23:14
Ich hab mir das zwar noch nich angegugt aber ich glaube ich werde das nicht einbauen da das warscheinlich meine Fähigkeiten übersteigt.
Erstmal muss ich es hinbekommen vorhandene *.rc Dateien zu bearbeiten xD

Das einzige was mich wundert ist warum niemand Lob oder Kritik äußert.
^^
Maximilian Ruta
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

 
Delphi 3 Professional
 
#9
  Alt 2. Mai 2009, 23:18
Zitat von Deltachaos:
Das einzige was mich wundert ist warum niemand Lob oder Kritik äußert.
^^
Zitat:
Vorhandene *.rc Dateien lassen sich noch nicht öffnen
Aktuelle *.rc Datei läst sich nicht Speichern
wahrscheinlich, weil die eigentliche funktion noch fehlt besonders letzter Punkt....abspeichern ist imho nötig, um eine res-datei zu erstellen.

Gruß Frank
Frank Wunderlich
  Mit Zitat antworten Zitat
Benutzerbild von Deltachaos
Deltachaos

 
Delphi 7 Personal
 
#10
  Alt 2. Mai 2009, 23:56
Die *.rc Datei wird ja abgespeichert nur wird danach vom Programm direkt der Compiler gestartet und dieser Verarbeitet die *.rc Datei. Die Ausgabe wird dann an den vom Benutzer festgelegten Ort verschoben.

Ich meine Damit nur die *.rc Datei zu speicher um sie später zu compilen oder mit dem Programm weiter zu bearbeiten.
Maximilian Ruta
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:07 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