2

Web Service Extensions の下の 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>

これにより、2 番目の ASP.NET 2.0.50727 エントリが追加され、最初のエントリは有効になりません。

4

4 に答える 4

1

私はwix3を使用して同じ問題を抱えていました。他に解決策が見つからなかったので (??)、カスタム アクションを使用することにしました。私が c# とフレームワーク (System.Management) の WMI サポートを使用するという小さな違いがあります。 WMI を使用して IIS を構成する

OK、Wix に 2 つのミスがあることがわかりました。バックスラッシュが 1 つありました。これらの問題を修正した後、wix-iis:WebServiceExtension は私にとって完璧に機能しました。

于 2009-09-03T11:18:36.753 に答える
0

WIXのWebApplicationExtension要素を使用します。これはIISExtensionにあり、WIXプロジェクトへの参照を追加する必要があります。

于 2008-11-06T21:06:31.710 に答える
0

vbScriptを使用して、.NET4.0Webサービス拡張機能を有効にするようにコードを変更しました。

    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")
于 2010-04-20T10:18:18.213 に答える
0

最終的に、次のコードをカスタム アクションに入れました。

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")

きれいではないかもしれませんが、うまくいきます。

于 2009-02-05T17:17:51.870 に答える