Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi ressource datei liest keine Integer werte aus! (https://www.delphipraxis.net/47461-ressource-datei-liest-keine-integer-werte-aus.html)

Die Muhkuh 11. Jun 2005 16:26

Re: ressource datei liest keine Integer werte aus!
 
Zitat:

Zitat von Muetze1
Moin!

Mir ging es nicht nur darum, sondern u.a. auch um den Vorschlag direkt ein Integer anzugeben anstatt des PChar's - was schon böse ist.

Deine Lösung habe ich mir nicht weiter angeschaut - zumindest sollte sich der Threadersteller seine Lösung raussuchen...

MfG
Muetze1

Hi,

da muss ich aber was übersehen haben. Wo wird ein PChar Parameter verlangt?

MakeIntResource verlangt Word,
LoadFromResourceName verlangt Cardinal und String,
LoadFromResourceID verlangt Cardinal und Integer.

Janek5024 11. Jun 2005 16:28

Re: ressource datei liest keine Integer werte aus!
 
Zitat:

Zitat von Muetze1
Moin!

@Spider: Du gibst hier Lösungen und Code ohne dich auch nur mal mit den Resourcen auseinander gesetzt zu haben. Die scheint der Sinn von MakeIntResource() etc überhaupt nix zu sagen.

@Threadersteller:

Wenn du die Bilder mit "one" laden kannst, dann liegt das Problem in der deiner RES Datei, wo dann immernoch als Bezeichner keine Zahl sondern "one" drinne steht. Du musst deine Bezeichner wie z.B. "one" durch eine einfache "1" ersetzen und dann kannst du es auch mit MakeIntResource laden. Auch musst du, wenn du das Resourcen-Compile-Skript (.rc) geändert hast, die Resource neu erstellen mit dem Resourcencompiler und dann die neue Resource einkompilieren. Danach sollte dann das Laden der Bilder über den Namen "one" nicht mehr funktionieren, wohl aber mit MakeIntResource(1).

MfG
Muetze1

das mit 'one' sind natürlich alles stringwerte das problem ist ... gerade mit den integer zahlen geht es nicht, denn da gibt mir mein pc doch aus dass er die res nicht findet

Also nun zu SPIDER:

das klappt, aber das mit dem array is mir ganz schön kompliziert :oops: naja hauptsache ich hab was womit ich arbeiten kann

Danke

Muetze1 11. Jun 2005 16:30

Re: ressource datei liest keine Integer werte aus!
 
Moin!

Zitat:

Zitat von Spider
da muss ich aber was übersehen haben. Wo wird ein PChar Parameter verlangt?

MakeIntResource verlangt Word,
LoadFromResourceName verlangt Cardinal und String,
LoadFromResourceID verlangt Cardinal und Integer.

Da hast du recht, das sind die VCL Routinen - ich war mehr bei den WinAPI Funktionen. Die Dinge sind richtig von dir (das mit LoadFromResourceID() sollte auch wie angegeben klappen - bis auf den Fakt, das x einen Zufallswert enthält. Die Warnung des Compilers, das der Inhalt von x wahrscheinlich uninitalisiert ist, kommt ja nicht umsonst.

MfG
Muetze1

Luckie 11. Jun 2005 18:54

Re: ressource datei liest keine Integer werte aus!
 
Zitat:

Zitat von Janek5024
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var x:integer;
begin
x:=x+1;
Image1.Picture.Bitmap.LoadFromResourceName(HInstance, MAKEINTRESOURCE(x));
end;

end.
DIE RESource
-------------

SourceCode RCDATA "uSampleForm.pas"
1 BITMAP "1.bmp"
2 BITMAP "2.bmp"
3 BITMAP "baby256.bmp"
4 BITMAP "p4.bmp"
5 BITMAP "lego.bmp"
6 BITMAP "Junky.bmp"
7 BITMAP "MR.bmp"

Wenn das so alles stimmt, dann liegt es eindeutig daran, das in X zu dem Zeitpunkt bestimmt nicht eins oder so drinne steht. Loaklae variablen werden nicht initialisiert. Da steht also irgendwas drinne. dazu addierst du jetzt eins. Der resultiernde Wert liegt jetzt mit sehr hoher Wahrscheinlichkeit nicht zwischen 1 und 7.

Janek5024 11. Jun 2005 20:34

Re: ressource datei liest keine Integer werte aus!
 
ach so! jo das war's! vielen DANK noch mal an alle! :hello:

Muetze1 12. Jun 2005 00:42

Re: ressource datei liest keine Integer werte aus!
 
Moin!

Zitat:

Zitat von Janek5024
ach so! jo das war's! vielen DANK noch mal an alle! :hello:

Ach, und was hast du denn auf Reaktion zum 1. Beitrag getan?
Und warum meintes du dann im 2. Beitrag, dass es nicht klappt?

Und es wurde insgesamt 4x in diesem Thread auf diese nicht intialisierte Variable hingewiesen und niemals drauf reagiert worden. Auch brachte es keine Änderung laut deiner Aussage (2. Antwort). Also wieso denn jetzt auf einmal?

Ich kapier es manchmal wirklich nicht...

MfG
Muetze1


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:23 Uhr.
Seite 2 von 2     12   

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