在vb6中读取/捕获Windows弹出消息?

时间:2013-07-16 17:18:07

标签: vb6 windows-api-code-pack

问题:需要读取/捕获由非VB应用程序生成的Windows弹出消息的文本。

情况: 我有一个VB6应用程序,其中一部分需要处理excel工作簿。出现一个非vb-6弹出窗口(作为附加屏幕)“进行中的文件转换”,同时从旧的MS Excel应用程序打开新版本的excel-sheet。并自动关闭alos。

要求:我想在代码中捕获弹出窗口。然后为该非vb-6弹出窗口的“取消”按钮单击事件编写条件语句代码。 non vb6 pop up window

有人可以提出建议吗?

2nd

1 个答案:

答案 0 :(得分:0)

您可以使用以下API访问其他应用程序:

FindWindow()找到您要查找的主窗口 http://msdn.microsoft.com/en-us/library/windows/desktop/ms633499%28v=vs.85%29.aspx

GetWindow()浏览应用程序的HWND,以便您可以访问该按钮 http://msdn.microsoft.com/en-us/library/windows/desktop/ms633515%28v=vs.85%29.aspx

GetWindowText()从控件访问文本(它不能是编辑控件) http://msdn.microsoft.com/en-us/library/windows/desktop/ms633520%28v=vs.85%29.aspx

您需要使用Spy ++(可以下载)来查看出现时要查找的类名,并找出要正确导航的层次结构。

您需要使用API​​文本查看器来获取API声明,以便您可以在VB6中正确使用它们。