EnumResourceTypesExW-Funktion (libloaderapi.h)
Listet Ressourcentypen auf, die einem angegebenen binären Modul zugeordnet sind. Die Suche kann sowohl eine sprachneutrale portable ausführbare Datei (LN-Datei ) als auch die zugehörigen MUI-Dateien enthalten. Alternativ kann es auf ein einzelnes binäres Modul eines beliebigen Typs oder auf die MUI-Dateien beschränkt werden, die einer einzelnen LN-Datei zugeordnet sind. Die Suche kann auch auf eine einzelne zugeordnete MUI-Datei beschränkt werden, die Ressourcen für eine bestimmte Sprache enthält.
Für jeden gefundenen Ressourcentyp ruft EnumResourceTypesEx die anwendungsdefinierte Rückruffunktion lpEnumFunc auf und übergibt den gefundenen Ressourcentyp sowie die verschiedenen anderen Parameter, die an EnumResourceTypesEx übergeben wurden.
Syntax
BOOL EnumResourceTypesExW(
[in, optional] HMODULE hModule,
[in] ENUMRESTYPEPROCW lpEnumFunc,
[in] LONG_PTR lParam,
[in] DWORD dwFlags,
[in] LANGID LangId
);
Parameter
[in, optional] hModule
Typ: HMODULE
Das Handle für ein zu durchsuchende Modul. In der Regel handelt es sich um eine LN-Datei, und wenn das Flag RESOURCE_ENUM_MUI festgelegt ist, können entsprechende MUI-Dateien in die Suche einbezogen werden. Alternativ kann dies ein Handle für eine MUI-Datei oder eine andere LN-Datei sein.
Wenn dieser Parameter NULL ist, entspricht dies der Übergabe eines Handles an das Modul, das zum Erstellen des aktuellen Prozesses verwendet wird.
[in] lpEnumFunc
Typ: ENUMRESTYPEPROC
Ein Zeiger auf die Rückruffunktion, die für jeden aufgezählten Ressourcentyp aufgerufen werden soll. Weitere Informationen finden Sie unter EnumResTypeProc.
[in] lParam
Typ: LONG_PTR
Ein anwendungsdefinierter Wert, der an die Rückruffunktion übergeben wird.
[in] dwFlags
Art: DWORD
Der Typ der zu durchsuchenden Datei. Die folgenden Werte werden unterstützt. Wenn dwFlags null ist, wird davon ausgegangen, dass die flags RESOURCE_ENUM_LN und RESOURCE_ENUM_MUI angegeben werden.
Wert | Bedeutung |
---|---|
|
Suchen Sie nach Ressourcentypen in einer der MUI-Dateien, die der von hModule angegebenen Datei und den aktuellen Spracheinstellungen zugeordnet sind, und folgen Sie dabei der üblichen Resource Loader-Strategie (siehe Benutzeroberflächensprachverwaltung). Wenn LangId ungleich null ist, wird alternativ nur die MUI-Datei der Sprache durchsucht, wie von LangId angegeben. In der Regel sollte dieses Flag nur verwendet werden, wenn hModule auf eine LN-Datei verweist. Wenn hModule auf eine MUI-Datei verweist, wird diese Datei trotz des Namens des Flags tatsächlich vom flag RESOURCE_ENUM_LN abgedeckt. |
|
Sucht nur die von hModule angegebene Datei, unabhängig davon, ob es sich bei der Datei um eine LN-Datei oder eine MUI-Datei handelt. |
|
Führt eine zusätzliche Überprüfung für den Ressourcenabschnitt und den zugehörigen Verweis im PE-Header aus, während die Enumeration ausgeführt wird, um sicherzustellen, dass Die Ressourcen ordnungsgemäß formatiert sind. Bei der Überprüfung wird für jeden Aufzählungstyp ein Höchstwert von 260 Zeichen festgelegt. |
[in] LangId
Typ: LANGID
Die Sprache zum Filtern der Suche im MUI-Modul. Dieser Parameter wird nur verwendet, wenn das RESOURCE_ENUM_MUI-Flag in dwFlags festgelegt ist. Wenn null angegeben wird, werden alle MUI-Dateien, die den aktuellen Spracheinstellungen entsprechen, gemäß der üblichen Resource Loader-Strategie in die Suche einbezogen (siehe Benutzeroberflächensprachverwaltung). Wenn eine LangId ungleich 0 (null) angegeben wird, ist die einzige durchsuchte MUI-Datei diejenige, die der angegebenen LangId entspricht.
Rückgabewert
Typ: BOOL
Gibt TRUE zurück, wenn erfolgreich oder FALSE , wenn die Funktion keine Ressource des angegebenen Typs findet oder wenn die Funktion aus einem anderen Grund fehlschlägt. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Die EnumResourceTypesEx-Funktion zählt weiterhin Ressourcentypen auf, bis die Rückruffunktion FALSE zurückgibt oder alle Ressourcentypen aufgelistet wurden.
Wenn hModule eine LN-Datei angibt und beide Flags ausgewählt sind, entsprechen die aufgelisteten Typen Ressourcen, die sich entweder in der LN-Datei oder in den zugeordneten MUI-Dateien befinden. Wenn keine MUI-Dateien gefunden werden, werden nur Typen aus der LN-Datei zurückgegeben. Sobald eine geeignete MUI-Datei gefunden wurde, wird die Suche nicht weiter fortgesetzt, da alle MUI-Dateien, die einer einzelnen LN-Datei entsprechen, dieselben Ressourcentypen aufweisen.
Wenn dwFlags und LangId beide null sind, verhält sich die Funktion wie EnumResourceTypes.
Wenn LangId ungleich null ist, wird nur die MUI-Datei gesucht, die diesem Sprachbezeichner entspricht. Sprachfallbacks werden nicht verwendet. Wenn keine MUI-Datei für diese Sprache vorhanden ist, ist die Enumeration leer (es sei denn, ressourcen für diese Sprache sind in der LN-Datei vorhanden, und das Flag ist so festgelegt, dass auch die LN-Datei durchsucht wird).
Die Enumeration enthält nie Duplikate: Wenn Ressourcen für eine bestimmte Sprache sowohl in der LN-Datei als auch in einer MUI-Datei enthalten sind, wird der Typ nur einmal aufgezählt.
Beispiele
Ein Beispiel finden Sie unter Erstellen einer Ressourcenliste.
Hinweis
Der libloaderapi.h-Header definiert EnumResourceTypesEx als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch 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
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | libloaderapi.h (Einschließen von Windows.h) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |
Siehe auch
Konzept
Referenz
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für