Wah*_*oiy 5 installation windows-installer wix
我正在尝试使用 RemoveFolderEx 在卸载后删除 Roaming/MyApp 文件夹,但是,在使用 'msiexec /i /l*v' 命令并检查安装程序日志后,我遇到了这个:
MSI (s) (64:40) [10:30:45:254]:调用远程自定义操作。DLL:C:\Windows\Installer\MSI860E.tmp,入口点:WixRemoveFoldersEx MSI (s) (64:74) [10:30:45:254]:生成随机 cookie。MSI (s) (64:74) [10:30:45:256]:使用 PID 52380 (0xCC9C) 创建自定义操作服务器。MSI (s) (64:8C) [10:30:45:657]:作为服务运行。MSI (s) (64:8C) [10:30:45:704]:您好,我是您的 32 位模拟自定义操作服务器。WixRemoveFoldersEx:错误 0x80070057:缺少文件夹属性:行的 APPLICATIONFOLDER:wrf4C77709F2CC40D572056B8DB1B2D0A3E CustomAction WixRemoveFoldersEx 返回实际错误代码 1603,但将继续被转换为:标记为:标记为成功的 WixFolderx50x501moveFolders 返回值 1。
我似乎无法让它发挥作用。我按照本指南来实现它:http : //www.hass.de/content/wix-how-use-removefolderex-your-xml-scripts
这是我的 Wix 代码:
<Property Id="APPLICATIONFOLDER">
<RegistrySearch Key="Software\Wah\MyApp" Root="HKCU" Type="raw"
Id="REGSEARCH" Name="Path" />
</Property>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="AppDataFolder">
<Directory Id="PrivateData" Name="MyApp">
<Component Id="RemovePrivateData" Guid="*">
<RegistryValue Root="HKCU" Key="Software\Wah\MyApp"
Name="Path" Type="string"
Value="[AppDataFolder]" KeyPath="yes"/>
<util:RemoveFolderEx On="uninstall"
Property="APPLICATIONFOLDER"/>
<RemoveFolder Id="AppDataFolder" On="uninstall"/>
</Component>
</Directory>
</Directory>
</Directory>
Run Code Online (Sandbox Code Playgroud)
查看 Regedit 后,该值确实设置为正确的路径。
任何帮助将不胜感激,因为我已经查看了 RemoveFolderEx 的几乎所有问题,但并没有特别帮助。
编辑:我通过向我的 APPLICATIONFOLDER 属性添加“Secure="yes"”属性来解决这个问题,如下所示:
<Property Id="APPLICATIONFOLDER" Secure="yes">
<RegistrySearch Key="Software\Wah\MyApp" Root="HKCU" Type="raw"
Id="REGSEARCH" Name="Path" />
</Property>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2879 次 |
| 最近记录: |