wix 该目录位于用户配置文件中,但未在RemoveFile 表中列出
我有以下配置来从 WIX 删除和复制文件。
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id="AppDataFolder" Name="AppDataFolder">
<Directory Id="GleasonAppData" Name="Gleason" >
<Directory Id="GleasonStudioAppData" Name="GleasonStudio">
<Directory Id="DatabaseAppData" Name ="Database">
<Directory Id="UserSandboxesAppData" Name="UserSandboxes" />
</Directory>
</Directory>
</Directory>
</Directory>
</Directory>
<DirectoryRef Id="UserSandboxesAppData">
<Component Id="comp_deleteBackup" Guid="*">
<RemoveFile Id="RemoveBackup" Directory="UserSandboxesAppData"
Name="DevelopmentBackUp.FDB" On="install" />
<RegistryKey Root="HKCU" Key="Software\Gleason\Database\RemoveBackup">
<RegistryValue Value="Removed" Type="string" KeyPath="yes" />
</RegistryKey>
</Component>
<Component Id="comp_createBackup" Guid="*">
<CopyFile Id="DBBackup"
DestinationDirectory="UserSandboxesAppData"
DestinationName="DevelopmentBackUp.FDB"
SourceDirectory="UserSandboxesAppData"
SourceName="Development.FDB" />
<RegistryKey Root="HKCU" Key="Software\Gleason\Database\CopyBackup">
<RegistryValue Value="Copied" Type="string" KeyPath="yes" />
</RegistryKey>
</Component>
</DirectoryRef>
我收到 4 个与 ICE64 相关的错误 - 目录“xxx”位于用户配置文件中,但未在删除文件表中列出。 xxx={UserSandboxesAppData、DatabaseAppData、GleasonStudioAppData、GleasonAppData} 其他人在这里遇到了非常类似的问题: 目录 xx 位于用户配置文件中,但未在删除文件表中列出。。但该解决方案对我没有帮助。
我需要改变什么?
谢谢你, 文卡特·拉奥
I have the following configuration to delete and copy a file from WIX.
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id="AppDataFolder" Name="AppDataFolder">
<Directory Id="GleasonAppData" Name="Gleason" >
<Directory Id="GleasonStudioAppData" Name="GleasonStudio">
<Directory Id="DatabaseAppData" Name ="Database">
<Directory Id="UserSandboxesAppData" Name="UserSandboxes" />
</Directory>
</Directory>
</Directory>
</Directory>
</Directory>
<DirectoryRef Id="UserSandboxesAppData">
<Component Id="comp_deleteBackup" Guid="*">
<RemoveFile Id="RemoveBackup" Directory="UserSandboxesAppData"
Name="DevelopmentBackUp.FDB" On="install" />
<RegistryKey Root="HKCU" Key="Software\Gleason\Database\RemoveBackup">
<RegistryValue Value="Removed" Type="string" KeyPath="yes" />
</RegistryKey>
</Component>
<Component Id="comp_createBackup" Guid="*">
<CopyFile Id="DBBackup"
DestinationDirectory="UserSandboxesAppData"
DestinationName="DevelopmentBackUp.FDB"
SourceDirectory="UserSandboxesAppData"
SourceName="Development.FDB" />
<RegistryKey Root="HKCU" Key="Software\Gleason\Database\CopyBackup">
<RegistryValue Value="Copied" Type="string" KeyPath="yes" />
</RegistryKey>
</Component>
</DirectoryRef>
I get 4 errors related to ICE64--The directory 'xxx' is in the user profile but is not listed in the RemoveFile table.
xxx={UserSandboxesAppData, DatabaseAppData, GleasonStudioAppData, GleasonAppData}
Someone else had a very similar problem here: Directory xx is in the user profile but is not listed in the RemoveFile table.. But that solution did not help me.
What do I need to change?
Thank You,
Venkat Rao
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要在组件下添加一些
RemoveFolder
元素以使 ICE64 满意。有关删除每个用户数据并设法通过所有 ICE 验证测试的更多详细信息,请查看 如何创建卸载快捷方式(并通过所有 ICE 验证),作者:Rob Mensching。
You'll want to add some
RemoveFolder
elements under your components to keep ICE64 happy.For more details about removing per-user data and managing to pass all the ICE validation tests, check out How to create an uninstall shortcut (and pass all the ICE validation) by Rob Mensching.