我們知道目标平台是32位的程式運作在64位的系統上,去通路部分系統資料庫的時候系統自動重定向到win32node節點對應的項去了。但是做過安裝程式開發人員可能遇到過“需要去掉重定向”的問題,即直接通路64位程式的系統資料庫。
網上有很多winAPI的方法,關閉系統資料庫的重定向稍微複雜。(關閉檔案系統的重定向稍微簡單些,搬過來就可以用;關閉系統資料庫的重定向我現在沒看懂。)
我這裡提供的方法不需要關閉重定向,也不需要用winAPI,操作起來友善了許多。具體如下:
第一個方法是獲得根節點的句柄,常數是固定的。
使用這些方法需要引入Microsoft.Win32.SafeHandles;Microsoft.Win32;system;這三個命名空間。方法隻提供了主幹,沒有異常處理。望大家及時交流實際使用情況,不足之處請及時指出。