Función CryptGetDefaultOIDFunctionAddress (wincrypt.h)

La función CryptGetDefaultOIDFunctionAddress carga el archivo DLL que contiene una dirección de función predeterminada. También puede devolver la dirección de la primera o siguiente función de identificador de objeto predeterminado (OID) instalada en un conjunto de funciones inicializado y cargar el archivo DLL que contiene la dirección de esa función.

Sintaxis

BOOL CryptGetDefaultOIDFunctionAddress(
  [in]           HCRYPTOIDFUNCSET  hFuncSet,
  [in]           DWORD             dwEncodingType,
  [in, optional] LPCWSTR           pwszDll,
  [in]           DWORD             dwFlags,
  [out]          void              **ppvFuncAddr,
  [in, out]      HCRYPTOIDFUNCADDR *phFuncAddr
);

Parámetros

[in] hFuncSet

Identificador del conjunto de funciones obtenido previamente de una llamada a CryptInitOIDFunctionSet.

[in] dwEncodingType

Tipo de codificación que se va a comparar. Actualmente, solo se usan X509_ASN_ENCODING y PKCS_7_ASN_ENCODING; sin embargo, se pueden agregar tipos de codificación adicionales en el futuro. Para hacer coincidir ambos tipos de codificación actuales, use:

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING

[in, optional] pwszDll

Nombre del archivo DLL que se va a cargar. Normalmente, el nombre dll se obtiene de la lista devuelta por CryptGetDefaultOIDDllList. Si pwszDll es NULL, se realiza una búsqueda en la lista de funciones predeterminadas instaladas.

[in] dwFlags

Reservado para uso futuro y debe ser cero.

[out] ppvFuncAddr

Puntero a la dirección de la función de retorno. Si se produce un error en la función, se devuelve un valor NULL en ppvFuncAddr.

[in, out] phFuncAddr

Solo se usa si pwszDll es NULL. En la primera llamada a la función, *phFuncAddr debe ser NULL para adquirir la primera función instalada.

Cuando esta función se ejecuta correctamente, *phFuncAddr se establece en un identificador de función. El recuento de referencias del identificador de función se incrementa.

Después de la primera llamada a la función, phFuncAddr se establece en el puntero devuelto por la llamada anterior. Este puntero de entrada siempre se libera dentro de la función a través de una llamada a CryptFreeOIDFunctionAddress por esta función. La llamada a liberar el puntero siempre se realiza incluso cuando la función principal devuelve un error.

Se debe liberar un phFuncAddr distinto de NULL a través de una llamada a CryptFreeOIDFunctionAddress o pasando como entrada a esta función o como entrada a CryptGetOIDFunctionAddress.

Si pwszDll no es NULL, se omite el valor de este parámetro y no se libera un puntero distinto de NULL .

Valor devuelto

Si la función se ejecuta correctamente, la función devuelve un valor distinto de cero (TRUE).

Si se produce un error en la función, devuelve cero (FALSE).

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado wincrypt.h
Library Crypt32.lib
Archivo DLL Crypt32.dll

Consulte también

Funciones de compatibilidad con OID