The CryptGetOIDFunctionAddress function searches the list of registered and installed functions for an encoding type and OID match. If a registry match is found, the Dll containing the function is loaded.
#include <wincrypt.h>
BOOL WINAPI CryptGetOIDFunctionAddress(
HCRYPTOIDFUNCSET hFuncSet, // in
DWORD dwEncodingType, // in
LPCSTR pszOID, // in
DWORD dwFlags, // in
void **ppvFuncAddr, // out
HCRYPTOIDFUNCADDR *phFuncAddr // out
);
Currently defined encoding types are shown in the following table:
Encoding type | Value |
---|---|
None | 0x00000000 |
CRYPT_ASN_ENCODING | 0x00000001 |
X509_ASN_ENCODING | 0x00000001 |
PKCS_7_ASN_ENCODING | 0x00010000 |
Flag Name | Value | Description |
---|---|---|
CRYPT_GET_INSTALLED _OID_FUNC_FLAG | 0x1 | Search only the installed list of functions. |
Note By default, both the registered and installed function lists are searched. Set CRYPT_GET_INSTALLED_OID_FUNC_FLAG to search only the installed list of functions. This flag would be set by a registered function to get the address of a pre-installed function it was replacing. For example, the registered function might handle a new special case and call the pre-installed function to handle the remaining cases.
Returns TRUE if a match is found. Returns FALSE if a match is not found.
Windows NT: Requires version 4.0 SP3 or later. Available also in IE 3.02 and later.
Windows: Requires Windows 98 (or Windows 95 with IE 3.02 or later).
Windows CE: Unsupported.
Header: Declared in wincrypt.h.
Import Library: Use crypt32.lib.