【问题标题】:Is it possible to supress MessageBoxes programmatically?是否可以以编程方式抑制消息框?
【发布时间】:2013-10-15 17:42:28
【问题描述】:

假设我有一个可执行文件 (MB.exe),它在运行时只显示一个 MessageBox。

是否可以从另一个程序或使用命令行中的命令调用此可执行文件并使其 MB.exe 仍然运行但根本不显示 MessageBox? (有点像 Windows 服务不显示消息框的方式,除非您在 services.msc 的“属性”菜单中选中“允许服务与桌面交互”选项)

【问题讨论】:

  • 当程序试图显示一个消息框时你希望发生什么。在终止之前无响应挂起,或者跳过消息框或在某处记录消息框内容?
  • 有一些方法可以完全隐藏 Windows 应用程序的 UI 和消息框,但如果显示消息框或任何对话框,隐藏的应用程序将卡在该点。除非您以编程方式处理。根据具体情况,对原始程序进行逆向工程可能更容易,因此请添加更多详细信息。
  • @BlueMonkMN "请跳过消息框"
  • @Renan Windows 服务似乎以某种方式做到了这一点。如果您在服务中有 MessageBox,它将不会显示。它只会跳过它。必须有某种方法来实现这一点。
  • 您是否尝试过从服务启动应用程序,以便该应用程序已经在不允许与 UI 交互的上下文中运行?

标签: windows-services hide messagebox


【解决方案1】:

在自动关闭弹出窗口和其他窗口方面,我们已经成功地使用了Buzof(适用于在桌面上运行的应用程序)和AutoIt(我们用来构建自动化脚本以支持我们的 Windows 服务产品)。

【讨论】:

    猜你喜欢
    • 2017-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多