Condividi tramite


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 di 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 del 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 interrompere l'enumerazione.

Osservazioni

Se IS_INTRESOURCE(lpszType) è TRUE, lpszType specifica l'identificatore integer 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 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, è 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 verrà 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 non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione libloaderapi.h (include Windows.h)

Vedere anche

concettuale

EnumResourceNames

EnumResourceNamesEx

IS_INTRESOURCE

riferimento

risorse