CryptSetOIDFunctionValue

The CryptSetOIDFunctionValue function sets the value for the specified encoding type, function name, OID, and value name.

#include <wincrypt.h>
BOOL WINAPI CryptSetOIDFunctionValue(
  DWORD dwEncodingType,  // in
  LPCSTR pszFuncName,    // in
  LPCSTR pszOID,         // in
  LPCWSTR pwszValueName, // in
  DWORD dwValueType,     // in
  BYTE *pbValueData,     // in, constant
  DWORD cbValueData      // in
);
 

Parameters

dwEncodingType
The type of encoding specified. Note that either a certificate or message encoding type is required. If the low-order word containing the certificate encoding type is nonzero, then it is used. Otherwise, the high-order word containing the message encoding type is used. If both are specified, the certificate encoding type in the low-order word is used.

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

pszFuncName
The name of the function for which the encoding type, OID, and value name is being updated.
pszOID
If the high-order word of the OID is non-zero, pszOID is a pointer to either an OID string, such as "2.5.29.1" or an ASCII string, such as "file". If the high-order word of the OID is zero, the low-order word specifies the integer identifier to be used as the object identifier.
pwszValueName
Points to a UNICODE string containing the name of the value to set. If a value with this name is not already present, the function creates it.
dwValueType
Specifies the type of information to be stored as the value's data. This parameter can be one of the following values:
Value Meaning
REG_DWORD A 32-bit number.
REG_EXPAND_SZ A null-terminated UNICODE string that contains unexpanded references to environment variables (for example, "%PATH%").
REG_MULTI_SZ An array of null-terminated UNICODE strings, terminated by two null characters.
REG_SZ A null-terminated UNICODE string.

pbValueData
Points to a buffer containing the data to be stored for the specified value name.
cbValueData
Specifies the size, in bytes, of the information pointed to by the pbValueData parameter. If the data is of type REG_SZ, REG_EXPAND_SZ, or REG_MULTI_SZ, must include the size of the terminating null wide character.

Return Values

TRUE if the function succeeded. FALSE if the function failed.

Call GetLastError to see the reason for any failures.

QuickInfo

  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.