2011-09-13 17 views
1

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> 
+0

、命名されたレジストリ設定があった:私は、レジストリ設定を削除

<Property Id="WIXUI_VIRTUALDIR" Secure="yes" Value="VIRTUALDIR" > <RegistrySearch Id="WIXUI_VIRTUALDIR" Type="raw" Root="HKLM" Key="SOFTWARE\MyCo" Name="WixUiVirtualDir" /> </Property> 

:私はレジストリから値を設定し

ルックアップとは違って、元のコードにそのコードを含めなかったので、それは削除の対象となりました。私は以下の悪いコードの例を含めます。 – likestoski

答えて

0

私は私が間違って何をやっていた考え出し、ルックアップでは異なる命名されたレジストリ設定があった、それは、除去していました悪いコードの例を以下に示します。レジストリパスが異なることに注意してください。1)MyCo 2)MyCompany(これはデモンストレーション用ですが、私のドリフトはあります)。これにより、既定のWebサイトが破損し、置き換える必要がありました。したがって、あなたが作るレジストリキーの名前が正しく指定されていることを要確認してください! :)これは痛いものでした。

私は私が間違って何をやっていた考え出し
<DirectoryRef Id="FILEINSTALLDIR"> 
    <Component Id="RegistryEntries" Guid="GUID"> 
    <RegistryKey Root="HKLM" 
       Key="SOFTWARE\MyCompany" 
      Action="createAndRemoveOnUninstall"> 
     <RegistryValue Type="string" Name="WixUiVirtualDir" Value="[VIRTUALDIR]" /> 
    </RegistryKey> 
    </Component> 
</DirectoryRef> 
関連する問題