我有一个C#应用程序。除此之外一切正常:
当我从添加/删除程序中卸载应用程序时,如果应用程序未关闭,它将在卸载后保持打开状态。
对于那些无法阅读隐含问题的人......“如何在卸载时关闭应用程序?”。
如果您需要任何细节,请询问。
答案 0 :(得分:3)
在您的Installer项目中(我假设您已使用Visual Studio中的Installer项目生成了MSI安装程序),您应该包含一个继承自Installer基类的类:
[RunInstaller(true)]
public class MyInstaller: Installer
{
public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
}
public override void Uninstall(IDictionary savedState)
{
base.Uninstall(savedState);
//TODO: Code to kill the live instance(s)
}
// Other override methods here if necessary
}
当用户卸载您的应用程序时,将执行此类的“卸载”方法。
在此方法中,您可以选择正在运行的进程列表并终止应用的所有实例。
答案 1 :(得分:0)
也许它是开放的,因为它在ram内存中。关闭它。
答案 2 :(得分:0)
这就是它的工作原理。
卸载会将其从磁盘中删除,而不是从内存中删除。
您必须在卸载操作中添加一些自定义代码才能在卸载前关闭应用