FrmFarmLogin.cs
上传用户:xhd1221
上传日期:2022-05-28
资源大小:186k
文件大小:8k
源码类别:

外挂编程

开发平台:

C/C++

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using System.IO;
  9. using System.Threading;
  10. using System.Web;
  11. namespace QQWinFarm
  12. {
  13.     public partial class FrmFarmLogin : Form
  14.     {
  15.         private System.Net.CookieContainer cookie = new System.Net.CookieContainer(); 
  16.         public FrmFarmLogin()
  17.         {
  18.             InitializeComponent();
  19.         }
  20.         /// <summary> 
  21.         /// 获得验证码 
  22.         /// </summary> 
  23.         private void GgetVerifyImage()
  24.         {
  25.             /*
  26.             System.Drawing.Bitmap bmp = new Bitmap("d:\getimage.jpg");
  27.             Verify asd = new Verify(bmp);
  28.             asd.writetodata();
  29.             string asdasd = asd.ocrpic();
  30.             string asdasdasd = asd.getchar();
  31.             asd.bp.Save("d:\1.jpg");
  32.             return;*/
  33.             cookie = new System.Net.CookieContainer();
  34.             Stream s = HttpHelper.GetStream("http://ptlogin2.qq.com/getimage?aid=15000102&0.43878429697395826", cookie);
  35.             if (s == null)
  36.             {
  37.                 MessageBox.Show("外挂获取登录码错误,请检查您的网络!", "提示信息");
  38.                 Application.ExitThread();
  39.                 return;
  40.             }
  41.             picVerify.Image = Image.FromStream(s);
  42.             s.Close();
  43.             // Stream geturlStream =
  44.           
  45.         } 
  46.         /// <summary> 
  47.         /// 登录 
  48.         /// </summary> 
  49.         /// <returns></returns> 
  50.         public void Login()
  51.         {
  52.             this.Invoke((MethodInvoker)delegate
  53.             {
  54.                 this.panel1.Enabled = false;
  55.             });
  56.             ChangeMessage("正在登录...");
  57.             string username = txtQQ.Text;
  58.             string userPWD = txtPwd.Text;
  59.             string verifyCode = txtVerify.Text;
  60.             string errorTxt = string.Empty;
  61.             string strRetVal = Utils.getMd5Hash2(Utils.getMd5Hash(userPWD).ToUpper() + verifyCode.ToUpper()).ToUpper();
  62.             string postData = "u=" + username + "&p=" + strRetVal + "&verifycode=" + verifyCode + "&aid=15000101&u1=http%3A%2F%2Fphp.qzone.qq.com%2Findex.php%3Fmod%3Dportal%26act%3Dlogin&fp=loginerroralert&h=1&ptredirect=1&ptlang=0&from_ui=1&dumy=";
  63.             string result = HttpHelper.GetHtml("http://ptlogin2.qq.com/login", postData, true, cookie);
  64.             errorTxt = result;
  65.             result = HttpHelper.GetHtml("http://php.qzone.qq.com/index.php?mod=portal&act=login", cookie);
  66.             bool isLogin = result.Contains("g_iLoginUin = " + username);
  67.             if (!isLogin)
  68.             {
  69.                 if (result.Contains("完成跳转"))
  70.                 {
  71.                     ChangeMessage("登录成功");
  72.                     isLogin = true;
  73.                 }
  74.                 else
  75.                 {
  76.                     if (!isLogin)
  77.                     {
  78.                         if (result.Contains("g_iLoginUin=" + username))
  79.                         {
  80.                             ChangeMessage("登录成功");
  81.                             isLogin = true;
  82.                         }
  83.                         else
  84.                         {
  85.                             errorTxt = Utils.NoHTML(errorTxt);
  86.                             isLogin = false;
  87.                         }
  88.                     }
  89.                 }
  90.             }
  91.             else
  92.             {
  93.                 ChangeMessage("登录成功");
  94.                 isLogin = true;
  95.             }
  96.             if (isLogin)
  97.             {
  98.                 this.Invoke((MethodInvoker)delegate
  99.                 {
  100.                     this.Hide();
  101.                     FrmFarmMain fncm = new FrmFarmMain(cookie);
  102.                     fncm.Show();
  103.                 });
  104.             }
  105.             else
  106.             {
  107.                 this.Invoke((MethodInvoker)delegate
  108.                 {
  109.                     this.Text = errorTxt;
  110.                     this.txtVerify.Text = "";
  111.                     MessageBox.Show(errorTxt, "登录失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
  112.                     this.Invoke((MethodInvoker)delegate
  113.                     {
  114.                         GgetVerifyImage();
  115.                         this.panel1.Enabled = true;
  116.                     });
  117.                     btnLogin.Text = "登录农场";
  118.                 });
  119.             }
  120.         }
  121.         private void butVerify_Click(object sender, EventArgs e)
  122.         {
  123.             GgetVerifyImage();
  124.         }
  125.         private void FrmFarmLogin_Load(object sender, EventArgs e)
  126.         {
  127.            // string asdasd = Utils.getMd5Hash2( Utils.getMd5Hash("wwgsxy1113616").ToUpper() +"aaaa").ToUpper();
  128.            // txtVerify.Text = asdasd;
  129.             //MessageBox.Show(Utils.ConvertUnicodeStringToChinese("u5bd2u51acu6765u4e34uff0cu5316u80a5u4f9bu5e94u7d27u5f20uff0cu76eeu524du6682u4e0du80fdu8d2du4e70u5316u80a5"));
  130.             GgetVerifyImage();
  131.             //int asd = HttpUtility.UrlDecode("274219550%2C314743076%2C513887433%2C393789055%2C412392567%2C383687343%2C31431996%2C501713534%2C19314415%2C375098725%2C1037203778%2C272859849%2C66004972%2C133739699%2C395992151%2C174835435%2C75969483%2C466204965%2C365438983%2C575725040%2C348702205%2C329212797%2C386502%2C360351087%2C410938863%2C124898421%2C7517580%2C455287740%2C609452359%2C903717240%2C97002056%2C154961405%2C443248871%2C969124263%2C715682588%2C8560603%2C498515796%2C25014960%2C417278600%2C269406025%2C413453284%2C381699117%2C328577997%2C305318274%2C383423659%2C475326534%2C376044211%2C76607710%2C87383945%2C444963071%2C361157088%2C278313539%2C413442668%2C20410072%2C490536895%2C165285884%2C964211902%2C417052854%2C605695880%2C29735047%2C670733745%2C278861593%2C215410799%2C289218276%2C514221404%2C472154432%2C513310345%2C541405851%2C81673444%2C44199900%2C545883436%2C776454115%2C664061745%2C835487407%2C646902904%2C835698093%2C380803259%2C303479625%2C350528899%2C153254306%2C501679211%2C527491998%2C364616956%2C670844696%2C937554000%2C285238133%2C53103685%2C412861427%2C182135110%2C454650002%2C517096970%2C308924269%2C415141491%2C377872441%2C717706704%2C43949192%2C77781076%2C294079209%2C554937993%2C517873235%2C380120552%2C505654082%2C19567788%2C382570409%2C461399307%2C281857874%2C736590981%2C31620490%2C850258302%2C441647027%2C729968820%2C522202610%2C1304619321%2C735137618%2C346821509%2C406653107%2C173470964%2C760231716%2C77052110%2C609846483%2C549541136%2C308926828%2C522951420%2C287070081%2C49743302%2C273821141%2C470542808%2C191310611%2C359358188%2C314595028%2C651998448%2C525753549%2C").Split(',').Length;
  132.         }
  133.         private void btnLogin_Click(object sender, EventArgs e)
  134.         {
  135.             Thread thread = new Thread(new ThreadStart(Login));
  136.             thread.IsBackground = true;
  137.             thread.Start();
  138.         }
  139.         private void ChangeMessage(string message)
  140.         {
  141.             this.Invoke((MethodInvoker)delegate
  142.             {
  143.                 this.Text = message;
  144.             });
  145.         }
  146.         private void txtVerify_KeyDown(object sender, KeyEventArgs e)
  147.         {
  148.             if (e.KeyCode == Keys.Enter)
  149.             {
  150.                 Thread thread = new Thread(new ThreadStart(Login));
  151.                 thread.IsBackground = true;
  152.                 thread.Start();
  153.             } 
  154.         }
  155.         private void FrmFarmLogin_FormClosed(object sender, FormClosedEventArgs e)
  156.         {
  157.             Dispose();
  158.             System.Environment.Exit(System.Environment.ExitCode);
  159.         }
  160.         private void txtVerify_KeyPress(object sender, KeyPressEventArgs e)
  161.         {
  162.             char asdasd = e.KeyChar;
  163.             if (asdasd == ',')
  164.             { }
  165.         }
  166.     }
  167. }