Example #1
0
        private void FormAdmin_Load(object sender, EventArgs e)
        {
            VKAPI       vk     = new VKAPI(Program.accessToken);
            XmlDocument xmldoc = vk.GetUserInfo(Program.userID, "photo_50");

            this.pictureBoxAvatar.Image = Image.FromStream(WebRequest.Create(xmldoc.SelectSingleNode("response/user/photo_50").InnerText.ToString()).GetResponse().GetResponseStream());
        }
Example #2
0
        public void tick(object Params)
        {
            VKAPI       vk      = new VKAPI(Program.accessToken);
            XmlDocument posting = vk.WallPost(this.textBox1.Text, this.textBoxText.Text, this.textBoxAttach.Text);

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

                    var form = ((FormCapcha)((object[])((Params1)[0]))[0]);
                    form.Tag = "stop";

                    while (form.Tag.ToString() == "stop")     //ждем пока пользователь не нажмет кнопку
                    {
                        form.Invoke(new Action(() =>
                        {
                            form.Show();
                            form.label1.Text = ((object[])(Params1))[1].ToString();     //передаем в форму переменную
                        }));
                    }

                    XmlDocument postingCapcha = vk.WallPost(this.textBox1.Text, this.textBoxText.Text, this.textBoxAttach.Text, posting.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                    //XmlDocument inviteCapcha = vk.InviteUserToGroup(Convert.ToInt32(this.textBoxEventID.Text), Convert.ToInt32(node.InnerText), invite.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                }
            }
        }
Example #3
0
        private async void loadList(string name)  //Подгрузка списка групп
        {
            this.listBoxGroups.Items.Clear();
            StreamReader grouplistreader = new StreamReader(directory + @"\files\\" + name);  //grouplist.txt
            string       line;

            while ((line = grouplistreader.ReadLine()) != null)
            {
                if (IsLetterContains(line))
                {
                    VKAPI vk = new VKAPI(Program.accessToken);
                    line = vk.GetGroupID(line);
                    await Task.Delay(300);
                }
                if (!(line.Contains('-')))
                {
                    this.listBoxGroups.Items.Add("-" + line);
                }
                else
                {
                    this.listBoxGroups.Items.Add(line);
                }
            }
            grouplistreader.Close();
            this.label1.Text = this.listBoxGroups.Items.Count.ToString();
        }
Example #4
0
        public void ticks_repost(object Params)
        {
            VKAPI vk = new VKAPI(Program.accessToken);

            for (int i = 0; i < this.listBoxGroups.Items.Count; i++)
            {
                Thread.Sleep(800);

                XmlDocument posting = vk.WallRepost(this.textBoxRepost.Text, this.textBoxText.Text, this.listBoxGroups.Items[i].ToString().Replace('-', ' '), "", "", "");
                foreach (XmlNode node1 in posting.SelectNodes("/error/error_code"))
                {
                    if (node1.InnerText == "14")
                    {
                        object[] Params1 = { Params, posting.SelectSingleNode("/error/captcha_img").InnerText.ToString() };

                        var form = ((FormCapcha)((object[])((Params1)[0]))[0]);
                        form.Tag = "stop";

                        while (form.Tag.ToString() == "stop") //ждем пока пользователь не нажмет кнопку
                        {
                            form.Invoke(new Action(() =>
                            {
                                form.Show();
                                form.label1.Text = ((object[])(Params1))[1].ToString(); //передаем в форму переменную
                            }));
                        }
                        //XmlDocument posting = vk.WallRepost(this.textBox2.Text, this.textBoxText.Text, this.listBoxGroups.Items[i].ToString(), "", "", "");

                        XmlDocument postingCapcha = vk.WallRepost(this.textBoxRepost.Text, this.textBoxText.Text, this.listBoxGroups.Items[i].ToString(), "", posting.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                        //XmlDocument inviteCapcha = vk.InviteUserToGroup(Convert.ToInt32(this.textBoxEventID.Text), Convert.ToInt32(node.InnerText), invite.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                    }
                }
            }
        }
Example #5
0
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.ToString().IndexOf("access_token") != -1)
            {
                Regex myReg = new Regex(@"(?<name>[\w\d\x5f]+)=(?<value>[^\x26\s]+)", RegexOptions.IgnoreCase | RegexOptions.Singleline);
                foreach (Match m in myReg.Matches(e.Url.ToString()))
                {
                    if (m.Groups["name"].Value == "access_token")
                    {
                        Program.accessToken = m.Groups["value"].Value;
                    }
                    else if (m.Groups["name"].Value == "user_id")
                    {
                        Program.userID = Convert.ToInt32(m.Groups["value"].Value);
                    }
                }

                VKAPI       vk       = new VKAPI(Program.accessToken);
                XmlDocument UserInfo = vk.GetUserInfo(Program.userID, "first_name,last_name");
                Program.userFullName = UserInfo.SelectSingleNode("response/user/first_name").InnerText + " " + UserInfo.SelectSingleNode("response/user/last_name").InnerText;

                //MessageBox.Show(String.Format("Ключ доступа: {0}\nUserID: {1}", Program.accessToken, Program.userID));


                Program.applicationContext.MainForm = new FormAdmin();
                Program.applicationContext.MainForm.Show();
            }
        }
Example #6
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";
        }
Example #7
0
        private void button1_Click_1(object sender, EventArgs e)
        {
            this.dataGridView1.Cursor = System.Windows.Forms.Cursors.WaitCursor;
            this.dataGridView1.Rows.Clear();
            VKAPI    vk   = new VKAPI(Program.accessToken);
            DateTime date = new DateTime(1970, 1, 1, 3, 1, 1);

            XmlDocument MessagesOut = vk.GetMessages("0");

            foreach (XmlNode node in MessagesOut.SelectNodes("response/message"))
            {
                XmlDocument UserInfo = vk.GetUserInfo(Convert.ToInt32(node.SelectSingleNode("uid").InnerText), "first_name,last_name");
                System.Threading.Thread.Sleep(400);
                this.dataGridView1.Rows.Add(date.AddSeconds(Convert.ToInt32(node.SelectSingleNode("date").InnerText)), UserInfo.SelectSingleNode("response/user/first_name").InnerText + " " + UserInfo.SelectSingleNode("response/user/last_name").InnerText, node.SelectSingleNode("body").InnerText.ToString(), node.SelectSingleNode("read_state").InnerText.ToString() == "0" ? "не прочитано":"прочитано");
            }
            XmlDocument MessagesIn = vk.GetMessages("1");

            foreach (XmlNode node in MessagesIn.SelectNodes("response/message"))
            {
                XmlDocument UserInfo = vk.GetUserInfo(Convert.ToInt32(node.SelectSingleNode("uid").InnerText), "first_name,last_name");
                System.Threading.Thread.Sleep(400);
                this.dataGridView1.Rows.Add(date.AddSeconds(Convert.ToInt32(node.SelectSingleNode("date").InnerText)), Program.userFullName + " to " + UserInfo.SelectSingleNode("response/user/first_name").InnerText + " " + UserInfo.SelectSingleNode("response/user/last_name").InnerText, node.SelectSingleNode("body").InnerText.ToString(), node.SelectSingleNode("read_state").InnerText.ToString() == "0" ? "не прочитано" : "прочитано");
            }


            DataGridViewColumn sortColumn = dataGridView1.Columns[0];
            ListSortDirection  direction  = ListSortDirection.Descending;

            this.dataGridView1.Sort(sortColumn, direction);
            this.dataGridView1.Columns[0].SortMode = DataGridViewColumnSortMode.Automatic;
            this.dataGridView1.Cursor = System.Windows.Forms.Cursors.Default;
        }
Example #8
0
        private void FormWallPost_Load(object sender, EventArgs e)
        {
            //D:\Projects\TempApp\GroupAdmin\GroupAdmin\files
            loadList("Grouplist.txt");

            VKAPI       vk     = new VKAPI(Program.accessToken);
            XmlDocument xmldoc = vk.GetUserInfo(Program.userID, "photo_50");

            this.pictureBoxAvatar.Image = Image.FromStream(WebRequest.Create(xmldoc.SelectSingleNode("response/user/photo_50").InnerText.ToString()).GetResponse().GetResponseStream());
        }
Example #9
0
        public void ticks(object Params)
        {
            VKAPI vk = new VKAPI(Program.accessToken);

            for (int i = 0 + Convert.ToInt16(this.textBoxOffset.Text); i < this.listBoxGroups.Items.Count; i++)
            {
                Thread.Sleep(700);
                XmlDocument posting = vk.WallPost(this.listBoxGroups.Items[i].ToString(), this.textBoxText.Text, this.textBoxAttach.Text);

                //var mform = ((FormWallPost)((object[])((Params1)[0]))[0]);
                //this.listBoxGroups.SetSelected(i,true);


                foreach (XmlNode node1 in posting.SelectNodes("/error/error_code"))
                {
                    if (node1.InnerText == "14")
                    {
                        //помечаем группы которые требуют капчу
                        object[] grnum  = { i, this };
                        var      formwp = ((FormWallPost)((object[])(grnum))[1]);
                        formwp.Invoke(new Action(() =>
                        {
                            formwp.listBoxGroups.SetSelected(i, true);
                        }));


                        object[] Params1 = { Params, posting.SelectSingleNode("/error/captcha_img").InnerText.ToString() };

                        var form = ((FormCapcha)((object[])((Params1)[0]))[0]);
                        form.Tag = "stop";

                        while (form.Tag.ToString() == "stop") //ждем пока пользователь не нажмет кнопку
                        {
                            form.Invoke(new Action(() =>
                            {
                                form.Show();
                                form.label1.Text = ((object[])(Params1))[1].ToString(); //передаем в форму переменную
                            }));
                        }
                        XmlDocument postingCapcha = vk.WallPost(this.listBoxGroups.Items[i].ToString(), this.textBoxText.Text, this.textBoxAttach.Text, posting.SelectSingleNode("/error/captcha_sid").InnerText.ToString(), form.Tag.ToString());
                        //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");
        }
Example #10
0
        private void button2_Click(object sender, EventArgs e)
        {
            if (IsLetterContains(this.textBox1.Text))
            {
                VKAPI vk = new VKAPI(Program.accessToken);
                this.textBox1.Text = '-' + vk.GetGroupID(this.textBox1.Text);
            }
            else if (!(this.textBox1.Text.Contains('-')))
            {
                this.textBox1.Text = '-' + this.textBox1.Text;
            }

            FormCapcha CP = new FormCapcha();

            CP.Show();


            object[] ParArr = { CP };
            Thread   t      = new Thread(tick);

            t.Start(ParArr);
        }
Example #11
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");    // это то, что выполняется в цикле
        }
Example #12
0
        private void buttonSendMsg_Click(object sender, EventArgs e)
        {
            VKAPI vk = new VKAPI(Program.accessToken);

            vk.SendMessage(this.textBoxSendUserID.Text, this.textBoxSendMsg.Text, this.textBoxSendMsgTitle.Text);
        }
Example #13
0
        private void button1_Click(object sender, EventArgs e)
        {
            VKAPI vk = new VKAPI(Program.accessToken);

            vk.SetOffline();
        }