【问题标题】:Service not removed after uninstall the application卸载应用程序后服务未删除
【发布时间】:2018-06-18 06:51:49
【问题描述】:

我已经使用 Visual Studio 设置项目创建了窗口窗体应用程序的设置。 它可以正常安装并且可以正常运行我的应用程序。

但是当我卸载应用程序时,它会正确卸载而没有任何错误,但应用程序的服务不会从服务中删除。

我不知道为什么会这样。

请有人帮助我。先感谢您。

【问题讨论】:

  • 你是如何卸载的?
  • 这是非常低的细节。你必须使用工具或软件库来安装服务和安装应用程序,你没有提到这些,或者你是如何设置的。请考虑彻底编辑您的帖子以包含所有这些相关详细信息
  • 嗨 BugFinder,我通过单击安装时创建的应用程序的卸载图标来卸载应用程序。
  • 服务是否会继续重启?如果你已经安装了,停止服务,然后卸载它会继续吗?
  • 您是使用带有安装程序项目插件的 VS 设置项目,还是使用 InstallShield LE?您是否使用安装程序类来安装/卸载服务?

标签: visual-studio visual-studio-setup-proje


【解决方案1】:

我在我的应用程序中遇到了同样的问题。

我只是在安装程序类中添加了窗口重启代码,所以当我卸载应用程序时系统会重新启动并且应用程序进程和服务都已删除。

【讨论】:

    【解决方案2】:

    这有几个可能的原因:

    1. 您没有将安装程序类添加到安装项目中自定义操作列表的每个节点。换句话说,也许没有卸载自定义操作,所以服务不会被卸载。

    2. 如果有 卸载方法,它通常不会停止您的服务,除非您这样做,通过在 base.Uninstall() 之前将关闭代码添加到覆盖。这意味着它将尝试卸载它,可能在服务小程序中将其标记为已禁用,并在下次重新启动时将其删除。

    3. 您可能正在使用安装程序类(不使用自定义操作)并尝试运行 InstallUtil.exe。这不是正确的方法,但是如果您没有将其作为卸载自定义操作运行,那么您还没有卸载,并且第 2 点仍然适用。无论如何,找到 InstallUtil.exe 来执行此操作并不安全。

    话虽如此,您仍然没有明确说明您是如何使用安装程序类的,它们是否是自定义操作,或者您是否正在运行 InstallUtil.exe,是否有卸载自定义操作,以及确切的状态是什么卸载后的服务。

    【讨论】:

    • 非常感谢 Phil 的这些答案——知道这非常有用——但是哇,这些安装程序项目似乎真的带来的麻烦多于好处?我想先决功能没问题?
    • Windows Installer 具有安装/启动/停止服务的标准操作,WiX 等工具使用这些操作 - 无需安装程序类。先决条件还可以,但 VS 只支持标准列表中的那些。
    • 有什么好的理由使用我不知道的安装程序项目吗?我几乎只看到我看过的功能存在问题。一些不错的 GUI,看起来很简单 - 我猜。
    猜你喜欢
    • 2020-03-04
    • 1970-01-01
    • 2021-11-30
    • 2016-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-14
    • 2011-12-11
    相关资源
    最近更新 更多