![]() |
EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE möglich
Hallo,
in Delphi selbst kann ich keine Stringtable's in den Resourcen-Editor hinzufügen. Trage ich weitere Einträge per Hand in die .rc Datei, wird diese beim nächsten öffnen des Projektes überschrieben, so dass der ursprüngliche Text in der .rc Datei steht. Irgendwo muss Delphi eine Kopie anlegen, damit die .rc Datei geschrieben wird ??? wenn ich nun STRINGTABLE's verwenden möchte:
Code:
erscheint beim Aufruf des Resourcen-Compilers rc.exe die Meldung:
102 STRINGTABLE
BEGIN 102, "Mein Control Applet" 103, "Dieses Applet demonstriert, wie man eine CPL-Datei in Delphi erstellt." END
Code:
ist das ein Windows-Problem, weil ich habe noch den Visual Studio C++ Community installiert ?
Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
Copyright (C) Microsoft Corporation. All rights reserved. newBDE.rc(1) : error RC2255 : named STRINGTABLEs are not allowed oder werden StringTables nicht mehr unterstützt. |
AW: EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE mög
Leg eine neue .rc-Datei an, mit einem anderen Dateinamen als die des Projektes, und binde sie mittels einer
![]() ![]() Sie werden im Kode dann wie normale als Const deklarierte Strings verwendet. Eigene STRINGTABLE-Resourcen anzulegen ist problematisch, da ihre IDs mit vom Compiler erzeugten Resourcen kollidieren können. Wenn man sie unbedingt braucht, z. B. weil sie von einer anderen Anwendung auch verwendet werden, sollte man sie in eine DLL auslagern, die nur Resourcen enthält, und halt von dieser laden (DLL laden per ![]() |
AW: EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE mög
Zitat:
Code:
Über den Ressourceneditor von Delphi im Menü Projekt kannst du die Datei zwar hinzufügen, aber da dieser Editor den Typ STRINGTABLE nicht unterstützt, wird diese bei einem erneuten Aufruf dort nicht angezeigt. Funktionieren tut es aber.
STRINGTABLE
BEGIN 102 "Mein Control Applet" 103 "Dieses Applet demonstriert, wie man eine CPL-Datei in Delphi erstellt." END Du kannst die Datei aber auch einfach in die Projektverwaltung auf das Projekt ziehen und so hinzufügen, dann kompiliert Delphi die Ressource ebenfalls automatisch. Egal, ob ich die Datei dann in Delphi verändere oder direkt in einem anderen Editor, die Änderungen werden bei mir korrekt einkompiliert und von LoadString geladen. |
AW: EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE mög
Zitat:
Es gibt mehrere Ressourcen-Compiler, welche teilweise eine unterschiedliche Syntax nutzen. [add] Das Komma ist bei beiden RC-Compilern optional, aber die StringTable kann/darf keinen Namen besitzen (die 102 ist also der Fehler) [/add] witzige Sache: * der Delphi- ähhh Borland-Ressourcencompiler "brcc32.exe" nutzt standardmäßig eine mehr c-ige Syntax mit geschweiten Klammern {} * der Windows- Microsoft-Ressourcencompiler "rc.exe" nutzt standardmäßig eine mehr pascal-ige Syntax mit BEGIN+END :lol: * aber Beide verstehen Beides (fällt vor allem auf, wenn man die Hilfe liest ... MSDN nutzt überall BEGIN und DocWiki die { ) Innerhalb der .DPK oder .DPR kann man Delphi auch automatisch die .RC kompilieren lassen.
Delphi-Quellcode:
{$R datei.res datei.rc}
Leider kann der zweite Parameter überall angegeben werden, auch in .PAS, wobei er dort bösartig einfach ignoriert wird. Wenn es klappt, dann siehst du auch im Compiler-Log (Erzeugen), wie vor dem eigentlichen Kompilieren diese Ressource erstellt wird. Will/Kann man nur RES direkt angeben, dann mußt du selbst die .RC kompilieren oder anders erstellen.
Delphi-Quellcode:
{$R datei.res}
Also vorher mit einem der beiden mitgelieferten RessourcenCompiler (rc.exe oder brcc32.exe) kompilieren oder z.B. mit einem fremden Ressourcen-Editor erstellen. |
AW: EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE mög
ok funktioniert soweit gut - Danke für Eure Tipps.
Den Admin dieses Boards mal kontaktieren, damit die Werbung unten diesen Post entfernt wird. ist ja schlimm, jetzt kurz vor Weihnachten. |
AW: EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE mög
Zitat:
|
AW: EMB DCE 12 - Resourcen-Datei wird immer überschrieben und *keine* STRINGTABLE mög
Joar, wenn man es selbst kompiliert, dann ist die Syntax egal, da ja nur das Ergennis (RES) zählt.
Und da er ja ursprünglich selbst kompilieren wollte. :D @Spam: Du kannst den Report-Knopf benutzen. (OK, jetzt nicht mehr, weil ihn schon jemand genutzt hat :angle2:) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:44 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