Wix 3.6を使用してIIS 7にWebアプリケーションをインストールしても正常に動作しますが、アプリケーションの追加と削除またはMSIExecを使用してアプリケーションをアンインストールするとIISで次のエラーが発生します。WIX 3.6 IIS 7インストーラにより、「サイト1にはルートアプリケーションが定義されていないため、サイトは無視されます。アンインストール時のエラー
この操作を実行中にエラーが発生しました。 詳細: アプリケーション '/'は存在しません。
システムログのエラーは次のとおりです。
サイト1にはルートアプリケーションが定義されていないため、サイトは無視されます。
MSIExecと/ qbオプションを使用しているときのアンインストール時のログファイルは、この1つのエラーだけを示し、IISの既定のWebサイトディレクトリが破損する可能性があるこのタイプの問題を引き起こす可能性があります。
アクション開始7:04:40:ExitDialog。 DEBUG:エラー2726:アクションが見つかりません が見つかりました:ExitDialogインストーラは予期しないエラーが発生しました このパッケージをインストールしています。これはこの パッケージに問題がある可能性があります。エラーコードは2726です。引数は次のとおりです。ExitDialog、、 アクションが終了しました7:04:40:ExitDialog。戻り値は0です。アクションは終了しました。 7:04:40:INSTALL。戻り値1
ここにwixファイルの関連部分があります。誰かが正しい方向に私を指すことができるアイデアを持っている場合、彼らは非常に高く評価されます。前もって感謝します。私は元のコードでは、私が含まれることを含んでいなかったので、
<Product
Name="$(var.WebName)"
Id="*"
UpgradeCode="GUID"
Manufacturer="MyCo"
Version="$(var.ProductVersion)"
Language="1033">
<Package Id='*'
InstallScope="perMachine"
Manufacturer="MyCo"
InstallerVersion="200"
Languages="1033"
Compressed="yes"/>
<MajorUpgrade Schedule="afterInstallValidate"
DowngradeErrorMessage='A later version of this application is already installed. Setup will now exit'></MajorUpgrade>
<Media Id="1" Cabinet="MyProduct.cab" EmbedCab="yes" />
<Property Id="IISROOT">
<RegistrySearch Id="WEBROOT" Root="HKLM" Key="Software\Microsoft\InetStp" Name="PathWWWRoot" Type="raw" />
</Property>
<Property Id="WIXUI_INSTALLDIR" Value="FILEINSTALLDIR" Secure="yes" >
<RegistrySearch Id="WIXUI_INSTALLDIR" Type="raw" Root="HKLM" Key="SOFTWARE\MyCo" Name="InstallDir" />
</Property>
<Property Id="WIXUI_VIRTUALDIR" Secure="yes" Value="VIRTUALDIR" >
<RegistrySearch Id="WIXUI_VIRTUALDIR" Type="raw" Root="HKLM" Key="SOFTWARE\MyCo" Name="WixUiVirtualDir" />
</Property>
<Property Id="VIRTUALDIR" Secure="yes" Hidden="no" >
<RegistrySearch Id="VIRTUALDIR" Type="raw" Root="HKLM" Key="SOFTWARE\MyCo" Name="VirtualDir" />
</Property>
<CustomAction Id="FILEINSTALLDIR" Property="FILEINSTALLDIR" Value="[IISROOT]\[VIRTUALDIR]" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="IISROOT" Name=".">
<Directory Id="FILEINSTALLDIR" Name="AppDirectory">
<Component Id="MyCo_AppComponent" Guid="GUID">
<File Source=...
</Component>
</Directory>
</Directory>
</Directory>
<iis:WebSite Id="DefaultWebSite" Description="Default Web Site" SiteId="*">
<iis:WebAddress Id="AllUnassigned" Port="1" />
</iis:WebSite>
<DirectoryRef Id="FILEINSTALLDIR">
<Component Id="MyCoSiteComponent" Guid="GUID" KeyPath="yes">
<iis:WebVirtualDir Id='AppComponentVirtDir' Alias='[VIRTUALDIR]' Directory='FILEINSTALLDIR'
WebSite='DefaultWebSite'>
<iis:WebDirProperties Id="AppComponentVirtDirProperties"
AnonymousAccess="no" BasicAuthentication="no"
WindowsAuthentication="yes" />
<iis:WebApplication Id='MyAppName' Name='[VIRTUALDIR]' Isolation='medium' />
</iis:WebVirtualDir>
</Component>
</DirectoryRef>
、命名されたレジストリ設定があった:私は、レジストリ設定を削除
:私はレジストリから値を設定し
ルックアップとは違って、元のコードにそのコードを含めなかったので、それは削除の対象となりました。私は以下の悪いコードの例を含めます。 – likestoski