Clickonce + HKEY_LOCAL_MACHINE

时间:2011-02-16 19:15:25

标签: wpf vb.net registry clickonce cas

我有一个用.NET 4.0,VS2010编写的WPF应用程序,我希望通过内部网络内部的clickonce进行部署。

问题是我正在尝试在HKEY_LOCAL_MACHINE中创建一个注册表项,并且我正在拒绝访问。

我将应用程序设置为完全信任,甚至尝试断言RegistryPermission无济于事。

是否真的甚至无法通过clickonce分发应用并让它访问HKEY_LOCAL_MACHINE?

2 个答案:

答案 0 :(得分:2)

不是ClickOnce。

请参阅here进行讨论。相关部分:

由于存在将应用程序暴露给安全性提升攻击的风险,如果为客户端启用了UAC,则ClickOnce应用程序无法请求权限提升。尝试将其requestedExecutionLevel属性设置为requireAdministrator或highestAvailable的任何ClickOnce应用程序都不会安装在Windows Vista上。

最后一条语句也适用于Windows 7,因为安全模型是相同的。

最重要的是,你要做的事情需要提升到“以管理员身份运行”,所以不,你不能做你正在尝试打开UAC的客户。

答案 1 :(得分:2)

  

此外,如果应用程序需要   特权访问本地计算机   在安装时,那绝对是   不是ClickOnce的候选人   部署因为设计有   ClickOnce中没有添加任何机制   注册表项,安装共享   全球大会的集会   缓存(GAC),安装服务等   上。

http://msdn.microsoft.com/en-us/magazine/cc163973.aspx