CreateIconFromResourceEx-Funktion (winuser.h)

Erstellt ein Symbol oder einen Cursor aus Ressourcenbits, die das Symbol beschreiben.

Syntax

HICON CreateIconFromResourceEx(
  [in] PBYTE presbits,
  [in] DWORD dwResSize,
  [in] BOOL  fIcon,
  [in] DWORD dwVer,
  [in] int   cxDesired,
  [in] int   cyDesired,
  [in] UINT  Flags
);

Parameter

[in] presbits

Typ: PBYTE

Der DWORD-ausgerichtete Pufferzeiger, der die Ressourcenbits symbol (RT_ICON) oder Cursor (RT_CURSOR) enthält. Diese Bits werden in der Regel durch Aufrufe der Funktionen LookupIconIdFromDirectoryEx und LoadResource geladen.

Weitere Informationen zum Symbol - und Cursorressourcenformat finden Sie unter Cursor- und Symbolressourcenressourcen.

[in] dwResSize

Art: DWORD

Die Größe des Bitsatzes in Bytes, auf den der pbIconBits-Parameter verweist.

[in] fIcon

Typ: BOOL

Gibt an, ob ein Symbol oder ein Cursor erstellt werden soll. Wenn dieser Parameter TRUE ist, wird ein Symbol erstellt. Wenn es FALSE ist, soll ein Cursor erstellt werden.

Die LOCALHEADER-Struktur definiert den Cursor-Hotspot und ist die ersten Daten, die aus den Cursorressourcenbits gelesen werden.

[in] dwVer

Art: DWORD

Die Versionsnummer des Symbol- oder Cursorformats für die Ressourcenbits, auf die der presbits-Parameter verweist. Der Wert muss größer oder gleich 0x00020000 und kleiner oder gleich 0x00030000 sein. Dieser Parameter ist im Allgemeinen auf 0x00030000 festgelegt.

[in] cxDesired

Typ: int

Die Breite des Symbols oder Cursors in Pixel. Wenn dieser Parameter null ist und der Flags-ParameterLR_DEFAULTSIZE ist, verwendet die Funktion den SM_CXICON oder SM_CXCURSOR Systemmetrikwert, um die Breite festzulegen. Wenn dieser Parameter null ist und LR_DEFAULTSIZE nicht verwendet wird, verwendet die Funktion die tatsächliche Ressourcenbreite.

[in] cyDesired

Typ: int

Die Höhe des Symbols oder Cursors in Pixel. Wenn dieser Parameter null und der Flags-ParameterLR_DEFAULTSIZE ist, verwendet die Funktion den SM_CYICON oder SM_CYCURSOR Systemmetrikwert, um die Höhe festzulegen. Wenn dieser Parameter null ist und LR_DEFAULTSIZE nicht verwendet wird, verwendet die Funktion die tatsächliche Ressourcenhöhe.

[in] Flags

Typ: UINT

Eine Kombination der folgenden Werte.

Wert Bedeutung
LR_DEFAULTCOLOR
0x00000000
Verwendet das Standardfarbformat.
LR_DEFAULTSIZE
0x00000040
Verwendet die von den Systemmetrikwerten für Cursor oder Symbole angegebene Breite oder Höhe, wenn die werte cxDesired oder cyDesired auf Null festgelegt sind. Wenn dieses Flag nicht angegeben ist und cxDesired und cyDesired auf Null festgelegt sind, verwendet die Funktion die tatsächliche Ressourcengröße.
LR_MONOCHROME
0x00000001
Erstellt ein monochromes Symbol oder einen Cursor.
LR_SHARED
0x00008000
Gibt das Symbol oder das Cursorhandle gemeinsam, wenn das Symbol oder der Cursor mehrmals erstellt wird. Wenn LR_SHARED nicht festgelegt ist, erstellt ein zweiter Aufruf von CreateIconFromResourceEx für dieselbe Ressource das Symbol oder den Cursor erneut und gibt ein anderes Handle zurück.

Wenn Sie dieses Flag verwenden, zerstört das System die Ressource, wenn sie nicht mehr benötigt wird.

Verwenden Sie LR_SHARED nicht für Symbole oder Cursor, die nicht standardmäßige Größen aufweisen, die sich nach dem Laden ändern können oder die aus einer Datei geladen werden.

Rückgabewert

Typ: HICON

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Handle für das Symbol oder den Cursor.

Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Mit den Funktionen CreateIconFromResource, CreateIconFromResourceEx, CreateIconIndirect, GetIconInfo und LookupIconIdFromDirectoryEx können Shellanwendungen und Symbolbrowser Ressourcen im gesamten System untersuchen und verwenden.

Sie sollten DestroyIcon für Symbole oder DestroyCursor für Cursor aufrufen, die mit CreateIconFromResourceEx erstellt wurden.

Beispiele

Ein Beispiel finden Sie unter Freigeben von Symbolressourcen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (windows.h einschließen)
Bibliothek User32.lib
DLL User32.dll

Weitere Informationen

BITMAPINFOHEADER

Konzept

CreateIconFromResource

CreateIconIndirect

DestroyIcon

GetIconInfo

Symbole

LoadResource

LookupIconIdFromDirectoryEx

Andere Ressourcen

Referenz