EnumResourceLanguagesA-Funktion (winbase.h)
Listet sprachspezifische Ressourcen des angegebenen Typs und Namens auf, die einem Binärmodul zugeordnet sind.
Syntax
BOOL EnumResourceLanguagesA(
[in] HMODULE hModule,
[in] LPCSTR lpType,
[in] LPCSTR lpName,
[in] ENUMRESLANGPROCA lpEnumFunc,
[in] LONG_PTR lParam
);
Parameter
[in] hModule
Typ: HMODULE-
Das Handle zu einem Modul, das durchsucht werden soll. Beginnend mit Windows Vista, wenn es sich um eine sprachneutrale portable ausführbare (LN-Datei) handelt, werden die entsprechenden MUI-Dateien (sofern vorhanden) in die Suche einbezogen. Wenn es sich um eine bestimmte MUI-Datei handelt, wird nur diese Datei nach Ressourcen gesucht.
Wenn dieser Parameter NULL-ist, entspricht dies der Übergabe eines Handles an das Modul, das zum Erstellen des aktuellen Prozesses verwendet wird.
[in] lpType
Typ: LPCTSTR-
Der Typ der Ressource, für die die Sprache aufgezählt wird. Alternativ kann dieser Parameter anstelle eines Zeigers
[in] lpName
Typ: LPCTSTR-
Der Name der Ressource, für die die Sprache aufgezählt wird. Alternativ kann dieser Parameter anstelle eines Zeigers
[in] lpEnumFunc
Typ: ENUMRESLANGPROC
Ein Zeiger auf die Rückruffunktion, die für jede aufgezählte Ressourcensprache aufgerufen werden soll. Weitere Informationen finden Sie unter EnumResLangProcA.
[in] lParam
Typ: LONG_PTR
Ein anwendungsdefinierter Wert, der an die Rückruffunktion übergeben wird. Dieser Parameter kann bei der Fehlerüberprüfung verwendet werden.
Rückgabewert
Typ: BOOL-
Gibt
Bemerkungen
Wenn IS_INTRESOURCE(lpType) TRUEist, gibt lpType den ganzzahligen Bezeichner des angegebenen Ressourcentyps an. Andernfalls handelt es sich um einen Zeiger auf eine mit Null beendete Zeichenfolge. Wenn das erste Zeichen der Zeichenfolge ein Nummernzeichen (#) ist, stellen die verbleibenden Zeichen eine Dezimalzahl dar, die den ganzzahligen Bezeichner des Ressourcentyps angibt. Beispielsweise stellt die Zeichenfolge "#258" den Bezeichner 258 dar.
Wenn IS_INTRESOURCE(lpName) TRUEist, gibt lpName den ganzzahligen Bezeichner der angegebenen Ressource an. Andernfalls handelt es sich um einen Zeiger auf eine mit Null beendete Zeichenfolge. Wenn das erste Zeichen der Zeichenfolge ein Nummernzeichen (#) ist, stellen die verbleibenden Zeichen eine Dezimalzahl dar, die den ganzzahligen Bezeichner der Ressource angibt.
Ab Windows Vista ist das binäre Modul in der Regel eine sprachneutralen portablen ausführbaren (LN-Datei) und die Enumeration enthält auch Ressourcen aus den entsprechenden sprachspezifischen Ressourcendateien (MUI-Dateien), die lokalisierbare Sprachressourcen enthalten.
Für jede gefundene Ressource ruft EnumResourceLanguages eine anwendungsdefinierte Rückruffunktion lpEnumFuncauf und übergibt den Sprachbezeichner (siehe Sprachbezeichner) der Sprache, für die eine Ressource gefunden wurde, sowie die verschiedenen anderen Parameter, die an EnumResourceLanguagesübergeben wurden.
Alternativ können Anwendungen EnumResourceLanguagesExaufrufen, wodurch genauer gesteuert wird, welche Ressourcen aufgezählt werden.
Die "EnumResourceLanguages" Funktion führt weiterhin Ressourcensprachen auf, bis die Rückruffunktion FALSE- zurückgibt oder alle Ressourcensprachen aufgezählt wurden.
Wenn hModule- in Windows Vista und höher eine LN-Datei angibt, können sich die aufgezählten Ressourcen entweder in der LN-Datei oder in einer zugehörigen MUI-Datei befinden. Wenn keine MUI-Dateien gefunden werden, werden nur Ressourcen aus der LN-Datei zurückgegeben. Im Gegensatz zu EnumResourceNames und EnumResourceTypesbetrachtet diese Suche mehrere MUI-Dateien. Die Enumeration beginnt mit MUI-Dateien in den Ordnern, die EnumUILanguageszugeordnet sind. Auf diese folgen alle anderen MUI-Dateien, deren Pfade dem schema entsprechen, das unter MUI Resource Managementbeschrieben wird. Schließlich wird die von hModule festgelegte Datei ebenfalls durchsucht.
Die Enumeration enthält niemals Duplikate: Wenn eine Ressource mit demselben Namen, Typ und Sprache sowohl in der LN-Datei als auch in einer MUI-Datei enthalten ist, wird die Ressource nur einmal aufgezählt.
Beispiele
Ein Beispiel finden Sie unter Erstellen einer Ressourcenliste.
Anmerkung
Der winbase.h-Header definiert EnumResourceLanguages als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | winbase.h (enthalten Windows.h) |
Library | Kernel32.lib |
DLL- | Kernel32.dll |
Siehe auch
Konzeptionelle
Referenz-