我对WiX和安装程序是相当陌生的,所以在这个问题上请容忍我。
我已经创建了一个WiX安装项目来安装我的C#应用程序,并且我已经能够使用程序文件文件夹中的文件夹和指向桌面和应用程序程序文件夹的快捷方式成功地安装它。
我的问题是,当我使用安装项目生成的msi或“添加/删除程序”中的“卸载”选项卸载程序时,快捷方式仍然存在,并且应用程序仍然在“程序文件”文件夹中。下面是我的代码:
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="Update Tool" />
</Directory>
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="Update Tool" />
</Directory>
<Directory Id="DesktopFolder" Name="Desktop"/>
</Directory>
<Fragment>
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="ApplicationShortcut" Guid="*">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="Update Tool"
Description="Update Tool"
Target="[INSTALLFOLDER]Updater.exe"
WorkingDirectory="APPLICATIONROOTDIRECTORY"
Icon="icon.ico"/>
<RemoveFile Id="remove_menushortcut" Name="Update Tool" On="uninstall"/>
<RemoveFolder Id="RemoveApplicationProgramsFolder" Directory="ApplicationProgramsFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\Microsoft\Update Tool" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
</DirectoryRef>
<DirectoryRef Id="DesktopFolder">
<Component Id="ApplicationShortcutDesktop" Guid="*">
<Shortcut Id="ApplicationDesktopShortcut"
Name="Update Tool"
Description="Update Tool"
Target="[INSTALLFOLDER]Updater.exe"
WorkingDirectory="APPLICATIONROOTDIRECTORY"
Icon="icon.ico"/>
<RemoveFile Id="remove_applicationshortcut" Name="Update Tool" On="uninstall"/>
<RemoveFolder Id="RemoveDesktopFolder" Directory="DesktopFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\Microsoft\Update Tool" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
</DirectoryRef>
谁能指出我做错了什么,或者我需要做些什么?谢谢
发布于 2018-09-06 05:10:57
多实例?:在添加/删除程序中,您的应用程序是否有多个条目?如果是,请尝试将它们全部卸载,并查看快捷方式项目和文件是否消失。请记住,这些可能包括您不再记得的“实验实例”。尝试在一个干净的虚拟,看看卸载是否正确清理后,在一个新的安装。
Updater.exe:我看到你在里面放了一个"Updater.exe“。您是否正在使用该EXE文件从服务器下载应用程序文件以启动该过程?如果是,则这不是MSI和WiX的预期用途。从共享下载文件会忽略重要的部署功能,如transaction control,rollback,file registration,file inventory,等。如果要下载这样的文件,最好使用非MSI技术部署快捷方式。
https://stackoverflow.com/questions/52191476
复制相似问题