Установите существующее расширение веб-службы на «Разрешить» с помощью WiX - PullRequest
2 голосов
/ 06 ноября 2008

В диспетчере IIS в разделе Расширения веб-служб ASP.NET v2.0.50727 по умолчанию имеет значение «Запрещено». Я хотел бы установить это как Разрешить во время установки.

В настоящее время я использую WiX версии 2.

Я пытался использовать:

<Component Id="Allow_WebServiceExtension_ASP.NET_2.0" DiskId="1" Guid="02247363-E423-41E1-AC15-BEF589B65A4D">
    <WebServiceExtension Id="WebServiceExtension_ASP.NET_2.0" Allow="yes" File="%SystemRoot%\Microsoft.NET\Framework\[DOTNETFRAMEWORKVER]\aspnet_isapi.dll" Description="ASP.NET v2.0.50727" UIDeletable="no" />
</Component>

Это добавляет вторую запись ASP.NET 2.0.50727 и не включает первую.

Ответы [ 4 ]

1 голос
/ 03 сентября 2009

У меня была такая же проблема при использовании wix3. Поскольку я не нашел другого решения (??), я решил также сделать это с помощью специального действия. С той небольшой разницей, что я использую c # и поддержку WMI фреймворка (System.Management). с использованием WMI для настройки IIS

ОК, я узнал, что в моем Wix было только две ошибки 1. отсутствует @Group -> я установил его на «ASP.NET v2.0.50727» 2. Путь к файлу был неверным. У меня была одна обратная косая черта для многих. После исправления этих проблем wix-iis: WebServiceExtension работал отлично для меня.

0 голосов
/ 20 апреля 2010

Я изменил код, чтобы включить расширение веб-службы .NET 4.0, используя vbScript:

    Dim LocatorObj
    Dim WebSvcObj
    Dim ProviderObj

    Set LocatorObj = CreateObject("WbemScripting.SWbemLocator")
    Set ProviderObj = LocatorObj.ConnectServer(".", "root/MicrosoftIISv2", "", "")
    Set WebSvcObj = ProviderObj.get("IIsWebService='w3svc'")
    WebSvcObj.EnableWebServiceExtension("ASP.NET v4.0.30319")
0 голосов
/ 05 февраля 2009

В итоге я добавил следующий код в пользовательское действие:

Dim WebSvcObj As Object
Dim LocatorObj As Object = CreateObject("WbemScripting.SWbemLocator")
Dim ProviderObj As Object = LocatorObj.ConnectServer(".", "root/MicrosoftIISv2", "", "")
WebSvcObj = ProviderObj.get("IIsWebService='w3svc'")
WebSvcObj.EnableWebServiceExtension("ASP.NET v2.0.50727")

Это может быть не красиво, но это работает.

0 голосов
/ 07 ноября 2008

Используйте элемент WebApplicationExtension в WIX, он находится в IISExtension, необходимо добавить ссылку на проект WIX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...