CryptSetOIDFunctionValue 函数为指定的编码类型、函数名称、OID 和值名称设置值。
语法
BOOL CryptSetOIDFunctionValue(
  [in] DWORD      dwEncodingType,
  [in] LPCSTR     pszFuncName,
  [in] LPCSTR     pszOID,
  [in] LPCWSTR    pwszValueName,
  [in] DWORD      dwValueType,
  [in] const BYTE *pbValueData,
  [in] DWORD      cbValueData
);
参数
[in] dwEncodingType
指定要匹配的编码类型。 目前,仅使用X509_ASN_ENCODING和PKCS_7_ASN_ENCODING;但是,将来可能会添加其他编码类型。 若要匹配当前两种编码类型,请使用:
X509_ASN_ENCODING |PKCS_7_ASN_ENCODING。
[in] pszFuncName
要更新其编码类型、OID 和值名称的函数的名称。
[in] pszOID
如果 对象标识符 (OID) 的高序字不为零, 则 pszOID 是指向 OID 字符串(如“2.5.29.1”)或 ASCII 字符串(如“file”)的指针。 如果 OID 的高阶字为零,则低序字将指定要用作对象标识符的整数标识符。
[in] pwszValueName
指向 Unicode 字符串的指针,该字符串包含要设置的值的名称。 如果尚不存在具有此名称的值,该函数将创建它。
[in] dwValueType
指定要存储为值数据的信息类型。 此参数的取值可为下列值之一:
| 值 | 含义 | 
|---|---|
| 
 | 32 位数字。 | 
| 
 | 一个以 null 结尾的 Unicode 字符串,其中包含对环境变量 (的未扩展引用,例如“%PATH%”) 。 | 
| 
 | 以 null 结尾的 Unicode 字符串数组,以两个 NULL 字符结尾。 | 
| 
 | 以 Null 值结束的 Unicode 字符串。 | 
[in] pbValueData
指向包含要为指定值名称存储的数据的缓冲区。
[in] cbValueData
指定 pbValueData 参数指向的信息的大小(以字节为单位)。 如果数据的类型为 REG_SZ、REG_EXPAND_SZ 或 REG_MULTI_SZ,则大小必须包含终止 NULL 宽字符。
返回值
如果函数成功,则返回值为非零 (TRUE) 。
如果函数失败,则返回值为零 (FALSE) 。
要求
| 要求 | 值 | 
|---|---|
| 最低受支持的客户端 | Windows XP [仅限桌面应用] | 
| 最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] | 
| 目标平台 | Windows | 
| 标头 | wincrypt.h | 
| Library | Crypt32.lib | 
| DLL | Crypt32.dll |