在卸载我正在编写的Visual Studio集成包时,我需要运行“devenv.exe / setup”来更新VS UI并从启动/帮助屏幕中删除包信息。
但是,必须在删除所有加载项和包文件后运行它。我当前的设置(使用在卸载步骤中调用的Installer类自定义操作)导致devenv.exe在实际删除文件之前过早运行。这意味着启动画面信息不会更新。
有什么想法吗?我只需要devenv在安装结束时运行,不知何故 - 我不受自定义操作的束缚。
答案 0 :(得分:0)
您可以将自定义操作编写为Commit execution。这意味着它只会在成功卸载后运行。将其条件设置为REMOVE="ALL"
以确保它仅在卸载时运行。
答案 1 :(得分:0)
事实证明,诀窍是使用MS的新部署工具基础将我的托管函数包装到非托管DLL中,完全避开安装程序类。然后我使用Orca(MSI编辑器)在安装的特定时间添加自定义操作。
Installer类仅支持“延迟”自定义操作,必须在特定时间运行。