使用WiX,我用新版本替换了应用程序 在旧版本中,新版本中不再需要一个目录 所以在安装时,应该这样做:
<Component Id="killDir_" Guid="..." KeyPath="yes">
<RemoveFolder Id="killDir" On="both" />
</Component>
到目前为止一切顺利,这很好。
但是如果该文件夹已被删除,则安装程序会再次创建该文件夹!
使用
时也会发生这种情况<util:RemoveFolderEx .../>
我在<Component>
标记中尝试了一个条件:
<Condition>OLD_STUFF_EXISTS</Condition>
以及产品中的DirectorySearch
:
<Property Id="OLD_STUFF_EXISTS">
<DirectorySearch Id='DirSearch' Path="OldDir" Depth='0'>
</DirectorySearch>
</Property>
但这似乎不起作用。
在MSI日志文件中,似乎执行了RemoveFolder:
MSI (s) (A0:4C) [13:44:45:742]: Doing action: RemoveFolders
MSI (s) (A0:4C) [13:44:45:742]: Note: 1: 2205 2: 3: ActionText
Action 13:44:45: RemoveFolders. Removing folders
Action start 13:44:45: RemoveFolders.
Action ended 13:44:45: RemoveFolders. Return value 1.
有些线路向下,istalled再次创建它:
MSI (s) (A0:4C) [13:44:45:807]: Executing op: FolderCreate(Folder=C:\...\,Foreign=0,,)
有没有办法告诉安装人员不要再创建它?