Jas*_*son 10 c# security registry default file-type
我一直在尝试找到一种方法来更改Windows 7中特定文件扩展名的默认文件关联.我有一个应用程序,用于查看.tif文件,如果它不是默认查看器,我想提示用户文件类型.如果他们选择将其设为默认值,我想覆盖当前的默认查看器.如果系统上没有安装其他查看器,则此方法可以正常工作.当用户选择了另一个查看器时,我无法更改控制此处的注册表项:
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...");
Run Code Online (Sandbox Code Playgroud)
是否对此密钥有一些特殊保护,以防止以编程方式编辑它?