| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1799 人关注过本帖
标题:再接再厉,完成一半,只差一步就可以模拟网站登录了!吹版请看看代码哪里问 ...
只看楼主 加入收藏
qiuxingce
Rank: 2
等 级:论坛游民
帖 子:118
专家分:93
注 册:2014-1-17
结帖率:73.33%
收藏
已结贴  问题点数:20 回复次数:5 
再接再厉,完成一半,只差一步就可以模拟网站登录了!吹版请看看代码哪里问题,谢谢!
还是接着昨天那个在FORM中显示出了登录页面,然后我找了些模拟键盘输入的资料,现在用户名和密码可以通过剪切板结合模拟键盘CTRL V输入,但就是不知为何会忽略第一次置入剪切板的内容,只CTRL V了第二次剪切板的内容。
of = CREATEOBJECT("webForm")
of.visible=.t.
READ EVENTS
RETURN
DEFINE CLASS webForm AS Form
    ShowWindow = 2
    WindowState = 2
    ADD OBJECT WB AS Olecontrol WITH Width=this.width,Height=this.height,Anchor=15,OleClass="Shell.Explorer.2",Visible=.T.
    ADD OBJECT tmrlogin as timer with interval=1000
    PROCEDURE tmrlogin.timer
        this.Enabled=.f.        
        mykeybd(0x09)        
        mykeybd(0x09)        
        mykeybd(0x09)        
        mykeybd(0x09)
        _cliptext='qiuxingce@'
        DO ctrlV
        mykeybd(0x09)
        mykeybd(0x09)
        _cliptext='Chairman1106'
        DO ctrlV
        mykeybd(13)
    ENDPROC
    PROCEDURE UnLoad
        CLEAR EVENTS
    ENDPROC
    PROCEDURE Init
        this.WB.Silent = .T.
        this.WB.Navigate("https://tjebook.)
    ENDPROC
    PROCEDURE resize
        this.WB.width=this.width
        this.WB.height=this.Height
    ENDPROC
ENDDEFINE

FUNCTION mykeybd(Virtual_Key as Integer)
PRIVATE Virtual_Key &&键盘虚拟值,请参阅列表。
DECLARE keybd_event IN user32; &&键盘模拟API
    SHORT bVk,; &&表示虚拟键值,其取值范围为1-254。
    SHORT bScan,; &&该值为0
    INTEGER dwFlags,; &&0按下,2弹起
    INTEGER dwExtraInfo &&关于操作的附加说明,一般为0
DECLARE INTEGER MapVirtualKey IN user32;
    INTEGER VK,;
    INTEGER VI
DECLARE Sleep IN kernel32 INTEGER dwMilliseconds
= keybd_event(Virtual_Key, MapVirtualKey(Virtual_Key,0), 0, 0)
sleep(100)&&按键延时
= keybd_event(Virtual_Key, MapVirtualKey(Virtual_Key,0), 2, 0)
ENDFUNC
PROCEDURE ctrlV
    Declare keybd_event In Win32API Short bVk,Short bScan,Integer dwFlags, Integer deExtraInfo
    keybd_event(17, 0, 0, 0)
    keybd_event(Asc('V'), 0, 0, 0)
    keybd_event(Asc('V'), 0, 2, 0)
    keybd_event(17, 0, 2, 0)
ENDPROC

搜索更多相关主题的帖子: 模拟 this Integer SHORT PROCEDURE 
2020-05-22 07:25
qiuxingce
Rank: 2
等 级:论坛游民
帖 子:118
专家分:93
注 册:2014-1-17
收藏
得分:0 
变相解决问题。没办法,在网站重新申请了一个账号,密码设置的和账号一样,使用这个新的账号就登录进去了。但终究不是技术上解决了,遗憾!
2020-05-22 07:50
qiuxingce
Rank: 2
等 级:论坛游民
帖 子:118
专家分:93
注 册:2014-1-17
收藏
得分:0 
还有一个问题,就是在我原来的表单中调用这个PRG的时候,表单画面一闪而过就又回到了原界面,不知道为什么会这样呢?
2020-05-22 08:29
zhken
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:285
专家分:620
注 册:2012-9-21
收藏
得分:20 
还不如分析出这个网页用户名,密码,以及登录按键信息,直接赋值登入,因为模拟按键时,那些弹窗垃级什么的可不是等闲之辈
2020-05-24 09:56
qiuxingce
Rank: 2
等 级:论坛游民
帖 子:118
专家分:93
注 册:2014-1-17
收藏
得分:0 
楼上的师傅,可否赐教如何分析出用户名和,密码,以及登录按键信息并赋值登入?
2020-05-24 21:19
kesc
Rank: 2
等 级:论坛游民
威 望:1
帖 子:84
专家分:10
注 册:2006-10-11
收藏
得分:0 
回复 楼主 qiuxingce
能分享一下模拟键盘输入的资料吗,谢谢
2020-07-21 21:46
快速回复:再接再厉,完成一半,只差一步就可以模拟网站登录了!吹版请看看代码哪 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.051388 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved