找回密码
 加入
搜索
查看: 1684|回复: 0

[IE类操作] 关于自动提交无法实现的问题,附程序

[复制链接]
发表于 2010-8-7 20:11:32 | 显示全部楼层 |阅读模式
朋友想使用程序实现远程控制客户机点击指定连接。

程序在部分电脑上无问题(都是远控电脑。都是xp,ie浏览器)

很奇怪的问题出现了,就是并不是在其他地方不执行,而是在输入关键词后提交这步停下来了。。。


开始地址和结束地址是设置范围,因为百度的连接无法准确获取,只能是一个范围。

程序如下:
 
#include <IE.au3>
#include <WinAPI.au3>
Global $mykey,$keywords,$start,$n,$end,$element,$oForm,$oQuery1,$nurl,$key
_IEErrorHandlerRegister()
Global $oIE = _IECreateEmbedded()
GUICreate("mytest", 700, 600, (@DesktopWidth - 700) / 2, (@DesktopHeight - 600) / 2)
GUICtrlCreateObj($oIE, 0, 0, 700, 600)
AutoItSetOption("TrayIconHide", 1)
GUISetState(@SW_SHOW)
$keywords=iniread(@ScriptDir& "" &"ie.ini", "关键词", "keywords", "Notfound")
$key=StringSplit($keywords,",",2)
For $mykey In $key
If @error = -1 Then ExitLoop
$start = iniread(@ScriptDir& "" &"ie.ini", "开始序号", "start", "Notfound")
$end = iniread(@ScriptDir& "" &"ie.ini", "结束序号", "end", "Notfound")
If $start=$end Then $end=$end+1
$n=$end-$start
Dim $i=0
 For $i=0 To $n
  If $start=$end Then ExitLoop
  $element=$start   
  $url = "http://www.baidu.com"
  _IENavigate($oIE, $url)
  _IELoadWait($oIE)
  $oForm = _IEFormGetObjByName($oIE, "f")
  $oQuery1 = _IEFormElementGetObjByName($oForm, "wd")
  Sleep("2000")
  _IEFormElementSetValue($oQuery1, $mykey)
  Send("{ENTER}")
;就是这里,使用传送键盘enter,submit,鼠标点击都会在某些电脑上出问题。。。。高手指点一下
  ;_IEFormSubmit($oForm,1)
  ;MsgBox(0,"",@Error)
  _replace()
  _IELinkClickByIndex($oIE, $element)
  $start=$start+1
 Next
Next
 Sleep("6000")
WinClose("mytest")
Do
 $nurl = _IEPropertyGet($oIE, "locationurl")
 If $nurl <> $url Then
  _replace()
  $url = $nurl
 EndIf
Until GUIGetMsg() = -3

Func _replace()
 Local $body, $string
 _IELoadWait($oIE)
 $body = _IEBodyReadHTML($oIE)
 $string = StringRegExpReplace($body, '\btarget=_blank', 'target=_self')
 $string = StringRegExpReplace($string, '\btarget="_blank"', 'target=_self')
 _IEBodyWriteHTML($oIE, $string)
EndFunc   ;==>_replace



ie.ini
 
[开始序号]
start=22
[结束序号]
end=22
[关键词]
keywords="博客"
 
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-18 20:31 , Processed in 0.076284 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表