1

我们有一个第三方 Windows 应用程序,我们认为它对我们的用户来说太复杂而无法有效使用。该应用程序管理着我们每天用来扫描 3000 个文档的扫描仪。

可以使用键盘完全控制扫描仪应用程序。

因此,我们正在编写一个简单的 WinForms 应用程序,它上面有少量大按钮,这些按钮使用SendKeys和一些 Win32 API 调用来将击键发送到扫描仪应用程序。我们计划让这个 WinForms 应用程序全屏显示并设置到 Z-Order 的顶部。

但是,扫描仪应用程序有时会在模式对话框中显示错误消息(例如扫描仪卡纸等)。我们需要在我们的 WinForms 应用程序中显示这些错误消息。

任何人都可以提出一种技术来让我们捕获这些错误消息并将它们展示给我们的用户吗?

4

1 回答 1

2

不确定这是否是最有效的方法,但假设您有办法识别这些错误消息,您可以有一个循环每隔一段时间遍历所有打开的窗口,并查找其中一个错误窗口。

另一个可能的探索方向是将您的 dll 注入其他应用程序,并观察传递的消息。我不能肯定你能识别这些信息,我目前也不能做进一步的研究,但我相信应该是可能的。弹出此类消息时,只需 Spy++ 其他应用程序,并识别相关消息。

于 2009-07-03T10:03:24.557 回答