Visual Studio安装项目:在卸载时终止运行进程

时间:2013-03-05 14:03:40

标签: visual-studio-2010 visual-studio setup-project

这是在任务栏中运行的程序的设置。它会在用户每次登录时启动。

我不能简单地使用Visual Studio安装程序升级程序,因此我必须首先卸载以前的版本。 (编辑:它必须是一个不同的版本,换句话说,它必须在不同的时间编译。如果它是相同的版本,它给出修复/删除对话。)

当我卸载时,我希望安装程序终止前一个实例,或者要求用户手动终止它。相反,它想要重新启动它,因此新安装无法启动应用程序。

是否有更改此设置的设置?

2 个答案:

答案 0 :(得分:0)

所以我认为不能这样做。

我目前的解决方法是在安装时执行自定义程序,executes a shell command使用TASKKILL命令终止所有正在运行的进程。 (Starting a batch file也是一种选择。)

注:

  • 我必须在安装时执行此操作。在卸载时执行此操作没有任何区别,因为卸载程序会在执行自定义操作之前检查正在运行的进程。虽然我在安装后仍然有一个正在运行的实例,但至少新安装程序将能够启动最新版本。
  • 自定义事件属性must be false上的InstallerClass选项。

编辑:唯一的问题是安装程序启动了我的“杀手”应用程序的.vshost.exe实例,并在被杀时重新启动。只有在您注销机器后它才会消失。什么都没有打破,但我内在的完美主义者觉得很烦人。

编辑:另一个问题是某些病毒程序可能不喜欢这样,你必须接受它为可信任。

答案 1 :(得分:0)

好的,或许是一个迟来的答案。你好像说这个程序不能被“杀死”;让它运行,同时安装mycrosoft进程资源管理器,可以通过此地址的程序页面下载http://www.javelin-tech.com/blog/2012/02/file-is-open-in-another-program/

非常好:我能删除以前隐藏的文件;基本上对于困难的方式,无论它们在哪里运行,它都会跟踪它们的运动......如果它处于休眠状态,它也可以找到它。还有什么......如果你(仍然)需要它,祝你好运!

我想现在虽然你应该拥有它......但它的价值是什么!

詹姆斯