zoukankan      html  css  js  c++  java
  • C#QQ号批量注册(二)

     

    第二部:编写主窗体代码:

    要实现自动保存,自动打开QQ注册网页,自动填写表单等功能:

    如图:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using mshtml;
    using System.Runtime.InteropServices;
    using System.Threading;
    using System.IO;
    using System.Diagnostics;

    namespace QQ号批量注册
    {
        public partial class Form1 : Form
        {
            public const int INTERNET_CONNECTION_MODEM = 1;
            public const int INTERNET_CONNECTION_LAN = 2;
            [System.Runtime.InteropServices.DllImport("wininet.dll")]
            public static extern bool InternetGetConnectedState(ref  int dwFlag, int dwReserved); 
            public Form1()
            {
                InitializeComponent();
            }
            #region QQ申请页面资料提交处理
            private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
            {
                if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                {
                    for (int i = 1; i < 1; i++)
                    {
                        if (webBrowser1.ReadyState== WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                        {
                            break;
                        }
                    }
                }

                try
                {
                    if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                    {
                        webBrowser1.Document.GetElementById("nick").SetAttribute("value", "minot");
                        webBrowser1.Document.GetElementById("password").SetAttribute("value", "minotmin");
                        webBrowser1.Document.GetElementById("password").Focus();
                        webBrowser1.Document.GetElementById("password_again").SetAttribute("value", "minotmin");
                        webBrowser1.Document.GetElementById("year_value").Focus();
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{DOWN}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{DOWN}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{ENTER}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        webBrowser1.Document.GetElementById("month_value").Focus();
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{DOWN}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{DOWN}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{ENTER}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        webBrowser1.Document.GetElementById("day_value").Focus();
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{DOWN}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{DOWN}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                        SendKeys.SendWait("{ENTER}");
                        if (webBrowser1.ReadyState != WebBrowserReadyState.Complete && webBrowser1.IsBusy == true)
                        {
                            for (int i = 1; i < 1; i++)
                            {
                                if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                                {
                                    break;
                                }
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            #endregion
            #region 窗体加载
            private void Form1_Load(object sender, EventArgs e)
            {
                this.webBrowser1.Url=new Uri("http://zc.qq.com/chs/index.html");
            }
            #endregion
            #region 注册按钮,提交注册
            private void btnRegister_Click(object sender, EventArgs e)
            {
                register();
            }
            public void register()
            {

                System.Int32 dwFlag = new int();
                do{
                    string register = webBrowser1.Document.Body.OuterHtml;
                    if (register.Contains("我已阅读并同意相关服务条款"))
                    {
                        webBrowser1.Document.GetElementById("submit").InvokeMember("click");
                    }
                    do
                    {
                        if (webBrowser1.ReadyState == WebBrowserReadyState.Complete && webBrowser1.IsBusy == false)
                        {
                            string htmlcode = webBrowser1.Document.Body.OuterHtml;
                            if (htmlcode.Contains("申请成功"))
                            {
                                this.qqNumber.Text = this.qqNumber.Text + "\n" + "QQ号:" + webBrowser1.Document.GetElementById("newUin").InnerText
                                + "注册时间" + DateTime.Now.ToString();//显示QQ号
                                saveFile();//保存到本地
                            }
                            else
                            {
                               // ADSLAgain();
                                MessageBox.Show("重新连接!");
                            }
                            break;
                        }
                    } while (2 > 1);
                } while ((dwFlag & INTERNET_CONNECTION_MODEM) != 0);
                //this.webBrowser1.Url = new Uri("http://zc.qq.com/chs/index.html");
            }
            #endregion
            #region 只在当前窗口中打开,禁止ie打开
            private void webBrowser1_NewWindow(object sender, CancelEventArgs e)
            {
                this.webBrowser1.Url = new Uri(((WebBrowser)sender).StatusText);
                e.Cancel = true;
            }
            #endregion
            #region QQ号的保存操作
            private void btnSave_Click(object sender, EventArgs e)
            {
                saveFile();
            }
            public void saveFile()
            {
                string filename = Application.StartupPath + @"\qq.txt";
                try
                {

                    if (!File.Exists(filename))//判断文件是否存在
                    {
                        FileStream fs1 = new FileStream(filename, FileMode.Create, FileAccess.Write);//创建写入文件
                        fs1.Close();
                    }
                    else
                    {
                        ;
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                try
                {
                    StreamWriter writer = new StreamWriter(filename, true);
                    //writer.WriteLine(qqNumber.Text + "\n");
                    writer.WriteLine("\n" + "QQ号:" + webBrowser1.Document.GetElementById("newUin").InnerText
                    + "注册时间:" + DateTime.Now.ToString() + "\n");
                    writer.Close();
                    MessageBox.Show("保存成功!");
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            #endregion
            #region 宽带重新连接
            private void btnADSLConnectAgain_Click(object sender, EventArgs e)     
            {
                ADSLAgain();
               // register();
            }
            #endregion
            public void ADSLAgain()
            {
                ADSLHelper adsl = new ADSLHelper();
                adsl.Disconnect("宽带连接");
                Thread.Sleep(3000);//停顿三秒
                adsl.Connect(this.txtADSLName.Text, this.txtADSLNumber.Text, this.txtADSLPwd.Text);
                //MessageBox.Show("宽带连接成功!");
            }//宽带重新连接
            private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                this.Dispose();
                Application.Exit();
            }

            private void 最大化ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                this.WindowState = FormWindowState.Normal;
                this.notifyIcon1.Visible = true;
                this.Visible = true;
            }

            private void notifyIcon1_Click(object sender, EventArgs e)
            {
                this.WindowState = FormWindowState.Normal;
                this.notifyIcon1.Visible = true;
                this.Visible = true;
            }

            private void 官网ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                System.Diagnostics.Process myProcess = new System.Diagnostics.Process();
                myProcess.StartInfo.FileName = "iexplore.exe";
                myProcess.StartInfo.Arguments = " http://www.cn244.com/";
                myProcess.Start();
            }

            private void Form1_FormClosing(object sender, FormClosingEventArgs e)
            {
                if (MessageBox.Show("确实要退出本系统吗?", "系统提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
                {
                    this.Dispose();
                    Application.Exit();
                    e.Cancel = false;
                }
                else
                {
                    e.Cancel = true;//阻止退出系统
                }
            }

            private void btnRefresh_Click(object sender, EventArgs e)
            {
                this.webBrowser1.Url = new Uri("http://zc.qq.com/chs/index.html");
            }//刷新网页

            private void btnDisplay_Click(object sender, EventArgs e)
            {
      this.qqNumber.Text = this.qqNumber.Text + "\n" + "QQ号:" + webBrowser1.Document.GetElementById("newUin").InnerText
      + "注册时间" + DateTime.Now.ToString();
            }
            #region 判断网络连接状态
          
            private void judgeADSL_Click(object sender, EventArgs e)
            {
                System.Int32 dwFlag = new int(); 
                if(!InternetGetConnectedState(ref dwFlag,   0)) 
                MessageBox.Show("未联网");
                if ((dwFlag & INTERNET_CONNECTION_MODEM) != 0)
                    MessageBox.Show("采用调治解调器上网。"); 
                if((dwFlag   &   INTERNET_CONNECTION_LAN)!=0) 
                MessageBox.Show("采用网卡上网。");
            }
            #endregion
           
        }
    }

  • 相关阅读:
    原来生成函数这么简单
    p1919 A*B Problem升级版
    线性基初步
    高斯消元详解
    FFT模板
    BSGS(大小步)算法
    p1516&poj1061&bzoj1477 青蛙的约会
    p1082 同余方程
    qboimathtest1 t1 魔法串
    qboimathtest1 t2 配对
  • 原文地址:https://www.cnblogs.com/minotmin/p/2699394.html
Copyright © 2011-2022 走看看