有没有办法从外部应用程序拦截 MsgBox() 并使用 VB.Net 阻止它?
对于本次讨论,假设 MsgBox 标题为“SQL 应用程序”,消息为“SQL 错误 - 重试”。
我发现了一些寻找要弹出的 MsgBox 的示例(通过查看窗口标题)然后发送键以按 OK,但我很好奇是否可以避免整个过程。否则,即使只是暂时的,用户仍然会看到 MsgBox 或“flash”。
有可能避免这种情况吗?
好吧,你可以像绕道一样(见http://research.microsoft.com/en-us/projects/detours/),并为你加载到你的进程中的消息框写一个绕道,但是有几个问题:
1) 它只有 32 位,除非您为专业版付费 2) 所涉及的开发工作可能不是微不足道的,尤其是如果您没有很多内部 C/C++ 经验。我想您可以为绕道编写一个托管包装器,但这听起来也很复杂。3) 如果没有专业版,您不能在商业上使用它。
这是您继承的应用程序吗?