回答
嘗試打開帶有寫權限的RegistryKey
。如果它給你一個Exception
,你沒有權限。 你甚至可以指定某個特定的例外,表示你沒有權限。
註冊表中的每個節點都有自己的ACL(Access Credential List)。沒有一個權利。
通常,每個應用程序在HKLM配置單元或HKCU配置單元中都有自己的註冊表節點,或者兩者都有。
在前一種情況下,用戶必須是計算機的管理員,後者用戶可以讀/寫自己的註冊表。
要檢查實際訪問權限,可以使用RegistryKey.GetAccessControl
method。
但是,如上所述,您必須具有至少讀取權限才能調用此方法。
我在做 var temp = registryKey.GetAccessControl(); 但在臨時它不是給我說讀或寫的價值? – 2012-07-08 12:11:35
var temp = registryKey.GetAccessControl()。AccessRightType – 2012-07-08 12:12:47
用戶應該無權編輯「完整註冊表」,他們只應具有編輯註冊表中某些鍵的權限。
你最好做一個嘗試捕捉系統
try{
// Do registry edit
}
catch {
Console.Log("Sorry you don't have permission to edit this key");
}
每個用戶都是不同的,可以訪問某些部分,全部或部分使用Windows ACL註冊表的任何部分。
看看這裏的first answer。
try{
Registry.CurrentUser.OpenSubKey(@"PATH\TO\STUFF", true);
// Have write permissions.
}
catch {
// Do not have write permissions.
}
- 1. 編輯註冊表
- 2. 編輯註冊表值
- 3. C++ Windows註冊表編輯
- 4. 編輯註冊表中Vb.net
- 5. 編輯註冊表值
- 6. 編輯windows註冊表
- 7. 設計註冊用戶角色編輯?
- 8. 編輯與C#中的註冊表,但無法找到註冊表編輯器
- 9. C#編輯註冊表不起作用
- 10. 當用戶註銷時在註冊表中編輯用戶配置文件
- 11. 如何確定註冊表項是否被WOW64重定向?
- 12. 無法編輯Instagram客戶端註冊
- 13. 註冊表權限
- 14. 編輯類 - 其他用戶的註冊表
- 15. 是否有某種Java註冊表?
- 16. 檢查用戶名是否已註冊
- 17. simpleSAMLphp是否也支持用戶註冊?
- 18. 異常的註冊表編輯器
- 19. TFS註冊表編輯器需要
- 20. 在Python中編輯Windows 7註冊表?
- 21. 註冊表項編輯vb6啓動
- 22. 註冊表編輯器 - 進口的* .reg
- 23. 在VB.NET中編輯註冊表
- 24. WMI:遠程編輯註冊表
- 25. 無法在c#中編輯註冊表?
- 26. 註冊表更改權限刪除其他用戶權限
- 27. 編輯註冊表項並用批處理文件打開註冊表
- 28. 編輯Magento商店的「創建賬戶」註冊表
- 29. 確定是否有新的要求或編輯現有記錄
- 30. 定製的用戶註冊表格
可能重複的[如何獲得註冊表寫入權限在C#](http://stackoverflow.com/questions/721145/how-to-get-registry-write-permissions-in-c-sharp) – 2012-07-08 11:59:29