fenhanxue 发表于 2013-7-23 11:59:16

网站注册的验证码图片,采用新建IE可以复制,而内嵌IE则不能,求助

比如,这样操作,则将验证码图片并复制到GUI界面:#include <ClipBoard.au3>
#include <GUIConstants.au3>
#include <IE.au3>


GUICreate("",300,700)
GUISetState()
$pic=GUICtrlCreatePic("",5,600,100,50)
$oIE=_IECreate("http://m.dangdang.com/register_email.php?sid")

$oImg = _IEImgGetCollection ($oIE,1)
$oPic = $oIE.Document.body.createControlRange()
$oPic.Add($oImg)
$oPic.Select()
$oPic.execCommand("Copy")
$img = ClipGet()
GUICtrlSetImage($pic,$img)
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        EndSwitch
WEnd
而如果把IE内嵌在GUI里,却读不出来,求助哦,
内嵌IE的代码为:#include <ClipBoard.au3>
#include <GUIConstants.au3>
#include <IE.au3>


GUICreate("",300,700)
GUISetState()
$oIE=_IECreateEmbedded()
GUICtrlCreateObj($oIE, 5, 5, 330, 550);嵌入式ie控件
$pic=GUICtrlCreatePic("",5,600,100,50)
_IENavigate($oIE, "http://m.dangdang.com/register_email.php?sid", 1);注册页面
$oImg = _IEImgGetCollection ($oIE,1)
$oPic = $oIE.Document.body.createControlRange()
$oPic.Add($oImg)
$oPic.Select()
$oPic.execCommand("Copy")
$img = ClipGet()

GUICtrlSetImage($pic,$img)

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        EndSwitch
WEnd

yuewe 发表于 2013-7-23 16:08:55

用InetGet可以吗
;~ Func Pic1Click()
;~         Local $hDownload = InetGet("http://bbss.shangdu.com/Login/randomcode.jsp?", @TempDir & "\code.jpeg", 1, 1)
;~ Do
;~   Sleep(250)
;~ Until InetGetInfo($hDownload, 2) ; 检查完成的下载.
;~ Local $nBytes = InetGetInfo($hDownload, 0)
;~ InetClose($hDownload) ; 关闭句柄以释放资源.
;~ GUICtrlSetImage($Pic1,@TempDir & "\code.jpeg")

;~ EndFunc

sdc7 发表于 2013-7-24 17:13:51

呵呵··这个是IE权限问题· 你把这个网站 添加到受信任站点就可以了··
页: [1]
查看完整版本: 网站注册的验证码图片,采用新建IE可以复制,而内嵌IE则不能,求助