FindResource

Die FindResource -Funktion bestimmt den Speicherort der eine Ressource mit dem angegebenen Typ und Namen im angegebenen Modul.

HRSRC FindResource) HMODULE  hModule, / / Modul-handleLPCTSTRlpName, / / Zeiger auf RessourcennameLPCTSTRLpType / / Zeiger auf Ressource-Typ);
 

Parameter

hModule
Handle für das Modul, dessen ausführbare Datei die Ressource enthält.

Der Wert NULL gibt das Modulhandle zugeordnete Bilddatei an, die das Betriebssystem verwendet, um den aktuellen Prozess erstellen.

lpName
Gibt den Namen der Ressource. Weitere Informationen finden Sie unter im Abschnitt Hinweise.
lpType
Gibt den Ressourcentyp der. Weitere Informationen finden Sie unter im Abschnitt Hinweise. Für Standardressourcentypen kann dieser Parameter eine der folgenden Werte sein:
Wert Bedeutung
RT_ACCELERATOR Zugriffstastentabelle
RT_ANICURSOR Animierte cursor
RT_ANIICON Animiertes Symbol
RT_BITMAP Bitmapressource
RT_CURSOR Hardware-abhängige Cursor-Ressource
RT_DIALOG Im Dialogfeld
RT_FONT Schriftart-Ressource
RT_FONTDIR Verzeichnis Schriftartressource
RT_GROUP_CURSOR Hardware-unabhängige Cursor-Ressource
RT_GROUP_ICON Hardware-unabhängige Symbolressource
RT_HTML HTML-Dokument
RT_ICON Hardware-abhängige Symbolressource
RT_MENU Menüressource
RT_MESSAGETABLE Nachricht-Tabelleneintrag
RT_RCDATA Anwendungsdefinierten Ressourcen (Rohdaten)
RT_STRING Zeichenfolgentabellen-Eintrag
RT_VERSION Version-Ressource

Rückgabewerte

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Handle für das angegebene Ressource-Infoblock. Um einen Handle auf die Ressource zu erhalten, übergeben Sie dieses Handle an die LoadResource -Funktion.

Wenn die Funktion fehlschlägt, ist der Rückgabewert NULL. Rufen Sie Fehlerinformationen verlängert bekommen, GetLastError.

Bemerkungen

Wenn das hohe Word des Parameters LpName oder LpType NULL ist, gibt das niedrige Word den ganzzahligen Bezeichner des Namens oder der Typ der angegebenen Ressource. Andernfalls sind diese Parameter lange Zeiger auf Null-terminierte Zeichenfolgen. Wenn das erste Zeichen der Zeichenfolge ein Nummernzeichen (#) ist, stellen die verbleibenden Zeichen eine decimal-Zahl, die den ganzzahligen Bezeichner der Namen oder den Typ der Ressource angibt. Beispielsweise stellt die Zeichenfolge "# 258" den ganzzahligen Bezeichner 258.

Eine Anwendung sollte die Reduzierung der erforderlichen Speicher für die Ressourcen von Ihnen mit einem ganzzahligen Bezeichner statt nach Namen verweisen.

Wenn Sie eine Zugriffstastentabelle, Bitmap, Cursor, Symbol oder Menü benötigen, können Sie seinen zugeordneten Speicher freigeben, indem Sie eine der Funktionen in der folgenden Tabelle.

Ressourcen Funktion freigeben
Zugriffstastentabelle DestroyAcceleratorTable
Bitmap DeleteObject
Cursor DestroyCursor
Symbol DestroyIcon
Menü DestroyMenu

Das System löscht automatisch diese Ressourcen beim Beenden des Prozesses, der sie erstellt, aber die entsprechende Funktion aufgerufen spart Arbeitsspeicher und reduziert die Größe des Workingsets des Prozesses.

Eine Anwendung kann FindResource verwenden, um jede Art von Ressource zu finden, aber diese Funktion sollte verwendet werden, nur wenn die Anwendung die binären Daten zugreifen muss, wenn nachfolgende Aufrufe an LoadLibrary und LockResource.

Eine Ressource verwenden sollte sofort in eine Anwendung eine der folgenden Ressourcen-spezifische Funktionen zum Suchen und Laden der Ressourcen in einem Aufruf:

Funktion Aktion
FormatMessage Lädt und formatiert einen Nachricht-Tabelleneintrag.
LoadAccelerators Lädt eine Zugriffstastentabelle.
LoadBitmap Lädt eine Bitmapressource.
LoadCursor Lädt eine Cursor-Ressource.
LoadIcon Lädt eine Symbolressource.
LoadMenu Lädt eine Menüressource.
LoadString Lädt einen Zeichenfolge Tabelleneintrag.

Beispielsweise kann eine Anwendung die Funktion LoadIcon verwenden, ein Symbol für die Anzeige auf dem Bildschirm laden. Allerdings sollten die Anwendung FindResource und LoadResource verwenden, wenn es, das Symbol geladen wird, um ihre Daten zu einer anderen Anwendung kopieren.

Zeichenfolgenressourcen sind in Abschnitten von bis zu 16 Strings pro Abschnitt gespeichert. Die Zeichenfolgen in jedem Abschnitt werden als eine Folge von gezählt (nicht Null-terminiert) Unicode-Zeichenfolgen gespeichert. Die LoadString Funktion extrahiert die Zeichenfolgenressource aus den entsprechenden Abschnitt.

Windows CE: Der hModule -Parameter darf kein NULL-Handle sein.

Der LpName Parameter unterstützt nicht die Ressourcen-ID 0 (null) — d. h. FindResource (h, 0, t) wird nicht wie erwartet funktioniert.

Sie können nicht die Werte RT_ANICURSOR oder RT_ANIICON im LpType -Parameter übergeben.

QuickInfo

&Nbsp; Windows NT: Version 3.1 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Version 1.0 oder höher benötigt.
Header:Deklariert in winbase.h.
Importieren Bibliothek:Verwenden Sie kernel32.lib.
Unicode:Als Unicode und ANSI-Versionen auf Windows und Windows NT implementiert.

Siehe auch

Übersicht über Ressourcen, Funktionen, Ressourcen, FindResourceEx, FormatMessage, LoadAccelerators, LoadBitmap, LoadCursor, LoadIcon, LoadMenu, LoadResource, LoadString, LockResource, SizeofResource

Index