2015-10-26 1 views
3

Получает ли кто-нибудь подсказку для доступа к коллекции Microsoft.Web.Administration.ServerManager.Sites на Win8.1 (и Win8), если пользователь не получил права на файл "%SystemRoot%\System32\inetsrv\config\redirection.config"?UnauthorizedAccessException при доступе к Microsoft.Web.Administration.ServerManager.Site в Windows 8.1

Поскольку пользователь получит 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

мне это нужно в WiX C# пользовательских действий запущен на этапе 'клиент' (в то время как в пользовательском интерфейсе), чтобы просмотреть установленное Web сайты и приложения для них для проверки целостности нового имени WebApplication.

Конечно, я не могу найти ответ на этот вопрос при поиске в Google. Есть только несколько ответов, и они намекают на запуск с повышенными привилегиями или изменение прав в папке, ведь, конечно, это невозможно в обычном пользовательском интерфейсе пользовательского интерфейса.

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

ответ

2

Просто для информации, это, кажется, нет никакого способа, чтобы избавиться от этого ...

Так я выбираю, чтобы изменить свою настраиваемое действие, чтобы игнорировать этот случай, ловя UnauthorizedAccessException и до сих пор установить успех для проверки единства и вернуть успех для вызова CA.

В этом случае на клиентском шаге я не получу сбой, а с коллегой я не могу получить реальный результат проверки единства. Но я получаю результат, если он не сбой с UnauthorizedAccessException, и я могу вызвать диалог, чтобы пользователь пригласил его изменить имя сайта.

Затем на этапе сервера, где, кстати, эта проверка работает, я делаю тот же тест, чтобы иметь возможность отключить установку с четким сообщением, если сайт не уникален. Это не самое лучшее для пользователя, который должен перезапустить установку, чтобы изменить имя сайта, но он работает, и избегать странных сбоев, пытаясь создать два сайта с тем же именем.