卸载条件下的wix IIS版本失败

时间:2011-09-27 07:48:10

标签: iis wix iis-7.5

我有一个自定义控件,如下所示。

在卸载期间,检查IIS_MAJOR_VERSION =“#7”和IIS_MINOR_VERSION =“#5”的条件似乎失败,尽管在安装期间此条件为真。

我确实在卸载文件中检查了IIS_MAJOR_VERSION =“#7”和IIS_MINOR_VERSION =“#5”的属性。有谁知道我做错了什么?

<Property Id="IIS_MAJOR_VERSION">
  <RegistrySearch Id="CheckIISVersion"
                  Root="HKLM"
                  Key="SOFTWARE\Microsoft\InetStp"
                  Name="MajorVersion"
                  Type="raw" />
</Property>
<Property Id="IIS_MINOR_VERSION">
  <RegistrySearch Id="CheckIISMinorVersion"
                  Root="HKLM"
                  Key="SOFTWARE\Microsoft\InetStp"
                  Name="MinorVersion"
                  Type="raw" />

<Custom Action="DropDBUSerIIS75" Before="InstallFinalize">Installed AND NOT UPGRADINGPRODUCTCODE AND IIS_MAJOR_VERSION="#7" AND IIS_MINOR_VERSION="#5"</Custom>

1 个答案:

答案 0 :(得分:0)

即使我不确定代码为什么会出错,但为了预防措施,请使用此代码来获取IIS版本的值,因为即使IIS未安装,上述注册表项值仍将存在。

<Property Id="IIS_MAJOR_VERSION">
  <RegistrySearch Id="CheckIISVersion"
                  Root="HKLM"
                  Key="SYSTEM\CurrentControlSet\services\W3SVC\Parameters"
                  Name="MajorVersion"
                  Type="raw" />
</Property>
<Property Id="IIS_MINOR_VERSION">
  <RegistrySearch Id="CheckIISMinorVersion"
                  Root="HKLM"
                  Key="SYSTEM\CurrentControlSet\services\W3SVC\Parameters"
                  Name="MinorVersion"
                  Type="raw" />