Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Hallo,
ich habe gerade auf Rio 10.3.1 upgedatet und wollte meine eigene Image-Komponente (von TImage abgel.) weiter entwickeln. Für die Komponente habe ich eine eigene Resourcendatei mit mehreren Bitmaps erstellt. Diese Bitmaps sollen zur Laufzeit innerhalb der Komponente geladen und dann angezeigt werden. Das hat mit Rio 10.3.0 auch wunderbar funktioniert. Die Resourcendatei wird folgendermaßen eingebunden:
Delphi-Quellcode:
In der zugehörigen Unit:
package ImageKomps;
{$R *.res} {$R Seg8Image.res} ...
Delphi-Quellcode:
Wie gesagt; vor dem Update funktionierte Alles noch problemlos. :?
constructor TAchtSegmentImage.Create(AOwner: TComponent);
begin inherited Create(AOwner); Picture.Bitmap.LoadFromResourceName(HInstance,'BASICW'); //zur Designzeit wird das Bitmap noch geladen //zur Laufzeit gibt es hier eine Exception 'Resource BASICW nicht gefunden' Width:=Picture.Bitmap.Width; Height:=Picture.Bitmap.Height; Stretch:=True; end; Wie bekomme ich das jetzt wieder hin, dass die Komponente ihre eigenen Bitmaps auch nutzen kann? |
AW: Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Spontane Überlegung: wenn die Resource nur im Package eingebunden wird, dürfte das nur funktionieren, wenn das Programm dann mit Laufzeitpaketen kompiliert wird. Wenn es ohne kompiliert wird - woher soll es dann die Resource kennen?
Besser wäre das $R in der Unit aufgehoben, die die Resource tatsächlich verwendet. |
AW: Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Hallo,
hatte ich mir auch schon überlegt. Ich habe das jetzt in der Unit hier eingefügt:
Delphi-Quellcode:
1. Versuch: Beim Kompilieren des Testprojektes mit der Komponente: 'Kann Seg8Image.res nicht finden'
implementation
{$R Seg8Image.res} ... Dann habe die Resource nach C:\Users\Public\Documents\Embarcadero\Studio\20.0\ Bpl kopiert 2. Versuch: Das Testprojekt lies sich problemlos kompilieren und starten. Es wurden dann auch die anderen Bitmaps angezeigt. :-D Aber es steht noch immer die Frage im Raum, wieso hat das vorher mit Rio 10.3.0 ohne Probleme funktioniert? |
AW: Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Zitat:
|
AW: Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Hallo,
es gibt hierbei noch eine Ungereimtheit, die bei Rio 10.3.0 nicht auftrat. Ich verwende in der Komponente auch noch DesignIntf, DesignEditors, Im Testprojekt muss jetzt zusätzlich noch in: Projektoptionen -> Delphi-Compiler -> Compilieren -> Weiterer Optionen -> Weitere Optionen -> Weitere Optionen für die Übergabe an den Compiler der Eintrag -LUDesignIDE für die 32Bit-Platformen eingetragen werden. Diese Eintragung war vorher nur bei der Komponente erforderlich. Ich hatten den Verdacht, dass mit meinen Verzeichniseinstellungen etwas nicht in Ordnung ist, aber ich habe keine Unterschiede zu Vorher feststellen können. Ich bin ein bisschen Ratlos. :? |
AW: Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Zitat:
|
AW: Rio 10.3.1 Resource wird zur Laufzeit nicht mehr gefunden
Hallo
@peterbelow Danke für den Hinweis. Ich hatte nicht mehr daran gedacht, dass man in designtime und runtime Package trennen muss. :oops: In meinen bisherigen Komponenten war das auch nicht nötig, da ich keine Units aus der DesignIDE-Package verwendet habe. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:35 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