在另一个应用程序中操作滚动条窗口

时间:2010-09-28 21:49:27

标签: c# .net winapi interop

我们通过编写脚本来模仿使用输入来“自动化”第三方应用程序。我们可以通过使用win32调用来点击鼠标,发送击键等,但是我在操作滚动条时遇到了麻烦。

我发现窗口的位置与滚动条的视觉位置相匹配,所以我很确定我有窗口句柄。不幸的是,GetScrollInfo方法只为滚动条位置,最小值,最大值,页面大小等返回零,并且SetScrollInfo似乎不会更新滚动条,尽管对SetScrollInfo和SetScrollInfo的调用都会返回成功...我有什么东西吗?我在这里失踪了?

2 个答案:

答案 0 :(得分:2)

由于你能够获得滚动条窗口句柄,我会尝试使用带有WM_VSCROLL(或WM_HSCROLL)的SendMessage。我认为这些内置函数设计用于在自己的进程中工作,而SendMessage将与外部进程一起使用,也可以与您自己的进程一起使用。

http://msdn.microsoft.com/en-us/library/bb787577%28VS.85%29.aspx

答案 1 :(得分:0)

尝试向上翻页,向下翻页或按箭头键击