将注册表数据类型映射到 WMI 数据类型
应用程序必须使用映射到注册表数据类型的数据类型来创建属性。 无需在创建、获取或设置注册表值的方法中指定注册表数据类型。 但是,包含值的输入参数必须采用正确的 WMI 数据类型。 例如,如果应用程序从注册表接收 REG_DWORD 数据,则接收数据的类必须包含 Uint32 属性。
下表列出了 StdRegProv 方法中使用的注册表和 WMI 数据类型之间的映射。
注册表数据类型 | WMI 数据类型 |
---|---|
REG_BINARY | uint8 数组 不超过 255 或十六进制 FF 的值的数组。 例如,以下 Visual Basic 脚本代码创建适合此数据类型的数组。 BinArray = Array(&H01, &Ha2) StdRegProv 类方法 SetBinaryValue 需要 REG_BINARY 数据类型。 |
REG_DWORD | uint32、sint32 或 Visual Basic 整数 单个 32 位值。 StdRegProv 类方法 GetDWORDValue 和 SetDWORDValue 需要 REG_DWORD 数据类型。 |
REG_SZ |
string StdRegProv 类方法 SetStringValue 需要 REG_SZ 数据类型。 |
REG_QWORD | uint64。 单个 64 位值。 StdRegProv 类方法 GetQWORDValue 和 SetQWORDValue 需要 REG_QWORD 数据类型。 |
REG_EXPAND_SZ |
string 扩展字符串是表示系统环境变量的特殊字符串。 例如,以下 VBScript 代码创建表示 HKEY_LOCAL_USER 环境变量 TEMP 的字符串。 TEMP = "%USERPROFILE\LocalSettings\Temp%" StdRegProv 类方法 SetExpandedStringValue 需要 REG_EXPAND_SZ 数据类型。 |
REG_MULTI_SZ | 字符串数组 包含多个字符串的多字符串数据类型。 例如,以下 VBScript 代码创建适合此数据类型的数组。 MultiValue = Array("first", "second", "third") StdRegProv 类方法 SetMultiStringValue 需要 REG_MULTI_SZ 数据类型。 |
REG_RESOURCE_LIST | 根据需要。 有关详细信息,请参阅描述注册表的资源。 |