![]() |
.rc-Datei lässt sich nicht aus Projekt entfernen?!?
Hallo,
gestern wollte ich Grafiken per Resource-Datei in meine .exe-Datei einbinden in Turbo Delphi, das hat aber alles nicht ganz hingehauen. 1. Ich habe die grafiken.rc-Datei mit validem Inhalt mit brcc32.exe kompiliert. grafiken.RES-Datei entstand. 2. Dann startete ich Turbo Delphi und er meinte beim Öffnen meines Projektes: "meinprojektname.RES ist nicht vorhanden. Wird erstellt." Das fand ich schonmal komisch, weil ich dachte ich brauche nur die grafiken.RES. Warum erstellt der eine meinprojektname.RES-Datei? 3. Habe dann die Datei so eingebunden: {$R grafiken.RES} 4. Weil es dann glaube ich nicht direkt funktionierte habe ich mal probiert im Projekt-Fenster Rechtsklick auf meinprojektname.exe und dann Hinzufügen die grafiken.RC-Datei. Nichts passierte. 5. Nach dem Neustarten von TD und öffnen meines Projektes hatte ich nun die grafiken.RC-Datei auch im Projektfenster liegen und nun kommt immer dieses "Duplicate Resource"-Errormeldung wenn ich das Projekt starten will. Das komische ist die .RC-Datei lässt sich nicht mehr aus dem Projekt-Fenster entfernen. Ich habe alles probiert. Habe die Dateien RC und RES mittlerweile sogar aus dem Projektverzeichnis gelöscht, aber die grafiken.RC-Datei ist weiterhin im Projektfenster, die "Duplicate"-Meldung kommt und die RC Datei lässt sich einfach nicht entfernen. :/ Könnt ihr mir helfen? |
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Zitat:
Zitat:
Zitat:
|
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Oh man ja sorry, hatte {$R grafiken.res} in .dpr und in Form implementation drin. :/ Jetzt gehts. Danke ^_^.
Nur noch ein Problem. Ich nutze ja PNGDelphi um PNG-Bilder benutzen zu können, die lassen sich aber nicht mit 001 BITMAP "grafiken/pn_logo.png" oder 001 PNG "grafiken/pn_logo.png" über SplashGrafik.Picture.Bitmap.LoadFromResourceID(HIn stance, 001); oder SplashGrafik.Picture.PNG.LoadFromResourceID(HInsta nce, 001); laden. Wie mache ich das mit den PNG's damit die in die .exe-Datei integriert werden? ^_^ |
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
BITMAP als Schlüsselwort steht nun mal auch für BITMAPs und nicht für PiNGraphic. Du müsstest sie als RCDATA ablegen und ob dann noch LoadFromResource klappt ist fraglich. Ich weiss nicht aus dem Kopf wie PiNG diese Methoden implementiert. Soweit ich weiss, implementiert der Resourcencompiler kein Schlüsselwort für PiNG, somit ist PNG und BITMAP grundsätzlich nicht nutzbar.
Was mich viel mehr interessiert: Du müsstest bei beiden RC Angaben jeweilis vom Resourcencompiler dies um die Ohren geworfen bekommen, da er beim Ping dieses nicht als Bitmap ein binden kann und zum anderen weil er das Schlüsselwort nicht kennt. Von daher: Sicher dass du überhaupt eine neue .RES Datei bekommen hast? Schonmal von der Kommandozeile kompiliert und gibt es Meldungen? |
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Ich probiere es mal mit RCDATA. Ich melde mich dann...
|
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Hi,
hm das funktioniert noch nicht. Meine RC-Datei ist wie folgt: G001 RCDATA "grafiken/pn_logo.png" Und mein Quelltext:
Delphi-Quellcode:
Resource1 := TResourceStream.Create(HInstance, 'G001', PChar('RC_DATA'));
SplashGrafik.Picture.Graphic.LoadFromStream(Resource1); Kompilierung der RC-Datei hat auch funktioniert und RES wurde erstellt. Er meint aber immer Ressource G001 kann nicht gefunden werden. :/ |
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Du brauchst selbst keinen ResourceStream zu erzeugen, das macht LoadFromResourceName/ID aus PNGDelphi selbst. Dabei wird der Res-Typ RCDATA vorausgesetzt, was Du ja erfüllst.
Delphi-Quellcode:
sollte eigentlich klappen.
SplashGrafik.Picture.PNG.LoadFromResourceName(HInstance, 'G001');
|
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Zitat:
|
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
So klappt es!!
Delphi-Quellcode:
Nur nun sieht man natürlich immernoch das Form-Fenster im Hintergrund. Wie macht ich das nun transparent so das nur das transparente Image angezeigt wird?
p := tpngobject.Create;
p.LoadFromResourceName(HInstance, 'G001'); SplashGrafik.Picture.Assign(p); freeandnil(p); |
Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Zitat:
Dein ResourceStream in deinem Versuch zuvor hast du falsch aufgerufen:
Delphi-Quellcode:
RC_DATA ist ein Typ und muss direkt angegeben werden und nicht als String. Letzteres nur bei besonderen Datentypen.
Resource1 := TResourceStream.Create(HInstance, 'G001', RC_DATA);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:05 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