AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Fehler beim Laden eines Bilds aus .dll
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler beim Laden eines Bilds aus .dll

Ein Thema von fwsp · begonnen am 9. Apr 2006 · letzter Beitrag vom 9. Apr 2006
Antwort Antwort
fwsp
(Gast)

n/a Beiträge
 
#1

Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 11:41
hallo

wie der titel schon sagt, versuche ich bilder aus ner dll zu laden. die dll ist auch soweit fertig. nur kommt der eigentlichen anwendung der fehler:

Code:
---------------------------
Musik-Suite - strela-comp
---------------------------
Bitmap image is not valid.
---------------------------
OK  
---------------------------
der debugger sagt es liegt an diesem code
ImgInst00.Picture.Bitmap.LoadFromStream(R); nur weiss ich nicht wie ich das anders machen soll, hab schon die foren bemüht, aber dieses problem wurde nicht geschildert. ist meine .dll kaputt?


hier die gesamtheit der prozedur, die die bilder lädt:
Delphi-Quellcode:
  H := LoadLibrary('Pictures.dll');
  if h <> 0 then
  begin
    try
      R := TResourceStream.Create(H, 'Pic00', RT_BITMAP);
      ImgInst00.Picture.Bitmap.LoadFromStream(R);
    finally
      R.Free;
    end;
  end;
  FreeLibrary(h);
ausschnitt aus der .rc der .dll
Code:
Pic00 BITMAP "Oboe.bmp"
Pic01 BITMAP "Trompete.bmp"
danke.
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2

Re: Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 12:00
Hmm, und du bist sicher, dass ImgInst00.Picture.Bitmap gültig ist zu dem Zeitpunkt? Meine mich daran erinnern zu können, dass Bitmap nil ist, solange das Picture nicht tatsächlich eine Bitmap enthält, somit kannst du also auch nicht dessen Methoden aufrufen. Du müsstest stattdessen ImgInst00.Picture.LoadFromFile() verwenden können.
Das alles ohne Gewähr, liegt dunkel in meiner Erinnerung
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#3

Re: Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 15:23
wie soll ich denn LOadFromFile anwenden, soll ich den stream da reinmachen oder die .dll? klappt jedenfalls beides nicht.

//Edit1:
hab grad mal ein bild zur entwicklungszeit in das image geschrieben, damit müsste das NIL ausgeschlossen sein, oder? aber auch das klappt nicht.
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 15:42
Versuch mal, in ein lokales Bitmap zu laden und dann ins image.

Delphi-Quellcode:
  var b: TBitmap;

  b := TBitmap.create;
  H := LoadLibrary('Pictures.dll');
  if h <> 0 then
  begin
    try
      R := TResourceStream.Create(H, 'Pic00', RT_BITMAP);
      R.Position := 0 //nur zur sicherheit
      b.loadfromstream(R);
     ImgInst00.Picture.Bitmap := b;
    finally
      R.Free;
      B.free;
    end;
  end;
  FreeLibrary(h);
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#5

Re: Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 15:47
hab ich schon probiert, dabei kommt:
Code:
---------------------------
Musik-Suite - strela-comp
---------------------------
Access violation at address ECECECEC. Read of address ECECECEC.
---------------------------
OK  
---------------------------
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 16:12
Hallo,

versuche es einmal so:

Delphi-Quellcode:
h := LoadLibrary('Pictures.dll');
if h <> 0 then
begin
  try
    ImgInst00.Picture.Bitmap.Handle := LoadBitmap(h, 'Pic00');
  finally
    FreeLibrary(h);
  end;
end;
Gruß Hawkeye
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#7

Re: Fehler beim Laden eines Bilds aus .dll

  Alt 9. Apr 2006, 17:02
juhuu, jetzt klappt es. danke.
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:19 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