首先我会选择一个可执行文件的路径,我还能设置一个初始账号,然后点击确定按钮  就会开始运行那个应用程序,然后实现在账号框中自动输入我设置的账号,在密码框中输入密码,然后点击确定,如果没有弹出异常对话框则算是成功,如果弹出异常对话框 ,则单击弹出的错误对话框,继续用我的代码输入下一个账号 和密码.觉得这个挺简单的,但我是一个新手 , 不知道做这个的思路,请各个高手给个详细的思路 ,提拔一下 ,谢谢了 

解决方案 »

  1.   

    Stream读取文件,然后将对应的UserName和Password赋值到TextBox
      

  2.   

    从文件读 用户名和密码  成功后  后台给两个textbox赋上值  这样?
      

  3.   

    运行的程序不是我的程序,就是一个,拿QQ做比如吧,首先我这里也没有保存账号和密码的文件,拿QQ举例吧,我在运行框里选中QQ的路径  然后设置一个初始账号,当我点击确定的时候  就会马上运行出QQ登陆框,然后自动输入我的账号和密码 并确定登陆,如果出现错误,就关掉错误消息框,继续输入下一个账号和密码,就这样 ,我想是不是想取到那个程序窗口的什么啊 , 然后取到他的 账号框和密码框 ,才能确定是往这个程序的账号框和密码框中输入 ,不知我说的清不清楚 ,谢谢
      

  4.   

    恩 就是windows下的一个应用程序  可惜我不能上图 ,这个要网上的链接 ,反正就跟QQ跟我说的那样的 
      

  5.   

    明白了,你这个有点像是盗号用滴!
    用线程做+Invoke就可以实现!
      

  6.   

    呵呵  就是啊  算是盗号的吧  新手就是这样啊  +Invoke是什么啊  我简直不知道  有没人说点详细点的步骤啊 , 我们这那个账号和密码是一样的  所以我才想出这样的  因为不想手动去一个一个输入啊 呵呵  谢谢各位大侠了   
      

  7.   

    Thread tr=new Thread(ThreadConn);  
    tr.Start();   //启动线程public void ThreadConn() //你的线程
    {
       //在这个里面从数据库里面取出你的帐号和密码,例得到表datatable
       foreach (DataRow dtRow in datatable.Rows)
      {
          //ThreadEndCallback是你线程的回调方法值用的      
          this.Invoke(new Action<DataRow>(ThreadEndCallback),dtRow);   
       }
      }//ThreadEndCallback方法
    public void ThreadEndCallback(DataRow dtrow)
    {
        textbox1.text=dtrow[0].Tostring();  //取出行中的第一列的帐号
        textbox2.text=dtrow[1].Tostring();  //取出行中的第二列的密码
         //下面就是你的登陆过程了
         //这过程中,可能你要用Suspend把线程挂起来,线程就暂停运行,然后你就做登陆操作
         //登陆操作完成后用Resume方法,在启动线程
    }
      

  8.   

    看了楼上的回答,我看我是做不出来了 ,我没有账号和密码表,因为我想的是在开始的时候设置一个初始账号,然后密码和账号是一样的,然后从这个账号开始递加,这个号不行,然后加一,就这样,而且这个登陆程序不是我写的啊 ,我能用textbox1这样来输入进去吗,那是电信的登陆啊.我该怎么办哦
      

  9.   

    给个好贴你看看
    http://topic.csdn.net/u/20080611/16/6A4FD985-BB59-40CB-97B0-E383B6158CA6.html  
      

  10.   

    用SendMessage!怎么用自己去查查资料,这个我也正在研究!
      

  11.   

    呵呵 用stream流 读取你的文件 比如.txt .^^^^^^^ 等等!   然后比对自动赋给你的textbox ! 
      在读取数据库文件!   就ok! 了! 
      

  12.   

    Wow魔兽世界自动登陆器,lz可以参考。
    http://blog.csdn.net/Firestone2003/archive/2006/06/24/829316.aspx上次别人也有要我做这个,后来没时间,没做。
    第一种思路:当你输入账号和密码并点击登录后,在一定时间内循环查询指定程序的消息窗口,可以实现。
    //获取应用程序名称,可以得到指定程序的正确窗口和错误窗口的名字,是弹出窗口的那种,像QQ游戏账号信息输入错误,弹出的那种
            public List<string> GetRunApplicationList(Form appForm)
            {
                List<string> appString = new List<string>();
                try
                {
                    int handle = (int)appForm.Handle;
                    int hwCurr;
                    hwCurr = GetWindow(handle, GW_HWNDFIRST);
                    while (hwCurr > 0)
                    {
                        int isTask = (WS_VISIBLE | WS_BORDER);
                        int lngStyle = GetWindowLongA(hwCurr, GWL_STYLE);
                        bool taskWindow = ((lngStyle & isTask) == isTask);
                        if (taskWindow)
                        {
                            int length = GetWindowTextLength(new IntPtr(hwCurr));
                            StringBuilder sb = new StringBuilder(2 * length + 1);
                            GetWindowText(hwCurr, sb, sb.Capacity);
                            string strTitle = sb.ToString();
                            if (!string.IsNullOrEmpty(strTitle))
                            {
                                appString.Add(strTitle);
                            }
                        }
                        hwCurr = GetWindow(hwCurr, GW_HWNDNEXT);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("读取应用程序信息时出错:" + ex.Message);
                }
                return appString;
            }调用的时候,获取所有任务管理器的应用程序的所有名称,包括看不到的消息窗口。
     List<string> taskWindow = GetRunApplicationList(this);
    再循环判断是否出现指定程序的窗口是否包含在taskWindow 中。还有一种思路是:当输入账号和密码并点击登录按钮后,
    程序先睡眠自己指定的多少秒,然后//获取指定句柄的相对屏幕的位置和矩形区域
    [DllImport("user32")]
    public static extern int GetWindowRect(int hwnd, ref Rectangle lpRect);[DllImport("user32.dll")]
    private static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
    IntPtr myIntPtr = FindWindow(null, "QQ游戏");Rectangle rc = new Rectangle();
    GetWindowRect(myIntPtr.ToInt32(), ref rc);以后判断窗口大小是否变大,但这种方法睡眠时间掌握不好。lz如果有好的方法别忘了给我参考参考啊。
      

  13.   

     我理解你的意思了 你是不是要一个登陆qq的软件 你要输入很多qq号码 然后选择某个或多个qq进行启动 然后她自己就帮你挂上qq了 这样吗?你有邮箱吗?我这刚好有这样一个程序 源码的 需要的话留言 谢谢