大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> Script -> Inet控件与WebBrowser控件配合使用

Inet控件与WebBrowser控件配合使用

时间: 2021-07-31 作者:daque

 

url

帐号

暗号

其它参数

sohu邮箱

http://login.sohu.com/chkpwd.php

username

password

 

网易风行证

http://reg4.163.com/checkuser.jsp

username

password

 

csdn风行证

http://www.csdn.net/member/logon.asp

login_name

password

cookietime=0&

x=42&y=10

表格中的参数即是依照前方引见的本领获得的,在步调中将要用到。

先证明一点, webbrowser也是不妨径直post数据给web效劳器的,我将在第四局部给出代码。这边先看看inet与webbrowser彼此共同的功效。

inet控件与webbrowser控件配合使用图1

兴建一个工程,元件中勾选中“microsoft internet transfer controls 6.0”、“microsoft internet controls”,顺序增添inet1、webbrowser1、text1、text2、combo1在窗体上,不妨把webbrowser1符合拉大学一年级点,将各控件场所安置好(不妨参考运转后的图片),底下是代码:

    dim url1(2) as string:  dim url2(2) as string

    dim c1(2) as string: dim c2(2) as string: dim c3(2) as string

private sub form_load()

       text1.text = ""

    text2.text = ""

    text2.passwordchar = "*"

    combo1.additem "sohu邮箱", 0

    combo1.additem "网易风行证", 1

    combo1.additem "csdn风行证", 2

    combo1.additem "请采用一个登岸", 3

    combo1.text = combo1.list(3)

    url1(0) = "http://login.sohu.com/chkpwd.php": url2(0) = "http://www34.mail.sohu.com/control/entry"

    url1(1) = "http://reg4.163.com/checkuser.jsp": url2(1) = "http://reg4.163.com/main.jsp?"

    url1(2) = "http://www.csdn.net/member/logon.asp": url2(2) = "http://www.csdn.net/member/passport.asp"

    c1(0) = "username": c2(0) = "password": c3(0) = ""

    c1(1) = "username": c2(1) = "password": c3(1) = ""

    c1(2) = "login_name": c2(2) = "password": c3(2) = "cookietime=0&x=42&y=10"

end sub

private sub form_resize()

if me.windowstate <> 1 then

    webbrowser1.left = 10

    webbrowser1.width = me.width - 120

    webbrowser1.height = me.height - 800

end if

end sub

private sub text2_keyup(keycode as integer, shift as integer)

    if keycode <> 13 then exit sub

    if combo1.listindex = 3 then msgbox "请采用一个登岸": exit sub

    if text1.text = "" then msgbox "请输出用户名": exit sub

    if text2.text = "" then msgbox "请输出暗号": exit sub

    dim strformdata as string

    strformdata = c1(combo1.listindex) + "=" + text1.text + "&" + c2(combo1.listindex) + "=" + text2.text + "&" + c3(combo1.listindex)

    inet1.execute url1(combo1.listindex), "post", strformdata, "content-type: application/x-www-form-urlencoded "

    do until inet1.stillexecuting = false '这边阻碍前方的inet1,保证登岸胜利之后再取页面,你不妨将此do废除了试一次。

        doevents

    loop

    if combo1.listindex = 1 then

        webbrowser1.navigate url2(combo1.listindex) + c1(combo1.listindex) + "=" + text1.text

    else

        webbrowser1.navigate url2(combo1.listindex)

    end if

end sub

 

大师不妨抉择一个本人仍旧备案过的站点看看功效。

不妨看到,登岸胜利之后, inet与webbrowser是不妨维持住同一个session对话的!然而当咱们在webbrowser中表露出来的页面上点击了一个贯穿之后,乞求却不许胜利(请读者群本人试一下,在登岸胜利的站点中大肆点击一个与用户关系的贯穿,弹出来的将是一个“你没有登岸”的页面)。干什么?

由于咱们此刻点击的贯穿仍旧运用ie(操纵体例默许的欣赏器)翻开的,而ie乞求页面包车型的士功夫运用的是效劳器新发送过来的session,这个新的session与你在webbrowser中运用的session也即是身份id不一律,起码效劳器是这么觉得的,它觉得是另一个没有登岸的用户。以是说session的效率范畴不是对所有存户机的,经过本质的代码不妨很好的领会这一点。(不妨运用这一点,运用代码在一台电脑上实行两个之上的用户同声登岸,以至还能对同一中心举行无缝谈话。)

以是接下来咱们要使页面连接停在webbrowser中表露。由于很明显,既是webbrowser与inet是不妨维持住同一个session对话的,那么webbrowser与webbrowser里面天然也是不妨的!

要增添的代码很大略——

private sub webbrowser1_newwindow2(ppdisp as object, cancel as boolean)

    dim frm2 as new form2

    frm2.webbrowser1.registerasbrowser = true

    set ppdisp = frm2.webbrowser1.object

    frm2.show

end sub

而后在工程中增添一个form2,上头再放一个webbrowser1,安排好场所,form2的代码窗口增添上以次代码:

private sub form_load()

webbrowser1.silent = true

end sub

 

private sub form_resize()

if me.windowstate <> 1 then

    webbrowser1.left = 10

    webbrowser1.width = me.width - 120

    webbrowser1.height = me.height - 600

end if

end sub

private sub webbrowser1_newwindow2(ppdisp as object, cancel as boolean)’这边为了制止在form第11中学同样爆发的工作。

    dim frm2 as new form2

    frm2.webbrowser1.registerasbrowser = true

    set ppdisp = frm2.webbrowser1.object

    frm2.show

end sub

运用inet发送登岸乞求,webbrowser欣赏本质页面,简直是个很不错的构想,在登岸站点对立教少的情景下该当是没有什么题目的。然而这也会使工作变得越发搀杂。除去不许缺乏的post地方(url1)、帐号参数(c1)、暗号参数(c2)、其它参数(c3)除外,还必需要有供webbrowser乞求欣赏的页面地方参数(url2)。 固然不过多了一个参数,但却增添了很多烦恼(比方网易邮箱的乞求页面是按照用户的帐号名机动天生的,不恒定)。惟有运用webbrowser径直post数据本领制止第四个参数。

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.