FreeChinaNet登陆器

1.其实就用到了Windows里的一个RasDial拨号函数,代替宽带连接实现拨号,具体使用方法请查看MSDN。

2.这只是一个登陆器哦,账号文件和程序放在同一个目录,名字是accounts.dat,免费账号还要在网上找,账号保存格式可以查看该文件。

3.使用前必须连上ChinaNet,否则需等待程序超时自动退出,不然拨号连接会一直挂起。

4.看懂了源代码,稍加修改就可以做一个扫号器,有空再搞吧。

贴上部分代码,完整的VC6.0工程在下面。

 1 #include <windows.h>
 2 #include <stdio.h>
 3 #include <conio.h>
 4 
 5 #include "menu.h"
 6 #include "fileapp.h"
 7 #include "rasapp.h"
 8 
 9 int main()
10 {
11     UINT Ttask = 0;
12     UINT Tstate = 0;
13 
14     SetConsoleTitle("FreeChinaNet@HDU");
15     Ttask = MenuPlay();
16     if(Ttask == 3)
17     {
18         return 0;
19     }
20 /*--------------------------------------------------*/
21     printf("\n");
22     if(OpenFileData() == 0)
23     {
24         printf("MSG-已打开账号文件\n");
25     }
26     else
27     {
28         printf("Error-打不开账号文件,请检查!\n");
29         printf("\n");
30         printf("按任意键退出.");
31         getch();
32         return 0;
33     }
34 
35     while(Tstate == 0)
36     {
37         printf("MSG-正在尝试第%d个账号\n", Tcnt+1);
38         if(CopyFileData() != 0)                               // 拷贝一组新的账户密码
39         {
40             printf("MSG-没有可用的账号,要更新了\n");
41             fclose(Mfile);
42             break;
43         }
44         RasCreateLink();                      // 建立连接
45         while(Merror == 0)
46         {
47             if(Mstate == 8192)                // 连接成功
48             {
49                 Tstate = 1;
50                 printf("MSG-登陆成功!开始冲浪啦!^_^\n");
51                 RefreshTime();
52                 break;                        // 跳出循环
53             }
54         }
55         if(Tstate == 0)                       // 未连接
56         {
57             if(Merror == 651)
58             {
59                 printf("登陆失败,请确认ChinaNet已连接!\n");
60                 RasHangUpA(hRscon);
61                 fclose(Mfile);
62                 break;                        // 跳出大循环
63             }
64             // 此处为账号错误,清零Error,挂断上次连接,继续循环
65             Merror = 0;
66             RasHangUpA(hRscon);                               
67             Tcnt ++;
68         }
69         Sleep(1000);                          // 延时1s
70     }
71 
72     printf("\n");
73     printf("按任意键退出.");
74     getch();                                  // 按任意键退出
75     return 0;                                 // 返回0
76 }

FreeChinaNet登陆器.rar

posted @ 2013-01-24 13:56  Imapla  阅读(2788)  评论(0编辑  收藏  举报