【问题标题】:How to close a shelled process in VB6如何在VB6中关闭一个带壳的进程
【发布时间】:2009-03-30 17:20:19
【问题描述】:

我从我的 VB6 应用程序中取出一个应用程序。然后我想关闭它。我怎样才能做到这一点?

【问题讨论】:

    标签: shell process vb6


    【解决方案1】:

    Here 是 Karl Peterson 的 VB6 关闭应用程序的方法。根据您的要求,这很好 - 发送 WM_CLOSE 而不是使用 TerminateProcess。请注意,它将消息发送到属于该进程的所有顶级窗口,可能不止一个。

    我没有尝试过,但根据我的经验,Karl Peterson 的代码总是在可能的 5 分中给 5 星评分!

    编辑:请注意,这是原始答案的编辑版本,现在链接到 Karl 代码的最新版本。如果有人对此有任何疑问,Karl 仍然活跃在 VB6 newsgroup 上,但我认为他不会在 Stack Overflow 上闲逛。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 很好,但是它通过 TerminateProcess API 结束进程以停止应用程序,这不是很好(例如,进程没有机会保存任何东西)。我宁愿用 SendMessage hWnd, WM_CLOSE, 0&, 0& 结束它,但这需要从 ProcessID 获取窗口句柄
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-01
      • 2012-05-16
      • 1970-01-01
      • 2015-04-11
      • 2017-07-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多