以编程方式在C#中添加无管理员权限的文件关联

时间:2012-03-14 15:44:27

标签: c# visual-studio-2010 registry file-association

其他人也问了类似的问题,但我想澄清一下。我想在安装时无需管理权限即可构建我的应用程序。对于文件关联,我理解我需要在注册表中编写,但到目前为止,我在stackoverflow文章中找到了两个不同的位置:

HKEY_CURRENT_USER\Software\Classes

和另一个

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts

那么哪一个是正确的呢?

2 个答案:

答案 0 :(得分:5)

您应该使用前者(HKCU\Software\Classes),因为这是Windows用来打开文件的内容。

我不确定第二个用于什么;我相信它只用于填充Open With对话框的推荐部分。

答案 1 :(得分:2)

可悲的是,这是不可能的。您需要管理员权限才能执行此操作,无法解决此问题。

但是,您可以让用户在没有管理员权限的情况下安装应用程序,并让他有机会在以后关联文件扩展名,您可以要求提升权限。

除此之外,没有办法完成你想要的东西。