Funzione CryptGetOIDFunctionAddress (wincrypt.h)
La funzione CryptGetOIDFunctionAddress cerca nell'elenco delle funzioni registrate e installate una corrispondenza di tipo di codifica e identificatore di oggetto (OID). Se viene trovata una corrispondenza, la DLL che contiene la funzione è, se necessario, caricata. Se viene trovata una corrispondenza, viene restituito anche un puntatore all'indirizzo della funzione e un puntatore all'handle di funzione. Il conteggio dei riferimenti sull'handle di funzione viene incrementato.
Sintassi
BOOL CryptGetOIDFunctionAddress(
[in] HCRYPTOIDFUNCSET hFuncSet,
[in] DWORD dwEncodingType,
[in] LPCSTR pszOID,
[in] DWORD dwFlags,
[out] void **ppvFuncAddr,
[out] HCRYPTOIDFUNCADDR *phFuncAddr
);
Parametri
[in] hFuncSet
Handle del set di funzioni ottenuto in precedenza da una chiamata alla funzione CryptInitOIDFunctionSet .
[in] dwEncodingType
Specifica il tipo di codifica da associare. Attualmente vengono usati solo X509_ASN_ENCODING e PKCS_7_ASN_ENCODING; Tuttavia, è possibile aggiungere altri tipi di codifica in futuro. Per trovare le corrispondenze con entrambi i tipi di codifica correnti, usare:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING
Per le funzioni che non usano un tipo di codifica, impostare questo parametro su zero.
[in] pszOID
Se la parola di ordine elevato dell'OID è diversa da zero, pszOID è un puntatore a una stringa OID, ad esempio "2.5.29.1" o una stringa ASCII , ad esempio "file". Se la parola di ordine elevato dell'OID è zero, la parola di ordine basso specifica l'identificatore numerico da utilizzare come identificatore dell'oggetto. Questo OID risultante esegue il mapping alla funzione installata o registrata con lo stesso OID.
[in] dwFlags
Questo parametro può essere il valore seguente.
Valore | Significato |
---|---|
|
Cerca solo l'elenco di funzioni installate. |
[out] ppvFuncAddr
Puntatore a un puntatore a un indirizzo di funzione. Se viene trovata una corrispondenza, ppvFuncAddr punta all'indirizzo della funzione.
[out] phFuncAddr
Se viene trovata una corrispondenza, phFuncAddr punta all'handle della funzione. Il conteggio dei riferimenti per l'handle viene incrementato. Al termine dell'uso dell'handle, rilasciare l'handle chiamando la funzione CryptFreeOIDFunctionAddress .
Valore restituito
Se la funzione ha esito positivo e viene trovata una corrispondenza, la funzione restituisce un valore diverso da zero (TRUE).
Se la funzione non riesce o non viene trovata alcuna corrispondenza, restituisce zero (FALSE). Per informazioni sugli errori estesi, chiamare GetLastError.
Commenti
È possibile chiamare CryptGetOIDFunctionAddress con l'argomento pszOID impostato su CMSG_DEFAULT_INSTALLABLE_FUNC_OID per ottenere la funzione installabile predefinita per le funzioni di callback seguenti.
Per il recupero delle funzioni predefinite, impostare dwEncodingType su una combinazione OR bit per bit dei tipi di codifica seguenti.
CRYPT_ASN_ENCODING X509_ASN_ENCODING
Requisiti
Client minimo supportato | Windows XP [app desktop | App UWP] |
Server minimo supportato | Windows Server 2003 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | wincrypt.h |
Libreria | Crypt32.lib |
DLL | Crypt32.dll |