![]() |
doppelte *.res Datei x64
Warum wird unter Delphi 10.3.3 immer eine doppelte *.res erzeugt? Das nervt irgendwie.
Kann man das abstellen? Ich erstelle meine *.res innerhalb des Projekt
Delphi-Quellcode:
{$R '_res\xxx.res' '_res\xxx.rc'}
Es soll also im Ordner die xxx.res erzeugt werden, tut es auch. Zusätzlich wird aber die gleiche nochmals im Root Pfad des Quelltextes erstellt warum? Diese beinhaltet dann die Icons von Delphi anstelle dieser von meiner Anwendung. |
AW: doppelte *.res Datei x64
Mutmaßung: Die Datei wird im Projectroot erwartet. Sie darf auch woanders sein, aber historische Reste erzeugen sie dann immer auch im Root. Darauf basierende Lösung: Immer im Root ablegen.
Sherlock - die Angaben sind wie immer ohne Gewehr, damit man mich nicht erschießen kann, falls sie Schwachsinn sind |
AW: doppelte *.res Datei x64
Zitat:
Und das Problem habe ich unter älteren Delphi Versionen noch nicht erlebt. Unter Ressourcen-Compiler wurde der Pfad zur Ressource zusätzlich noch eingetragen. Abgabeverzeichnis für .res Dateien "_res\" Aber der Compiler macht was er will. Er legt seine eigene .res im Root Pfad ab wo sich die *.dproj Datei befindet. Unverständlich. |
AW: doppelte *.res Datei x64
Zitat:
Delphi-Quellcode:
Ja, die automatisch generierte RES liegt immer im Projektverzeichnis, obwohl es "theoretisch" möglich sein sollte die zu verschieben.
{$R '_res\xxx.res'} // überall, mit oder ohne ' , falls kein Leerzeichen im Dateinamen/Pfad
{$R '_res\xxx.res' '_res\xxx.rc'} // nur in der Projektdatei Ansonsten kenn ich es auch nur so, dass RES immer relativ zu der Datei liegen, in welcher sie eingebunden werden. (nichts mit Suchpfaden oder so) Ich habe hier auch knapp 75 Projekte (BPL/DLL/EXE) rumliegen, in einer Projektgruppe. In die binde ich eigene Ressourcen ein, die vom Finalbuilder mit der aktuellen Version und einem passenden Manifest generiert werden, aber komischer Weise ist es bei 5-10 Projekten im Delphi nicht möglich die Versionsressouce zu deaktiveren, bzw. sie aktiviert sich immer wieder von selbst. Obwohl es keine merklichen Unterschiede zwischen diesen DPROJ/DPK gibt, leben wir nun schon jahrelang mit der Warnung vonwegen doppelter Ressource und müssen nur aufpassen dass Delphi die DPK nicht ummodelt und unsere RES immer nach der RES vom Delphi eingebunden wird, denn der Letzte gewinnt und wird gelinkt. |
AW: doppelte *.res Datei x64
Seltsam ist doch nur das eine zusätzliche *.res angelegt wird.
Entschuldige wenn ich es so schroff sage. Das ist einfach Schwachsinn. Die Wird weder verwendet noch in die Exe mit ein-kompiliert. Daher unnötig. Ok. Ist wie es ist. Dachte nur das könnte man ausschalten dieses Verhalten. |
AW: doppelte *.res Datei x64
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi hat eine eigene RES, wo z.B. die Projektversion drin steht.
Auch was über den RessourcenManager im Delphi angelegt wird, landet dort drin. Wenn man das
Delphi-Quellcode:
aus der Projektdatei entfernt, dann wird die Versionsinformation in den Projektoptionen disabled,
{$R *.res *.rc}
aber wenn z.B. was von dieser Ressource auch in der DPROJ drin steht, dann syncronisiert Delphi das zurück in die DPR und schon isses wieder da. Und sobald
Delphi-Quellcode:
in der DPR/DPK drin steht, wird diese Datei von IDE/Compiler immer wieder neu erstellt.
{$R *.res *.rc}
Du kannst mal versuchen selbst den Haken in den Projektoptionen wegzumachen und schauen ob es hilft. Und aufpassen, dass dieses Setting womöglich auch noch konfigurationsabhängig sein könnte. |
AW: doppelte *.res Datei x64
Ich verwende keine Versionsinformationen die sind immer aus.
Genauso verwende ich kein Manifest aus der Delphi IDE. Zitat:
Erklärt aber nicht den Zustand das eine Datei angelegt wird die vom Projekt nicht verwendet wird. Und es nervt wenn andere Leute mit meinem Quelltext arbeiten müssen und nicht wissen welche *.res nun für das Projekt zuständig ist. Unter älteren Version von Delphi gebe ich den Pfad zur *.res in den Optionen ein und dann wird dort gesucht und diese verwendet. Unter x64 scheint das überhaupt nicht mehr korrekt zu funktionieren. Ich denke die Angabe wird ignoriert und deshalb eine *.res im Root Pfad angelegt die dann nicht verwendet wird. Es wird einfach der Suchpfad zur *.res ignoriert. Teste es doch bitte mal dann siehst du was ich meine. Zitat:
Ich habe meine Schalter für die *.res Dateien in meinem Hauptformular. (nicht in der DPR) Meine RC Datei ist im Projekt integriert. Wenn ich Version ändere dann ändere ich die RC entsprechend ab. Würde es nicht funktionieren (der RC ignoriert) dann hätte ich immer die gleiche Version ist aber nicht so. Die *.res wird dann entsprechend der RC neu kompiliert. Aber ich sehe schon es gibt keinen Schalter der das unterbinden kann. Darum ging es mir eigentlich. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:37 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 by Thomas Breitkreuz