【问题标题】:how to cancel stating a process when the computer is shutting down?如何在计算机关闭时取消启动进程?
【发布时间】:2011-03-27 10:30:44
【问题描述】:

我有一个程序使用外部进程使用ProcessName.Start() 完成其工作,问题是当 Windows 关闭时我想在启动进程之前知道它正在关闭,因为如果应用程序启动关闭 Windows 时进程显示进程无法正确启动的消息(错误代码 0xc0000142)。

主应用程序是一个带有通知图标的 C# Windows 窗体应用程序,外部进程是一个用旧 C 语言编写的本机控制台应用程序(这是有充分理由的)。

我使用了一些系统事件,如 SessionEnding,并重写了 WndProc 来处理 Windows 消息,但没有成功,应用程序接收这些事件和消息有点晚,应用程序会启动进程并显示错误消息。

我希望有人可以帮助我。

谢谢

【问题讨论】:

    标签: c#


    【解决方案1】:

    是否可以监听 SessionEnding 事件,如果辅助进程已经启动则取消该事件,然后在辅助进程完成任务后关闭或注销?

    thread 描述了从 C# 关闭计算机的各种方法。

    【讨论】:

    • 感谢您的回复。但我的问题是我想在系统关闭时取消调用进程而不是延迟关闭进程
    【解决方案2】:

    我已经通过创建一个 DLL 并调用它而不是外部进程来解决我的问题,我之前尝试创建它但我遇到了一些问题,我再次尝试并成功了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-14
      • 2015-09-09
      • 1970-01-01
      • 1970-01-01
      • 2021-03-06
      • 1970-01-01
      • 2013-08-09
      • 2015-03-30
      相关资源
      最近更新 更多