将注册表数据类型映射到 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 类方法 GetDWORDValueSetDWORDValue 需要 REG_DWORD 数据类型。
REG_SZ string
StdRegProv 类方法 SetStringValue 需要 REG_SZ 数据类型。
REG_QWORD uint64。
单个 64 位值。 StdRegProv 类方法 GetQWORDValueSetQWORDValue 需要 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 根据需要。 有关详细信息,请参阅描述注册表的资源

为系统注册表提供程序定义类