我在安装程序(msi)卸载期间删除基于功能的组件时遇到问题。如下所示,feature元素包含条件组件组引用,它们是目录id和另一个片段中的许多其他组件(例如,iis:WebAppPool):
Product.wxs
#!/usr/bin/env python
print ("Welcome to the un-weighted gpa calculator!")
year_one_gpa = ' '
def year_one():
number_classes = input("How many classes did you take your first year in highschool?(Please enter an integer, no percents): ")
class_gpa = [ ]
global year_one_gpa
for i in range(1, number_classes + 1):
grade = input("What was your final grade in the class: " )
if grade >= 93 and grade <= 100:
class_gpa.append(4.0)
elif grade >= 90 and grade <= 92:
class_gpa.append(3.7)
elif grade >= 88 and grade <= 89:
class_gpa.append(3.3)
elif grade >= 83 and grade <= 87:
class_gpa.append(3.0)
elif grade >= 80 and grade <= 83:
class_gpa.append(2.7)
elif grade >= 78 and grade <= 79:
class_gpa.append(2.3)
elif grade >= 73 and grade <= 77:
class_gpa.append(2.0)
elif grade >= 70 and grade <= 72:
class_gpa.append(1.7)
elif grade >= 68 and grade <= 69:
class_gpa.append(1.3)
elif grade >= 65 and grade <= 67:
class_gpa.append(1.0)
else:
class_gpa.append(0.0)
year_one_gpa = (sum(class_gpa)/ float(len(class_gpa)))
return class_gpa
year_one()
print year_one_gpa
OtherFragment.wxs
<Feature Id="StandardIntegration" Level="1" Title="StandardIntegration">
<ComponentGroupRef Id="SERVICES"/>
<!-- Integration Services IIS -->
<ComponentRef Id="comp1"/>
<ComponentRef Id="comp2"/>
<ComponentRef Id="comp3"/>
<ComponentRef Id="comp4"/>
<Condition Level="0">
<![CDATA[HAS_FEATURE_SET <> "true"]]>
</Condition>
</Feature>
....
在卸载过程中,所有其他引用的组件(包括包含iis Web应用程序池元素的组件)都会被正确删除,但目录(“SERVICES”)不是......而且它是唯一未被删除的文件目录。 (例如,msi安装的所有其他文件都被正确删除。)
非常感谢任何帮助,谢谢!