我一直在試圖找到一種方法來更改 特定文件擴展名在Windows 7中的默認文件關聯。我有一個應用程序,用於查看.tif 文件,我想提示用戶,如果它不是該文件的默認查看器爲 類型。如果他們選擇將其設爲默認,則我想要覆蓋當前的默認查看器 。如果在 系統上沒有安裝其他查看器,這可以正常工作。當有已由用戶選擇的另一觀衆,我 不能改變的控制,這裏的註冊表項:有沒有什麼辦法以編程方式設置「UserChoice」註冊表項來接管文件類型關聯?
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.tif\UserChoice
我已經沖刷網頁試圖找人已經這樣做了,但沒有人 似乎有任何答案。當我嘗試更新此 密鑰中的「Progid」值時,出現「無法寫入註冊表項」或「請求的註冊表訪問不允許」錯誤。該代碼是很簡單的:
var path = @"Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.tif\UserChoice";
var key = Registry.CurrentUser.OpenSubKey(path, true);
key.SetValue("Progid", "myprogid...");
是否有關於這個關鍵,防止它被 一些特殊的保護程序編輯?
您是否嘗試過更新它,例如在您使用管理員權限運行的控制檯應用程序中? – ChristiaanV 2011-05-31 17:29:05
這是一個桌面應用程序,作爲我自己運行,但沒有管理員權限。那是我的下一步。 – Jason 2011-06-01 18:30:56
以管理員身份運行並沒有幫助。 – Jason 2011-06-01 18:43:22