Funzione di callback ENUMRESNAMEPROCA (libloaderapi.h)

Funzione di callback definita dall'applicazione usata con le funzioni EnumResourceNames e EnumResourceNamesEx . Riceve il tipo e il nome di una risorsa. Il tipo ENUMRESNAMEPROC definisce un puntatore a questa funzione di callback. EnumResNameProc è un segnaposto per il nome della funzione definita dall'applicazione.

Sintassi

ENUMRESNAMEPROCA Enumresnameproca;

BOOL Enumresnameproca(
  [in, optional] HMODULE hModule,
                 LPCSTR lpType,
                 LPSTR lpName,
  [in]           LONG_PTR lParam
)
{...}

Parametri

[in, optional] hModule

Tipo: HMODULE

Handle per il modulo il cui file eseguibile contiene le risorse da enumerare. Se questo parametro è NULL, la funzione enumera i nomi delle risorse nel modulo usato per creare il processo corrente.

lpType

Tipo: LPCTSTR

Tipo di risorsa per cui viene enumerato il nome. In alternativa, anziché un puntatore, questo parametro può essere MAKEINTRESOURCE(ID), dove ID è un valore intero che rappresenta un tipo di risorsa predefinito. Per i tipi di risorse standard, vedere Tipi di risorse. Per altre informazioni, vedere la sezione Osservazioni di seguito.

lpName

Tipo: LPTSTR

Nome di una risorsa del tipo da enumerare. In alternativa, anziché un puntatore, questo parametro può essere MAKEINTRESOURCE(ID), dove ID è l'identificatore intero della risorsa. Per altre informazioni, vedere la sezione Osservazioni di seguito.

[in] lParam

Tipo: LONG_PTR

Parametro definito dall'applicazione passato alla funzione EnumResourceNames o EnumResourceNamesEx . Questo parametro può essere usato nel controllo degli errori.

Valore restituito

Tipo: BOOL

Restituisce TRUE per continuare l'enumerazione o FALSE per arrestare l'enumerazione.

Commenti

Se IS_INTRESOURCE(lpszType) è TRUE, lpszType specifica l'identificatore integer del tipo di risorsa specificato. In caso contrario, si tratta di un puntatore a una stringa con terminazione Null. Se il primo carattere della stringa è un segno di cancelletto (#), i caratteri rimanenti rappresentano un numero decimale che specifica l'identificatore integer del tipo di risorsa. Ad esempio, la stringa "#258" rappresenta l'identificatore 258.

Analogamente, se IS_INTRESOURCE(lpszName) è TRUE, lpszName specifica l'identificatore intero della risorsa specificata. In caso contrario, si tratta di un puntatore a una stringa con terminazione Null. Se il primo carattere della stringa è un segno di cancelletto (#), i caratteri rimanenti rappresentano un numero decimale che specifica l'identificatore intero della risorsa.

Un'applicazione deve registrare questa funzione passando il relativo indirizzo alla funzione EnumResourceNames o EnumResourceNamesEx .

Se la funzione di callback restituisce FALSE, EnumResourceNames o EnumResourceNamesEx interromperà l'enumerazione e restituirà FALSE. In Windows XP e versioni precedenti il valore ottenuto da GetLastError sarà ERROR_SUCCESS; a partire da Windows Vista, l'ultimo valore di errore sarà ERROR_RESOURCE_ENUM_USER_STOP.

Nota

L'intestazione libloaderapi.h definisce ENUMRESNAMEPROC come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione libloaderapi.h (include Windows.h)

Vedi anche

Informazioni concettuali

EnumResourceNames

EnumResourceNamesEx

IS_INTRESOURCE

Riferimento

Risorse