2016-02-29 33 views
0

我希望我的MSI在安装过程完成后自行删除。我怎样才能做到这一点?无论如何只能在WIX中做到这一点?你是否必须创建自定义操作?WiX中的自动删除安装程序

对于那些想知道的,这个安装程序是即时生成并捆绑到一个特定的配置。安装完成后,MSI文件不再有用(用户必须下载全新安装程序以重新安装新配置)。

+0

我已经放弃了这个。我甚至创建了一个自定义操作并检索MSI的路径。下一步是在调度程序中创建一个任务,以便在成功安装事件时删除该文件。相反,我最终用一些参数启动已安装的应用程序,指示它应该删除指定的MSI文件。 –

回答

1

这不会有用,主要是因为MSI文件是安装完成后需要的。第31条:

http://blogs.msdn.com/b/windows_installer_team/archive/2006/05/24/605835.aspx

任何一种修复(自动或用户维修)将需要原始的MSI文件。您最好在卸载时删除它。

一般来说,我做这种事情的方式是将可执行文件放入用户的临时位置(不要将其安装在那里,用自定义操作将其复制到那里)并安排它运行并删除MSI文件。只需要依靠最终清理临时目录来删除exe。但是,如果需要提升进行删除,它将不会透明,并且可能会拒绝要求提升的不熟悉程序的弹出窗口。

+0

我最终做了这样的事情:在最后启动安装的应用程序,并用一些参数要求删除指定的msi文件。 –