Funzione EnumResourceNamesA (libloaderapi.h)
Enumera le risorse di un tipo specificato all'interno di un modulo binario. Per Windows Vista e versioni successive, questo è in genere un file eseguibile portabile (LN) indipendente dal linguaggio e l'enumerazione includerà anche le risorse dai file di risorse specifici della lingua corrispondenti (file con estensione mui) che contengono risorse del linguaggio localizzabili. È anche possibile che hModule specifichi un file con estensione mui, in cui solo il file viene cercato per le risorse.
Sintassi
BOOL EnumResourceNamesA(
[in, optional] HMODULE hModule,
[in] LPCSTR lpType,
[in] ENUMRESNAMEPROCA lpEnumFunc,
[in] LONG_PTR lParam
);
Parametri
[in, optional] hModule
Tipo: HMODULE
Handle a un modulo da cercare. A partire da Windows Vista, se si tratta di un file LN, i file con estensione mui appropriati (se presenti) sono inclusi nella ricerca.
Se questo parametro è NULL, equivalente al passaggio di un handle al modulo usato per creare il processo corrente.
[in] lpType
Tipo: LPCTSTR
Tipo della risorsa per cui viene enumerato il nome. In alternativa, anziché un puntatore, questo parametro può essere MAKEINTRESOURCE(ID), dove ID è un valore integer che rappresenta un tipo di risorsa predefinito. Per un elenco di tipi di risorse predefiniti, vedere Tipi di risorse. Per altre informazioni, vedere la sezione Osservazioni di seguito.
[in] lpEnumFunc
Tipo: ENUMRESNAMEPROC
Puntatore alla funzione di callback da chiamare per ogni nome o ID della risorsa enumerata. Per altre informazioni, vedere ENUMRESNAMEPROC.
[in] lParam
Tipo: LONG_PTR
Valore definito dall'applicazione passato alla funzione di callback. Questo parametro può essere usato nel controllo degli errori.
Valore restituito
Tipo: BOOL
Il valore restituito è TRUE se la funzione ha esito positivo o FALSE se la funzione non trova una risorsa del tipo specificato o se la funzione ha esito negativo per un altro motivo. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Se IS_INTRESOURCE(lpszType) è TRUE, lpszType specifica l'identificatore intero del tipo di risorsa specificato. In caso contrario, è un puntatore a una stringa con terminazione Null. Se il primo carattere della stringa è un segno di sterlina (#), i caratteri rimanenti rappresentano un numero decimale che specifica l'identificatore intero del tipo di risorsa. Ad esempio, la stringa "#258" rappresenta l'identificatore 258.
Per ogni risorsa trovata, EnumResourceNames chiama una funzione di callback definita dall'applicazione lpEnumFunc, passando il nome o l'ID di ogni risorsa trovata, nonché i vari altri parametri passati a EnumResourceNames.
In alternativa, le applicazioni possono chiamare EnumResourceNamesEx, che fornisce un controllo più preciso delle risorse enumerate.
Se una risorsa ha un ID, l'ID viene passato alla funzione di callback; in caso contrario, il nome della risorsa viene passato alla funzione di callback. Per altre informazioni, vedere ENUMRESNAMEPROC.
La funzione EnumResourceNames continua ad enumerare le risorse fino a quando la funzione di callback restituisce FALSE o tutte le risorse sono state enumerate.
A partire da Windows Vista, se hModule specifica un file LN, le risorse enumerate possono risiedere nel file LN o in un file mui associato. Se non vengono trovati file con estensione mui, vengono restituite solo le risorse del file LN. L'ordine in cui vengono cercati i file con estensione mui è il consueto ordine di ricerca del caricatore di risorse; per informazioni dettagliate, vedere Gestione linguaggio interfaccia utente . Una volta trovato un file con estensione mui appropriato, la ricerca file mui si arresta. Poiché tutti i file con estensione mui corrispondenti a un singolo file LN hanno gli stessi tipi di risorse, è necessario enumerare solo le risorse nel file con estensione mui trovato.
L'enumerazione non include mai duplicati: se le risorse con lo stesso nome sono contenute nel file LN e in un file con estensione mui, la risorsa verrà enumerata una sola volta.
Esempio
Per un esempio, vedere Creazione di un elenco di risorse.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 Build 20348 |
Server minimo supportato | Windows 10 Build 20348 |
Intestazione | libloaderapi.h |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |