這很重要
裝置元數據已被取代,將在未來的 Windows 版本中移除。 如需這項功能取代的相關信息,請參閱 驅動程式套件容器元數據。
裝置和印表機會將電腦識別為裝置容器。 因此,您可以使用指定唯一硬體識別碼值的 HardwareID XML 元素,在裝置元數據套件內識別電腦。 計算機的這個硬體識別碼值(有時稱為計算機硬體識別碼或 CHID)可以指定系統管理 BIOS (SMBIOS) 欄位數據的組合。
與其他裝置容器 的硬體 標識碼不同,每次系統開機時,Windows 都會產生計算機的硬體識別碼。 執行適用於 Windows 7、Windows 8 和 Windows 8.1 的 Windows 驅動程式套件 (WDK) 隨附的 ComputerHardwareIds 工具 (ComputerHardwareIDs.exe),即可產生計算機的硬體識別符。 從 Windows 10 開始,ComputerHardwareIds 工具會包含在軟體開發工具包 (SDK) 中。
ComputerHardwareIds 工具會根據系統系統管理 BIOS (SMBIOS) 中字段的資訊,為計算機產生一組硬體標識符。 下表描述這些SMBIOS欄位。
欄位名稱 | 結構名稱和類型 | SMBIOS 規格版本 | 抵消 | 長度 | 價值 | 說明 |
---|---|---|---|---|---|---|
製造者 | 系統資訊 (類型 1) | 2.0+ | 04小時 | 位元組 | 字串 | dmiStrucBuffer 陣列內以空字符結尾的字串的索引。 此字串會指定電腦製造商的名稱。 |
家庭 | 系統資訊 (類型 1) | 2.4+ | 1Ah | 位元組 | 字串 | dmiStrucBuffer 陣列內以空字符結尾的字串的索引。 此字串會指定特定電腦所屬的系列。 家庭是指從硬體或軟體的觀點來看相似但不完全相同的一組計算機。 一般而言,系列是由不同的計算機模型所組成,其組態和定價點不同。 同一系列的計算機通常具有類似的品牌和化妝品功能。 |
產品名稱 | 系統資訊 (類型 1) | 2.0+ | 05:00 | 位元組 | 字串 | dmiStrucBuffer 陣列內以空字符結尾的字串的索引。 此字串會指定計算機的產品名稱。 |
供應商 | BIOS 資訊 (類型 0) | 2.0+ | 04小時 | 位元組 | 字串 | dmiStrucBuffer 陣列內以空字符結尾的字串的索引。 此字串會指定 BIOS 廠商的名稱。 |
BIOS 版本 | BIOS 資訊 (類型 0) | 2.+0 | 05:00 | 位元組 | 字串 | dmiStrucBuffer 陣列內以空字符結尾的字串的索引。 此字串可以包含處理器核心和 OEM 版本的相關信息。 |
系統 BIOS 重大版本 | BIOS 資訊 (類型 0) | 2.4+ | 14 小時 | 位元組 | 不同。 | 系統 BIOS 的主要版本。 |
系統 BIOS 次要版本 | BIOS 資訊 (類型 0) | 2.4+ | 15 小時 | 位元組 | 不定 | 系統 BIOS 的次要版本。 |
外殼類型 | 系統機箱 (類型 3) | 2.0+ | 05:00 | 位元組 | 不定 | 系統機箱或底座類型。 |
SKU 編號 | SKU 號碼 (類型 1) | 2.4+ | 19 小時 | 位元組 | 字串 | 特定計算機組態的識別以供銷售。 |
基礎板製造商 | 製造商 (類型 2) | 04小時 | 位元組 | 字串 | 以 Null 結束的字串數目。 此字串會識別基礎板製造商,其中基礎板 – 面板類型為 0Ah(主機板)。 | |
基礎板產品 | 產品 (類型 2) | 05:00 | 位元組 | 字串 | 以 Null 結束的字串數目。 此字串會識別基礎板的產品名稱,其中基礎板 – 面板類型為 0Ah(主機板)。 |
如需 dmiStrucBuffer 陣列和 SMBIOS 欄位的詳細資訊,請參閱分散式管理工作組 (DMTF ) 網站上的系統管理 BIOS (SMBIOS) 規格。
當 ComputerHardwareIds 工具執行時,它會從 SMBIOS 資訊建立唯一的硬體識別碼。 每個硬體識別碼都是 GUID ,而且會串連來自 SMBIOS 字段的值來建立。
下表顯示用來在 Windows 7、Windows 8、Windows 8.1 和 Windows 10 中形成每個硬體識別碼的 SMBIOS 字段。
這很重要
只有在系統 SMBIOS 數據中填入了用來產生 HardwareID 的每個個別 SMBIOS 字段時,才會產生每部電腦硬體識別碼。
硬體識別碼 (HWID) | Windows 7 |
---|---|
HardwareID-0 | 製造商 + 系列 + 產品名稱 + 廠商 + BIOS 版本 + 系統 BIOS 主要版本 + 系統 BIOS 次要版本 |
HardwareID-1 | 製造商 + 產品名稱 + BIOS 廠商 + BIOS 版本 + 系統 BIOS 主要版本 + 系統 BIOS 次要版本 |
HardwareID-2 | 製造商 + 系列 + 產品名稱 |
硬體識別碼-3 | 製造商 + ProductName |
HardwareID-4 | 製造商 + 產品系列 |
硬體識別碼-5 | 製造商 + 機箱類型 |
HardwareID-6 | 製造者 |
硬體識別碼 (HWID) | Windows 8、Windows 8.1 |
---|---|
HardwareID-0 | 製造商 + 系列 + 產品名稱 + SKU 號碼 + BIOS 廠商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本 |
HardwareID-1 | 製造商 + 系列 + 產品名稱 + BIOS 廠商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本 |
HardwareID-2 | 製造商 + 產品名稱 + BIOS 廠商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本 |
硬體識別碼-3 | 製造商 + 產品系列 + 產品名稱 + SKU號碼 |
HardwareID-4 | 製造商 + 系列 + 產品名稱 |
HardwareID-5 | 製造商 + SKU 號碼 |
HardwareID-6 | 製造商 + ProductName |
HardwareID-7 | 製造商 + 產品系列 |
HardwareID-8 | 製造商 + 機箱類型 |
HardwareID-9 | 製造者 |
硬體識別碼 (HWID) | Windows 10 |
---|---|
HardwareID-0 | 製造商 + 系列 + 產品名稱 + SKU 號碼 + BIOS 廠商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本 |
HardwareID-1 | 製造商 + 系列 + 產品名稱 + BIOS 廠商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本 |
HardwareID-2 | 製造商 + 產品名稱 + BIOS 廠商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本 |
硬體識別碼-3 | 製造商 + 品系 + 產品名稱 + SKU編號 + 底板製造商 + 底板產品 |
HardwareID-4 | 製造商 + 系列 + 產品名稱 + SKU 號碼 |
HardwareID-5 | 製造商 + 系列 + 產品名稱 |
HardwareID-6 | 製造商 + SKU編號 + 基板製造商 + 基板產品 |
HardwareID-7 | 製造商 + SKU 號碼 |
HardwareID-8 | Manufacturer + Product Name + Baseboard Manufacturer + Baseboard Product |
HardwareID-9 | 製造商 + 產品名稱 |
HardwareID-10 | 製造商 + 系列 + 主板製造商 + 主板產品 |
HardwareID-11 | 製造商 + 產品系列 |
HardwareID-12 | 製造商 + 機箱類型 |
HardwareID-13 | 製造商 + 主板製造商 + 主板產品 |
HardwareID-14 | 製造者 |
每個硬體識別符字串都會使用SHA-1哈希演算法轉換成 GUID。
搭配電腦裝置元數據套件使用計算機硬體標識碼
針對 Windows 7 系統,強烈建議廠商在選取 硬體識別碼 值做為計算機的 HardwareID XML 元素值時執行下列動作。
如果裝置元數據套件符合具有特定製造、系列和型號的計算機,請使用 HardwareID-3 或 HardwareID-4 做為第一選擇。 這可讓元數據套件符合指定的計算機,這可提供計算機最精確的元數據。
如果裝置元數據套件涵蓋整個計算機系列,請使用 HardwareID-5 作為第二個選項。 在此情況下,計算機系列是獨一無二的,且未加上一個以上的產品線品牌。
如果裝置元數據套件涵蓋所有計算機或具有特定機箱類型的計算機,請使用 HardwareID-6 或 HardwareID-7 做為第三選擇。
備註
針對 Windows 7 計算機裝置元數據, HardwareID-1 和 HardwareID-2 會保留供日後使用。 請勿將它們用於計算機的硬體識別碼。
備註
針對 Windows 8 計算機裝置元數據,請勿針對計算機的硬體識別碼使用 HardwareID-1、 HardwareID-2、 HardwareID-3 。 HardwareID-1、 HardwareID-2、 HardwareID-3 保留供日後使用。 請改用 HardwareID-4、HardwareID-5、HardwareID-6、HardwareID-7、HardwareID-8、HardwareID-9 和 HardwareID-10。
若要指定硬體識別碼適用於電腦裝置容器,請使用下列規則:
- 使用 '{' 和 '}' 字元分隔硬體識別符字串。
- 在硬體標識符字串前面新增前置詞 'ComputerMetadata\'。
以下是電腦的 HardwareID XML 元素範例:
DOID:ComputerMetadata\{c20d5449-511e-4cb5-902a-a541239322aa}
如需 HardwareID XML 元素之格式需求的詳細資訊,請參閱 HardwareID。