AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi .rc-Datei lässt sich nicht aus Projekt entfernen?!?
Thema durchsuchen
Ansicht
Themen-Optionen

.rc-Datei lässt sich nicht aus Projekt entfernen?!?

Ein Thema von Pixelex · begonnen am 7. Feb 2008 · letzter Beitrag vom 9. Feb 2008
Antwort Antwort
Seite 1 von 3  1 23      
Pixelex

Registriert seit: 5. Feb 2008
41 Beiträge
 
#1

.rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 08:09
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?
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#2

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 08:49
Zitat von Pixelex:
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?
Die erstellt er seit je her für jedes Projekt. Darin legt er das Icon der Anwendung ab und (falls aktiviert) die Versionsinformationen, etc. Wenn du diese Resource nicht nutzen willst, dann schmeiss das {$ *.R} aus dem Projektquellcode raus. Dieses Verhalten ist seit mindestens D3 vorhanden.

Zitat von Pixelex:
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.
Hast du denn auch dein "{$R grafiken.RES}" wieder entfernt? Ansonsten ist es vollkommen logisch, da er über diese Anweisung deine Resource einbindet und dann nochmal über den Projektmanager.

Zitat von Pixelex:
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. :/
Entferne die {$R grafiken.res grafiken.rc} o.ä. Anweisung direkt im Projektquellcode. Dieses Problem besteht bei Delphi seit je her, dass er die Resourcen nicht mehr über den Projektmanager entfernt.
  Mit Zitat antworten Zitat
Pixelex

Registriert seit: 5. Feb 2008
41 Beiträge
 
#3

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 08:52
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? ^_^
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#4

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 08:59
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?
  Mit Zitat antworten Zitat
Pixelex

Registriert seit: 5. Feb 2008
41 Beiträge
 
#5

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 09:17
Ich probiere es mal mit RCDATA. Ich melde mich dann...
  Mit Zitat antworten Zitat
Pixelex

Registriert seit: 5. Feb 2008
41 Beiträge
 
#6

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 09:44
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. :/
  Mit Zitat antworten Zitat
teebee

Registriert seit: 17. Jan 2003
Ort: Köln
460 Beiträge
 
Delphi 6 Professional
 
#7

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 10:10
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.SplashGrafik.Picture.PNG.LoadFromResourceName(HInstance, 'G001'); sollte eigentlich klappen.
  Mit Zitat antworten Zitat
Pixelex

Registriert seit: 5. Feb 2008
41 Beiträge
 
#8

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 10:16
Zitat von teebee:
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.SplashGrafik.Picture.PNG.LoadFromResourceName(HInstance, 'G001'); sollte eigentlich klappen.
Dann sagt er mir immer das "TPicture" kein Element namens "PNG" enthält. :/
  Mit Zitat antworten Zitat
Pixelex

Registriert seit: 5. Feb 2008
41 Beiträge
 
#9

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 10:25
So klappt es!!

Delphi-Quellcode:
p := tpngobject.Create;
p.LoadFromResourceName(HInstance, 'G001');
SplashGrafik.Picture.Assign(p);
freeandnil(p);
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?
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#10

Re: .rc-Datei lässt sich nicht aus Projekt entfernen?!?

  Alt 7. Feb 2008, 11:59
Zitat von Pixelex:
Dann sagt er mir immer das "TPicture" kein Element namens "PNG" enthält. :/
Bitte unterscheide Laufzeit- und Compilerfehler. Dieser Unterschied ist essentiell, schliesslich brauchen wir über das Auslesen von Resourcen nicht reden, wenn der Compiler nichtmal was ausführbares erstellen kann.

Dein ResourceStream in deinem Versuch zuvor hast du falsch aufgerufen:

Resource1 := TResourceStream.Create(HInstance, 'G001', RC_DATA); RC_DATA ist ein Typ und muss direkt angegeben werden und nicht als String. Letzteres nur bei besonderen Datentypen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:23 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