在Windows 8.1上访问Microsoft.Web.Administration.ServerManager.Site时出现UnauthorizedAccessException

时间:2015-10-26 16:04:15

标签: c# iis wix windows-8.1

如果用户在文件Microsoft.Web.Administration.ServerManager.Sites上没有权限,是否有人获得有关在Win8.1(和Win8)上访问"%SystemRoot%\System32\inetsrv\config\redirection.config"集合的任何提示?

因为在这种情况下,用户将获得UnauthorizedAccessException ...

更重要的是,在Win8上,如果您的用户在Microsoft.Web.Administration.ServerManager上没有权限,您可能会在任何"%SystemRoot%\System32\inetsrv\config"媒体资源上遇到麻烦。

这适用于Win7,W2008和W2012 ..

HowTo:http://www.iis.net/learn/manage/scripting/how-to-use-microsoftwebadministration

我需要在“客户端”步骤(在UI中)启动的WiX c#Custom Action中浏览已安装的网站和应用程序,以便对新的WebApplication名称进行单一检查。

当然,谷歌搜索时无法找到相关的答案。只有几个答案,他们提示使用提升的权限启动或更改文件夹的权限,当然,在常规用户设置UI过程中,这是不可行的。

Ex:http://sharepointyankee.com/2011/03/30/system-unauthorizedaccessexception-filename-redirection-config/

1 个答案:

答案 0 :(得分:2)

仅供参考,似乎无法摆脱这种情况......

因此,我选择修改自定义操作以通过捕获UnauthorizedAccessException来忽略此情况,并仍然设置unicity检查成功并返回CA调用成功。

在这种情况下,在客户端步骤中我不会失败,与对手我无法获得单一性检查的真实结果。但是如果它不会因UnauthorizedAccessException失败而得到结果,我可以向用户生成一个对话框,邀请他更改站点名称。

然后在服务器步骤中,按照此检查的方式工作,我执行相同的测试,如果网站不是唯一的,则能够使用明确的消息使设置失败。 对于必须重新启动设置以更改站点名称的用户来说,这不是最好的,但是它可以通过尝试创建两个具有相同名称的网站来避免奇怪的故障。