Die Ressource existiert aber?
Man könnte mal mit dem RessourceHacker in die
BPL reinsehen.
HInstance kann nicht funktionieren, außer die Ressource liegt in der EXE, bzw. in einer
DLL.
FindClassHInstance ist eigentlich richtig.
Aber man könnte auch die
DLL/
BPL-
Handle von GetModuleHandle/LoadLibrary/LoadLibraryEx/LoadPackage verwenden.
mal ganz billig schnell in einer EXE getestet (daher LoadPackage, weil dort ja diese Packages normal nicht drin sind)
Delphi-Quellcode:
Image.LoadFromResourceName(LoadPackage('dclrtl280.bpl'), UpperCase('TBluetoothLE'));
Image.LoadFromResourceName(LoadPackage('dclrtl280.bpl'), 'TBluetoothLE');
Groß-/Kleinschreibung ist erwartungsbemäß egal, da Ressourcen-
API case-insensitive ist.
Delphi-Quellcode:
Image.LoadFromResourceName(FindClassHInstance(TImage), TImage.ClassName);
Image.LoadFromResourceName(LoadPackage('dclstd280.bpl'), 'TImage');
Image.LoadFromResourceName(LoadPackage('vcl280.bpl'), 'TImage'); // hier nicht erwartet, aber dennoch probiert
Aber hier hängt es auch, denn das Bild ist wirklich nicht in diesen Packages drin.