ZZ:INF檔案中的註冊表位置,譬如HKCR、HKLM、HKR等

來源:互聯網
上載者:User

ZZ:http://blog.csdn.net/weiwei22844/article/details/6088889

最近在學習驅動編程的INF檔案格式時,在AddReg等directive中有很多與註冊表相關的內容,現總結如下:

HKCR代表HKEY_CLASSES_ROOT;
HKCU代表HKEY_CURRENT_USER;
HKLM代表HKEY_LOCAL_MACHINE
HKU代表HKEY_USERS
比較麻煩的是HKR,該縮寫代表那個註冊表索引值的縮寫呢。通過查詢協助文檔可以發現如下解釋:

(1)在DDInstall section中,HKR縮寫表示的是裝置的software key(軟體子鍵),具體註冊表索引值是:
HKLM/SYSTEM/CurrentControlSet/Control/Class/%ClassGuid%/%DeviceIndex%
其中ClassGuid是裝置類的GUID,DeviceIndex是裝置序號,如果PC中有多於一個的同類裝置,序號會順序排列下去0000、0001、0002……

(2)在DDInstall.HW section中,HKR縮寫表示的是裝置的hardware key(硬體子鍵),具體註冊表索引值是:
HKLM/SYSTEM/CurrentControlSet/Enum/enumerator/deviceID,其中enumerator是裝置類別,deviceID是裝置的id號

(3)在DDInstall.Services section中,HKR縮寫表示的是Services key(服務子鍵),具體註冊表索引值是:
HKLM/SYSTEM/CurrentControlSet/Service

(4)在DDInstall.Interfaces section中,一般在用AddInterface Directive來進行和註冊表相關的操作時會用的HKR,這時HKR縮寫表示HKLM/SYSTEM/CurrentControlSet/Control/DeviceClasses/%InterfaceClassGUID%/ branch,其中InterfaceClassGUID由AddInterface Directive的第一個參數指定,branch由AddInterface Directive的第二個參數指定。

(5)在ClassInstall32 section中,有時候也會出現HKR,這時HKR縮寫表示HKLM/SYSTEM/CurrentControlSet/Control/Class/%ClassGUID%,其中ClassGuid是裝置類的GUID。

另外在編寫INF時,有時候會用一些整數來表示特定的路徑,如:

10 = C:/Windows(即windows目錄)
11 = C:/Windows/system32(即windows系統目錄)
12 = C:/Windows/system32/drivers (即windows驅動目錄)

當然對於不同的系統有一些細微的差別,但是大體上就是這樣的,以上是按本人的機子進行說明的,我的機子上安裝的是Vista系統。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.