重要
设备元数据已弃用,并将在 Windows 的将来版本中删除。 有关替代功能的信息,请参阅驱动程序包容器元数据。
本主题提供有关如何生成设备元数据包的指南。
设备元数据包文件名
在创建设备元数据包文件之前,必须先为元数据包创建全局唯一标识符(GUID)。 为此,请使用 GUID 生成网站中所述的 Guidgen 工具(Guidgen.exe)。
设备元数据包的文件名必须使用以下命名约定:
<GUID>.devicemetadata-ms
例如,如果创建值为 {20f001a99-4675-8707-248ca-187dfd9} 的 GUID,则使用该 GUID 创建以下设备元数据包文件:
20f001a99-4675-8707-248ca-187dfd9.devicemetadata-ms
注释
只有当设备元数据包的后缀是devicemetadata-ms时,操作系统才会识别设备元数据包。
以下规则适用于设备元数据包文件:
每个元数据包文件名的 GUID 必须是唯一的。 创建新的或修订后的元数据包时,即使更改很小,也必须创建新的 GUID。
每个元数据包只能支持一个区域设置。 如果为设备支持多个区域设置,则必须为每个区域设置创建单独的元数据包,每个元数据包都有自己的 GUID。 有关详细信息,请参阅 Locale XML 元素。
注释
如果需要为设备创建多个特定于区域设置的设备元数据包文件,可以通过创建非特定语言标识符来对所有文件进行分组。 此标识符是 GUID,可以在同一设备的所有元数据包中的 LanguageNeutralIdentifier XML 元素中指定相同的 GUID。
设备元数据包文件名的 <GUID> 前缀必须指定不带“{”或“}”分隔符的 GUID。
创建设备元数据包文件
设备元数据包的组件存储在使用 Cabarc (Cabarc.exe) 工具压缩的文件中。 有关此工具的详细信息,请参阅 Cabarc 概述 网站。
下面的代码示例演示如何使用 Cabarc 工具创建设备元数据包文件。 在此示例中,元数据包的组件位于名为 MyMetadataPackage 的本地目录中。 以下列表显示了 MyMetadataPackage 目录中的子目录和文件:
.\MyMetadataPackages
.\MyMetadataPackage\PackageInfo.xml
.\MyMetadataPackage\DeviceInformation\DeviceInfo.xml
.\MyMetadataPackage\DeviceInformation\MyIcon.ico
.\MyMetadataPackage\WindowsInformation\WindowsInfo.xml
首先,为设备元数据包创建值为 {f4ea2b40-77ff-443d-8212-be7e74a344ae} 的 GUID。 下图演示如何使用 Guidgen 工具创建 GUID:

然后,以下命令使用 Cabarc 工具在名为 MyDeviceMetadataPackage 的本地目录中创建新的设备元数据包文件:
Cabarc.exe -r -p -P .\MyMetadataPackage\
N .\MyDeviceMetadataPackage\f4ea2b40-77ff-443d-8212-be7e74a344ae.devicemetadata-ms
.\MyMetadataPackage\PackageInfo.xml
.\MyMetadataPackage\DeviceInformation\DeviceInfo.xml
.\MyMetadataPackage\DeviceInformation\MyIcon.ico
.\MyMetadataPackage\WindowsInformation\WindowsInfo.xml
注释
每个元数据包只能支持一个区域设置。 如果为设备支持多个区域设置,则必须为每个区域设置创建单独的元数据包,每个元数据包都有自己的 GUID。