"值不在预期范围内",如何解决呀?搞死了!

wrongagain08 2014-09-15 11:42:40
我看着网上的例子写了小小试验程序。目标是这样的:就一个对话框,放个按钮上去。如图

运行时,一点按钮,就会启动IE,打开百度,然后自动往搜索文本框里填写内容,然后自动模拟点击“百度一下”的搜索按钮,这样网页中就会出现搜索结果了。

我代码是这样的:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace IE
{
public partial class Form1 : Form
{
private bool ie_Read = false;
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
SHDocVw.InternetExplorer ie = new SHDocVw.InternetExplorer();
ie.DocumentComplete += ie_DocumentComplete;
ie.Navigate("http://www.baidu.com");
ie.Visible = true;
compWait();
mshtml.HTMLDocument doc = ie.Document;
doc.getElementById("kw").innerText = "123";// "hellow world"; //<----这句老是“值不在预期范围内”,why?
doc.getElementById("su").click();
}
private void ie_DocumentComplete(object pDisp, ref object URL)
{
ie_Read = true;
}
private void compWait()
{
while (ie_Read != true)
{
Application.DoEvents();
}
}
}
}

但上面有一句老是出错,说“值不在预期范围内”,我绞尽脑汁都没想到它怎么错了?更奇怪的是,我有两台电脑,出错是其中一台(win8, 64bit, IE11),另一台(win8,32bit, IE10)却能顺利运行!我彻底晕菜了!我不想我以后发布的程序在有的机可以运行有的机不行。到底是为什么?谁能告诉我出错哪台机是为什么错了?怎么改?万分感谢!!!!!
...全文
10617 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dfer.Site 2017-01-06
  • 打赏
  • 举报
回复
引用 7 楼 kongwei521 的回复:
或者你用webbriwser 来实现。 参考 http://www.xuebuyuan.com/1781543.html
怎么老是看到你
蝶恋花雨 2017-01-06
  • 打赏
  • 举报
回复
引用 8 楼 dofun333 的回复:
怎么老是看到你
看到我很稀奇吗?
wrongagain08 2014-09-16
  • 打赏
  • 举报
回复
先谢过楼上的,但我这个只是个举例的程序。我要开发的软件并非是操作百度,而是模拟键盘鼠标来操作一般页面。我这里只是拿百度来举例而已。
smthgdin_020 2014-09-16
  • 打赏
  • 举报
回复
哪里抛出的值不在范围里?
蝶恋花雨 2014-09-16
  • 打赏
  • 举报
回复
或者你用webbriwser 来实现。 参考 http://www.xuebuyuan.com/1781543.html
蝶恋花雨 2014-09-16
  • 打赏
  • 举报
回复
用IE 11打开百度u然后右键查看html代码 搜索ID位kw的。 有可能下面代码 mshtml.HTMLDocument doc = ie.Document; doc.getElementById("kw").innerText = "123" 读取不到了。
wrongagain08 2014-09-16
  • 打赏
  • 举报
回复
不知道啊,是不是说innerText 不能赋“123"的值? 看来C#的“值不在预期范围内”是个超难问题哦?百度了发现遇到了这样的问题没几个能解决的! 有没有高手呀???
Pandorym 2014-09-15
  • 打赏
  • 举报
回复
http://www.baidu.com/#ie={inputEncoding}&wd=需要搜索的内容
derekrose 2014-09-15
  • 打赏
  • 举报
回复
可以尝试调试一下

110,536

社区成员

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

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

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