![]() |
Icon aus DLL laden
hallo, sorry ist dann auch mein letzter thread für heute (bis 0 uhr :D).
alsoich habe eine dll erstellt in dem alle icons sind(z.G sind sie auch transparent)...aber ich bekomme diese nicht geladen. Ich habe es dem code aus der code library abgeschaut, bloss das ich statt JPG icon genomme habe. Also das ganze sah dann so aus:
Delphi-Quellcode:
wieos geht das nun nicht? bei einem klick auf den button passiert gar nichts
procedure TForm1.Button1Click(Sender: TObject);
var h :HINST; r :TResourceStream; ic :TIcon; i :integer; begin h := LoadLibrary('icons.dll'); if h <> 0 then begin r := TResourceStream.Create(h, 'connect', 'ICON'); ic := TIcon.Create; try ic.LoadFromStream(r); Image1.Picture.Icon.Assign(ic); finally ic.Free; r.Free; end; end; FreeLibrary(h); end; |
Re: Icon aus DLL laden
ach es ging doch, die dll war nur im falschen ordner....ich bekomme nur die fehlermeldung "Resource connect wurde nicht gefunden"... sie is aber drin und ich hab es so in die res eingetragen:
connect ICON "connect.ico" ist das falsch? |
Re: Icon aus DLL laden
Moin silent,
versuch's mal RT_ICON statt mit ICON. [EDIT] Ich meine für die Typangabe in TResourceStream.Create. Nicht in der Resourcendatei [/EDIT] |
Re: Icon aus DLL laden
hallo christian,
ich denke mal du meintest das so, oder?:
Delphi-Quellcode:
kommt aber selber fehler :\
r := TResourceStream.Create(h, 'connect', 'RT_ICON');
|
Re: Icon aus DLL laden
Moin Silent,
seltsam, so ist es zumindest dokumentiert, und ansonsten sieht alles richtig aus. Hast Du ein Programm, mit dem Du Dir Resourcen ansehen kannst? Damit würde ich jetzt mal die DLL anschauen, ob die Resource von einem anderem Programm gefunden wird. Du könntest auch mit Hilfe einer der Demos die bei Delphi eigentlich mitgeliefert werden, nämlich dem ResourceExplorer, nachschauen, wenn Du sonst nichts dafür hast. |
Re: Icon aus DLL laden
Hi,
versuch es mal so:
Delphi-Quellcode:
Au'revoir,
r := TResourceStream.Create(h, 'connect', RT_ICON);
//oder r := TResourceStream.Create(h, 'connect', RT_GROUP_ICON); Aya~ |
Re: Icon aus DLL laden
hallo christian, doch die resourcen sind da, siehe hier:
![]() |
Re: Icon aus DLL laden
hallo aya,
bei dem erstem kommt das gleiche, also das "connect" nicht gefunden wird...bei letzterem kommt "systemresourcen erschöpft" |
Re: Icon aus DLL laden
Hi,
dann versuch es mal mit LoadImage.
Delphi-Quellcode:
Au'revoir,
Ico.Handle:=LoadImage(h,MAKEINTRESOURCE(ResID),IMAGE_ICON,0,0,LR_DEFAULTCOLOR);
Aya~ |
Re: Icon aus DLL laden
Moin silent,
dann mal ohne ResourceStream:
Delphi-Quellcode:
var
h :HINST; ic :TIcon; i :integer; begin h := LoadLibrary('icons.dll'); if h <> 0 then begin ic := TIcon.Create; try ic.Handle := LoadIcon(h,'connect'); Image1.Picture.Icon.Assign(ic); finally ic.Free; end; end; FreeLibrary(h); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:24 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