Ejemplo n.º 1
0
        private void button2_Click(object sender, EventArgs e)
        {
            VKAPI       vk         = new VKAPI(Program.accessToken);
            XmlDocument FriendList = vk.GetAllFriends();

            ArrayList FrLst = new ArrayList();
            //list[] Mylist = new list[150];
            //Listic Mylist = new Listic();
            int i = 0;

            foreach (XmlNode node in FriendList.SelectNodes("response/uid"))
            {
                i++;
                XmlDocument UserInfo = vk.GetUserInfo(Convert.ToInt32(node.InnerText), "first_name,last_name");
                FrLst.Add(new Listic(node.InnerText, UserInfo.SelectSingleNode("response/user/first_name").InnerText + " " + UserInfo.SelectSingleNode("response/user/last_name").InnerText));
                // Mylist.fio = UserInfo.SelectSingleNode("response/user/first_name").InnerText + " " + UserInfo.SelectSingleNode("response/user/last_name").InnerText;
                //FrLst.Add(new Person() { Uid = node.InnerText, FIO = UserInfo.SelectSingleNode("response/user/first_name").InnerText + " " + UserInfo.SelectSingleNode("response/user/last_name").InnerText });
                System.Threading.Thread.Sleep(400);
                //FrLst.Add(Mylist);
            }
            this.comboBox1.DataSource = FrLst;
            System.Threading.Thread.Sleep(400);
            //for (i = 0; i < 5; i++ )
            this.comboBox1.DisplayMember = "uid";
            this.comboBox1.ValueMember   = "fio";
        }
Ejemplo n.º 2
0
        public void ticks(object Params)
        {
            VKAPI  vk = new VKAPI(Program.accessToken);
            string w;

            XmlDocument friendList;

            if ((((object[])(Params))[1].ToString() == "gr") | ((object[])(Params))[1].ToString() == "gr_mes")
            {
                friendList = vk.GetGroupMembers(this.textBoxGroupID.Text, this.textBox_offset.Text);
                w          = "response/users/uid";
            }
            else if (((object[])(Params))[1].ToString() == "ls_mes")
            {
                //TextReader txt = @"D:\Projects\TempApp\GroupAdmin\GroupAdmin\files\friendsAdd.txt";
                friendList = new XmlDocument();
                friendList.Load(directory + @"\files\friendsAdd.xml");
                w = "response/uid";
            }
            else if (((object[])(Params))[1].ToString() == "add_fr")
            {
                //TextReader txt = @"D:\Projects\TempApp\GroupAdmin\GroupAdmin\files\friendsAdd.txt";
                friendList = new XmlDocument();
                friendList = vk.GetRequests();
                w          = "response/uid";
            }
            else
            {
                // я чет запутался что здесь должно быть, поэтому закоментил
                friendList = vk.GetAllFriends();
                w          = "response/items/user_id";
            }



            foreach (XmlNode node  in friendList.SelectNodes(w)) // "/users"
            {
                Thread.Sleep(300);

                cntr_users += 1;

                StreamWriter strmwrtr = new StreamWriter(directory + @"\files\usercntr.txt");
                strmwrtr.Write(cntr_users.ToString());
                strmwrtr.Close();
                XmlDocument invite;
                if (((object[])(Params))[1].ToString() == "gr_mes" | ((object[])(Params))[1].ToString() == "ls_mes")
                {
                    invite = vk.SendMessage(node.InnerText, this.textBoxGroupMess.Text, "");
                }
                else if (((object[])(Params))[1].ToString() == "add_fr")
                {
                    invite = vk.AddFriend(node.InnerText);
                    invite = vk.SendMessage(node.InnerText, @"Привет. Ты добавился просто для количества? 
                                                                Могу помочь с накруткой друзей, реальных людей. Дешево и качестванно) 
                                                                Либо могу присылать тебе время от времени людей чтобы ты сам  добавлял их в друзья. Бесплатно)", "");
                }
                else
                {
                    invite = vk.InviteUserToGroup(Convert.ToInt32(this.textBoxEventID.Text), Convert.ToInt32(node.InnerText));
                }
                StreamWriter strmwrtrlog = new StreamWriter(directory + @"\files\log.txt", true);
                if (invite.SelectNodes("/error/error_code").Count != 0)
                {
                    strmwrtrlog.WriteLine(cntr_users.ToString() + " " + node.InnerText + " " + invite.SelectSingleNode("/error/error_code").InnerText.ToString());    //+ node1.InnerText
                }
                else
                {
                    strmwrtrlog.WriteLine(cntr_users.ToString() + " " + node.InnerText + " OK");     //+ node1.InnerText
                }
                strmwrtrlog.Close();

                foreach (XmlNode node1  in invite.SelectNodes("/error/error_code"))
                {
                    if (node1.InnerText == "14")
                    {
                        object[] Params1 = { Params, invite.SelectSingleNode("/error/captcha_img").InnerText.ToString() };

                        var form = ((FormCapcha)((object[])((Params1)[0]))[0]);
                        form.Tag = "stop";
                        //Если возникает данная ошибка, то в сообщении об ошибке передаются также следующие параметры:
                        //captcha_sid - идентификатор captcha
                        //captcha_img - ссылка на изображение, которое нужно показать пользователю, чтобы он ввел текст с этого изображения.

                        //В этом случае следует запросить пользователя ввести текст с изображения captcha_img и повторить запрос, добавив в него параметры:
                        //captcha_sid - полученный идентификатор
                        //captcha_key - текст, который ввел пользователь

                        while (form.Tag.ToString() == "stop") //ждем пока пользователь не нажмет кнопку
                        {
                            form.Invoke(new Action(() =>
                            {
                                form.Show();
                                form.label1.Text = ((object[])(Params1))[1].ToString(); //передаем в форму переменную
                            }));
                        }
                        //MessageBox.Show(form.Tag.ToString()); // получаем введенное значение
                        //invite.SelectSingleNode("/error/captcha_sid").InnerText.ToString();
                        if (((object[])(Params))[1].ToString() == "gr_mes" | ((object[])(Params))[1].ToString() == "ls_mes")
                        {
                            XmlDocument inviteCapcha = vk.SendMessage(node.InnerText, this.textBoxGroupMess.Text, "", invite.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                        }
                        else
                        {
                            XmlDocument inviteCapcha = vk.InviteUserToGroup(Convert.ToInt32(this.textBoxEventID.Text), Convert.ToInt32(node.InnerText), invite.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                        }
                    }
                }
            }

            MessageBox.Show("Ready");    // это то, что выполняется в цикле
        }