Проекту веб-настройки VS2010 требуется совместимость с IIS6 (метабаза) на IIS7. Последствия или другие проблемы для приложения?

При попытке установить проект веб-установки (MSI), созданный в Visual Studio 2010 в Windows Vista, Windows 7 или Windows 2008 Server, установка завершится неудачно с некоторой общей ошибкой. Согласно http://devio.wordpress.com/2011/04/26/pitfalls-installing-web-setup-msi-on-iis-7/ это из-за проблемы совместимости между проектом установки и IIS7.

Чтобы решить эту проблему, я должен включить / установить совместимость с метабазой IIS6 в моей конфигурации Windows. Этот обходной путь действительно устранил проблему, но вызывает два вопроса:

  • Оказывает ли это какое-либо (негативное) влияние на функциональность IIS 7?
  • Как я могу уведомить пользователя, выполняющего установку, об этой проблеме, чтобы он или она могли предпринять правильные действия и установить компонент совместимости с метабазой? Можно ли при этой установке открыть диалоговое окно конфигурации компонентов Windows, чтобы упростить жизнь пользователю?

person Oxymoron    schedule 17.08.2011    source источник


Ответы (2)


  1. Я не думаю, что это повлияет на само приложение, если в нем реализован способ взаимодействия с IIS7 через собственный API. В противном случае, если он не поддерживает IIS7, вам все равно придется включить совместимость с IIS6.
  2. Стандартный подход к поиску чего-либо на целевой машине - это поиск в реестре и файловой системе. Я не знаю, как это возможно в проекте установки VS, но, например, В WiX есть специальные элементы для этого (RegistrySearch, DirectorySearch, FileSearch). По сути, этот пост в ветке WiX Tips and Tricks показывает, как проверить наличие IIS6. совместимость в WiX и заблокируйте установку, если она не включена / не установлена. Это довольно просто, даже если вы не знакомы с WiX, но знаете концепции установщика Windows, и он может помочь вам преобразовать код в аналогичную вещь в проекте установки VS.
person Yan Sklyarenko    schedule 17.08.2011

Похоже, мы оказываем одно негативное влияние на наши серверы. Каждый раз, когда мы развертываем приложение .NET 4.0 с msi, созданным в Visual Studio, мы получаем переработку ВСЕХ наших пулов приложений, даже тех, на которые установка не повлияла. По-видимому, основная причина этого - совместимость с IIS 6. (Об этом нам сообщил разработчик Microsoft в ответ на вопрос нашей службы поддержки по этому поводу.

На данный момент у нас нет решения. Конвертировать все наши установщики на Wix невозможно.

person Schwarzie2478    schedule 03.07.2012