写了个CMCC无线网络自动登录的程序

        有了这东东,以后就不用老是打开CMCC的登录页面,然后输入长长的账号来登录了!只需要随机启动,在图标右键选中Login即可,而且还有辅助计时功能。因为我用的是20元包月200小时,用超了就不好了~

       

 

哈哈~  方便多了~~

 

在广州大学城使用CMCC无线网络的同学可以下载来玩玩:

cmcc

 

下面说说工作原理:

要登录的话,可真不容易,我一开始也没有想到会绕这么多弯子。

首先,随便打开一个网页,例如www.google.com.tw,然后会被自动重定向到CMCC的登录页面,重定向的URL信息包含了一些参数,具体作用不清楚,但是都要使用到,所以要保存下来。

HTTP/1.1 302 Moved Temporarily
Server: Http Redirect Server/1.0
Author: [email protected]
Location:http://221.179.9.18:8080/bpss/login.jsp?wlanacname=2104.0020.200.00&wlanuserip=172.19.175.10&wlanacip=211.136.218.154
Content-Type: text/html
 

然后把这些参数信息,提交到/bpss/index.jsp这个页面去。随后才返回一个可用的登录页面!直接把账号写到POST的数据里,提交到/bpss/jsp/do_login.jsp去,如果返回一个重定向到index.jsp的html就表示登录成功了,否则就失败。

注销也比较麻烦,注销的时候直接访问/bpss/jsp/do_logout.jsp是不行的,需要一堆特殊的参数。这些参数在登录成功的页面里提供,所以我是直接在登陆成功后返回的数据中提取了这些参数数据了。

/bpss/jsp/do_logout.jsp?logouttype=url&LOGINIP=172.19.175.10&LOGINNAME=1581331****&DEVICEID=2104.0020.200.00&

WLANDIG=vIBqd30trA3TkBrWJB35kA==&WLANSID=EC6E926ECD8CFBC357C08115C882144C

 

贴一下关键代码:


Private Sub mnuLogin_Click()
    If tmrLogin.Enabled Then
        MsgBox "你已经登录过了吧 -_-!", vbExclamation
        Exit Sub
    End If
    If chkRemember.Value = Checked Then
        SaveAccount Me.txtAccount.Text, Me.txtPassword.Text
    Else
        SaveAccount "", ""
    End If
    LoginProcess = 0
    Inet1.Execute "http://www.baidu.com", "GET"
End Sub


Private Sub Inet1_StateChanged(ByVal State As Integer)
    Dim url As String, data As String
    If State = 12 Then
        Dim s As String
        s = Inet1.GetChunk(1024 * 16)
        Select Case LoginProcess
        Case 0:
            Dim wlanuserip As String, wlanacname As String, wlanacip As String
            wlanuserip = GetValue(s, "wlanuserip" & Chr(34) & " value=" & Chr(34), Chr(34))
            wlanacname = GetValue(s, "wlanacname" & Chr(34) & " value=" & Chr(34), Chr(34))
            wlanacip = GetValue(s, "wlanacip" & Chr(34) & " value=" & Chr(34), Chr(34))
            If wlanuserip = "" Or wlanacname = "" Or wlanacip = "" Then
                MsgBox "你已经可以使用网络了,无须登录CMCC -_-! ", vbExclamation
                Exit Sub
            End If
            LoginProcess = 1
            url = "http://221.179.9.18:8080/bpss/index.jsp"
            data = "wlanuserip=" & wlanuserip & "&wlanacname=" & wlanacname & "&wlanacip=" & wlanacip
            Me.Inet1.Execute url, "POST", data, "Content-Type: application/x-www-form-urlencoded"
        Case 1:
            url = "http://221.179.9.18:8080/bpss/jsp/do_login.jsp"
            data = "bpssUSERNAME=" & Me.txtAccount & "&bpssLoginType=1&bpssBUSPWD=" & Me.txtPassword & "&bpssSMSRND=" & Me.txtPassword & "&x=40&y=11"
            Me.Inet1.Execute url, "POST", data, "Content-Type: application/x-www-form-urlencoded"
            LoginProcess = 2
        Case 2:
            url = GetValue(s, "('/bpss/jsp/do_logout.jsp", "'")
            If url = "" Then
                MsgBox "登录失败 -_-! ", vbCritical
                Exit Sub
            End If
            LogoutUrl = url
            startTime = Now
            Me.Hide
            Beep
            Me.tmrLogin.Enabled = True
        End Select
    End If
End Sub
 

Private Sub mnuLogout_Click()
    If LogoutUrl <> "" Then
        'LoginProcess = 3
        Inet1.OpenURL "http://221.179.9.18:8080/bpss/jsp/do_logout.jsp" & LogoutUrl
        Beep
    Else
        MsgBox "你还没有登录吧 -_-!", vbExclamation
    End If
    tmrLogin.Enabled = False
    LogoutUrl = ""
End Sub

写了个CMCC无线网络自动登录的程序》有56个想法

  1. 小强

    我喜欢这软件!!!能加我qq吗???qq8481767!!!能把图标换一下吗????文字能换中文的不???电信和联通的能连接不????固定宽带能连接不???你这是安装包吗???

    回复
  2. 键348454823

    大帝,我总算找到你了,我女友在佛山,她用的就是cmcc,但是,请看:(这是我在百度知道的提问)
    机子是z460 网卡是althos的 无线网络是中移动的cmcc
    全宿舍都能用cmcc畅顺上网,就我的不太行!
    症状:无线网络那里已经连接上cmcc,信号非常好,但在浏览器进入登陆页面时,每次起码刷新20次才能进入那个输入手机号码和密码的登陆页面(有时是页面出来了,可是不能输入,就是按那个输入的框框没反应,打不了字上去)。终于登录后,总是掉线,上个qq,一小时至少掉线5次!但其他人没事啊!
    我已经采取的措施:更新无线网卡及网卡驱动。无线网卡属性~常规~TCP协议属性已经选择自动获得ip。尝试连接由无线路由器发射出的无线网络(宽带adsl)~是ok的。
    但都解决不了cmcc上网的问题啊!

    回复
    1. Xiaoxia 文章作者

      你提到的问题很诡异,但是我可能帮不上忙。CMCC采用的是网页认证,你可以先连接上,然后试试ping一下这个IP地址221.179.9.18。你可以把结果贴上来,如果延时很小,无丢包,则说明不是硬件问题,有可能是操作系统配置有问题,否则就是硬件或者硬件驱动不兼容。
      仅供参考!

      回复
  3. 键348454823

    如果你知道解决方法,请联系我吧,万分感谢啊!!我也20,广警的。如果你不知道,可不可以帮我问问啊?谢谢了~~~!
    Q:3484548**
    email:jian3484548**@163.com

    回复
  4. lianyu

    哈哈,虾哥,这个CMCC的是有客户端下载的,不用在网页上登录,我学校的CMCC还是免费的,到时收费合理的话我也开个套餐

    回复
  5. 野兔

    小虾,你好!
    我一名中专学生,对游戏编程比较感兴趣
    但一直不知从何下手。
    看到你写的游戏后感觉你狠厉害
    所以来问下你对初学者有什么建议吗?
    谢谢

    回复
    1. Xiaoxia 文章作者

      你留言的地方搞错了???你是说哪个游戏???什么类型的游戏???
      你学游戏编程的???

      回复
      1. 野兔

        不好意思,我不知道在哪留言。就是那个集钻石游戏。我下了你的源代码,在c free下编译,不过提示说缺少 allegro.h 我查了下,不过关于allegro的信息蛮少的。可以告诉怎么使用那个库吗?谢谢

        回复
      1. darren

        麻烦您 源码发给我哈。。。。
        我想参考下,虽然我不懂VB。。。
        有时间用C++给写个么!

        谢谢啦!

        回复
        1. Xiaoxia 文章作者

          这篇文章有下载链接呀,里面有源代码的,是vb写的。
          如果你了解了http协议,你也可以写一个的。
          用python写应该蛮简单的~~~

          回复
  6. 山巅浪人

    wlanacip是DNS,wlanuserip获取的IP,但是wlanacname 这个参数是什么,如何获得这个参数?不会VB,没看明白你的代码

    回复
    1. Xiaoxia 文章作者

      我当时没有研究过这些参数的含义。只是根据正常的登录流程发送http请求。
      Sorry for my VB代码。

      现在很少用Win7,所以现在如果我有需要的话,可能会用python写一个。另外可能用java写一个给手机用,哈哈!

      回复
  7. xc

    我是来挖坟的~~哈哈 看你以前的文章,真是大牛啊!

    以前写了个江苏CMCC-EDU的登录程序,不过是易语言。。。

    等闲下来了想学python了~~

    回复

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据