SendMessage函数发送文本

时间:2016-08-30 05:47:24

标签: vb.net pinvoke sendmessage

我有一个表单,在表格上我有一个网络浏览器,目前在其上打开了google.com。

光标已经集中在搜索窗口上。 我一直在尝试使用SendMessage发送搜索文本到WebBrowser控件但不起作用。目前的代码。

Const WM_SETTEXT As Integer = &HC

Dim hdle As IntPtr = WebBrowser1.Handle

SendMessage(hdle, WM_SETTEXT, 0, "test")

为什么它不向Google专注搜索标签发送文字?我该如何解决这个问题?

P.S:我不想将SendKeys或HTML方法用于SetText。我只想使用Handler。

1 个答案:

答案 0 :(得分:0)

Web浏览器控件的窗口句柄不是文本编辑控件的窗口句柄。因此,您不会将消息发送到您想要的控件。

事实上,我所知道的每个主流浏览器都没有使用窗口控件。因此,文本窗口甚至没有窗口句柄,因此任何工作量都不会使您的基本概念成功。

使用UI自动化可以最好地实现您要做的事情。