VS2003里winform关于AxWebBrowser怎么调用一个页面的方法.

dugupiaoyun 2006-11-03 02:35:42
我想打开一个QQ空间,所以给AxWebBrowser刚开始就连到这个页面。

page_load()
{
this.axWebBrowser1.Navigate("http://imgcache.qq.com/qzone/client/need_passwd.htm?12345678&0");
}

但是,如果我的空间设置了密码,那么就进不去了。必须输了密码后才能再进。
于是我用如下:

button_click()
{
mshtml.IHTMLDocument2 doc = (mshtml.IHTMLDocument2)axWebBrowser1.Document;
mshtml.IHTMLFormElement form =(mshtml.IHTMLFormElement)doc.all.item("form1",0);
mshtml.IHTMLElement Element = (mshtml.IHTMLElement)doc.all.item("passwd",0);
Element.innerText="123";//写入密码
}


在这里卡住了,提交怎么办?
我用
((mshtml.IHTMLFormElement)(form)).submit();
试了下,结果不行,说系统繁忙。
看了下网页的原代码实际上是在OnSubmit事件里还调用了一个验证的方法。也就是说没有通过这个验证的过程。
所以我想调用这个页面上的checkPasswd方法.

我参考了几个站点,他们上面说的都是
object oSum =this.axWebBrowser1.Document.InvokeScript("checkPasswd", new object[] {Element.innerText});
这样子来调用。可是我运行报错。Document没有InvokeScript这个方法。
难道是只有2.0版的才有这个方法,而1.1版的没有?!
如果没有该怎么解决这个登录问题?
//object oSum =this.axWebBrowser1.Document.InvokeScript("checkPasswd", new object[] {Element.innerText});
...全文
168 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
dugupiaoyun 2006-11-28
  • 打赏
  • 举报
回复
如果不用2.0的就不能实现么?有办法实现没?!
zhujin8777 2006-11-24
  • 打赏
  • 举报
回复
Mark
chnama 2006-11-03
  • 打赏
  • 举报
回复
恩,2005的WebBrowser控件封装了InvokeScript方法

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧