![]() |
D11 RCDATA Resource wird nicht erkannt
Programm wird mit den Flags kompiliert.
Sollte kein Problem sein.
Delphi-Quellcode:
{$R '_resources\OTTB64.res' '_resources\OTTB64.rc'}
program OTTB64;
{$WEAKLINKRTTI ON} {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} Pfade stimmen. BLUP.bin befindet sich im gleichen Ordner wie die *.rc Datei. PROGRAM.ico genauso. D10.4 keine Probleme D11 meldet Blub in der Resource nicht gefunden. Edit: Habe nochmal in die *.exe und der *.res mit ResHacker geschaut dort steht RCData drin (Siehe Shot) wird aber mit
Delphi-Quellcode:
nicht mehr erkannt.
if gP.SoundActive then
begin Res := TResourceStream.Create(hInstance, 'BLUP', 'WAV'); try Res.Position := 0; SndPlaySound(Res.Memory, SND_MEMORY or SND_ASYNC); finally Res.Free; end; end; |
AW: D11 RCDATA Resource wird nicht erkannt
Wo ist die .RC eingebunden?
In PAS oder DPR/DPK? {$R unterstützt den zweiten Parameter ausschließlich in der Projektdatei. Außerdem, ist in den Projekt-Optionen die Versionsinfo doch bestimmt deaktiviert? Sollte ja, denn sonst würde es ja der Linker anmerken, dass das die doppelte Ressource nicht eingebunden wurde. [edit] hmmmm. Du erstellst die Ressource als ResTyp RCDATA, aber beim Laden sagst du stattdessen WAV. |
AW: D11 RCDATA Resource wird nicht erkannt
Zitat:
Delphi-Quellcode:
Hatte ich bisher immer so unter D10.4
unit uMain;
interface {$R '_resources\OTTB64.res' '_resources\OTTB64.rc'} {$R '_resources\Manifest64.res'}
Delphi-Quellcode:
in der *.dpr
program OTTB64;
{$WEAKLINKRTTI ON} {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} {$R '_resources\OTTB64.res' '_resources\OTTB64.rc'} Auch hier Ressource wird nicht gefunden. |
AW: D11 RCDATA Resource wird nicht erkannt
Da ist wohl was anderes im argen.
Eigentlich sollte doch die *.res aus der *.rc erstellt werden.
Delphi-Quellcode:
{$R '_resources\OTTB64.res' '_resources\OTTB64.rc'}
Nur warum funktioniert das nicht immer zuverlässig? Lösche ich die OTTB64.res dann wird mir gemeldet das sie nicht existiert. Aber warum muß sie existieren wenn Sie doch aus der *.rc erstellt wird. konfus das ganze.. wieder mal. Ich gebe explicit OTTB64.res als Ressourcen Datei an und trotzdem wird zusätzlich noch eine Projekt1.res erzeugt unverständlich und sinnlos. |
AW: D11 RCDATA Resource wird nicht erkannt
Wenn du auf Subskription bist (wovon ich ausgehe) dann könntest du einen offiziellen Supportfall unter
![]() Dann würde dich ein EMBT Mitarbeiter zeitnah kontaktieren und sich das Problem anschauen. Evtl. findet ihr dann eine Lösung, falls nicht hier im Forum noch was auftaucht. |
AW: D11 RCDATA Resource wird nicht erkannt
Nachmal: Du erstellst eine RCDATA-Ressource, aber willst dann nach WAV suchen.
Probiere es mal mit der Konstante RT_RCDATA im Create. Zitat:
An den anderen Stellen müsstest du selbst die .RES aus der .RC erstellen, mit brcc32.exe oder rc.exe . Aber als Alternative würde ich dir die Projekt-Ressource empfehlen. > Menü > Projekt > Ressourcen und Bilder Hier nur aufpassen, falls man über die Console kompilieren möchte, denn dann ist es ratsam über MSBuild die .DPROJ anstatt der .DPR zu kompilieren. Es ginge sogar, dass man Fremddateien einfach ins Projekte-Fenster zu ziehen, also zu/neben den Units unterhalb des Projektes, wo dann der RessourcenName aus dem Dateinamen gebildet wird. Was zu praktisch ist, wenn man diese Textdateien (z.B. HTML, XML usw.) direkt im Delphi-Exitor bearbeiten/betrachten können möchte. |
AW: D11 RCDATA Resource wird nicht erkannt
Zitat:
Ich verwende für beide Delphi Versionen die gleichen Dateien um meine Ressource zu bilden. Bei D10.4 wird der Eintrag "Blup" unter WAV erstellt und mit den gleichen Daten unter D11 der gleiche Eintrag "Blup" unter RCDATA. Ich hoffe es kommt jetzt rüber was ich meine. Das dann unter D11 die Ressource Blup nicht gefunden wird ist schon logisch wenn ich sie mit
Delphi-Quellcode:
Res := TResourceStream.Create(hInstance, 'BLUP', 'WAV');
einlesen möchte. Irgend etwas verträgt sich da nicht. Vor allem wenn ich sehe das 2 Ressourcen für die gleiche Anwendung erstellt werden. Einmal Projekt1.res und OTTB64.res. Zitat:
Zitat:
Zitat:
EDIT: Beide Ressourcen gelöscht. Projekt (VCL) zum Testen angehängt. Kompilieren. Im Ordner _resources nachschauen und siehe da 2 Ressourcen werden erstellt. Es werden auch schöne Sachen in die Exe ein kompiliert. Alles durcheinander Startet man die Exe wird das Projekt Icon nicht angezeigt. Im Dialog (Eigenschaften) aber schon. |
AW: D11 RCDATA Resource wird nicht erkannt
Sieht so aus als wenn Delphi mit einem VS-Studio *.rc Script nicht klar kommt.
Habe es geändert so wird zumindest im Eigenschafts Dialog von Windows das Zeilenende erkannt. Es ändert aber nichts daran das immer 2 *.res Dateien geschrieben werden. Warum auch immer. |
AW: D11 RCDATA Resource wird nicht erkannt
Soweit ich weiß, wird die <project>.res immer geschrieben und enthält das MainIcon und je nach Einstellung das automatisch generierte Manifest und die VersionsInfo. Solange diese res-Datei aber nicht in das Projekt eingebunden wird, sollte sie im Compilat auch nicht vorkommen.
|
AW: D11 RCDATA Resource wird nicht erkannt
Zitat:
Es nervt nur wenn man unnötige Dateien im Ordner hat und diese jedesmal löschen muß. Anhänge entfernt so läuft es jetzt einigermaßen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 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