Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

C# авторизация в контакте.

-

Вопросы и ответы, обсуждения

- Ваши вопросы по C# только в данном разделе

Ответ
 
Опции темы
Старый 26.07.2011, 19:48   #1
 Разведчик
Аватар для maksy
 
maksy вызывает надежду
Регистрация: 26.07.2010
Сообщений: 2
Популярность: -28
Сказал(а) спасибо: 11
Поблагодарили 4 раз(а) в 4 сообщениях
 
Question C# авторизация в контакте.

Помогите написать код для авторизации в контакте и добавления сообшения на стену.
Авторизация:
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;

namespace VK_Auth
{
    public partial class Form1 : Form
    {
        string sid;
        Cookie cook;
        public Form1()
        {
            InitializeComponent();
            f2 = new Form2();
            label1.Text = "Email:";
            label1.Font = new Font(label1.Font.FontFamily, 12, FontStyle.Bold);
            label2.Text = "Password:";
            label2.Font = new Font(label2.Font.FontFamily,12, FontStyle.Bold);
            button1.Text = "Login";
        }
        Form2 f2;
        private void button1_Click(object sender, EventArgs e)
        {
            //создаем запрос
            HttpWebRequest wrGETURL = (HttpWebRequest)System.Net.WebRequest.Create("http://vkontakte.ru/login.php?m=1&email=" + textBox1.Text + "&pass=" + textBox2.Text);
            //выставляем значения Headers
            //Запрещаем редирект
            wrGETURL.AllowAutoRedirect = false;
            //Выставляем таймаут
            wrGETURL.Timeout = 100000;
            //получаем Headers,пришедшие в ответе
            string headers = wrGETURL.GetResponse().Headers.ToString();
            //получаем весь ответ
            HttpWebResponse myHttpWebResponse = (HttpWebResponse)wrGETURL.GetResponse();
            //записываем ответ в поток
            StreamReader myStreamReadermy = new StreamReader(myHttpWebResponse.GetResponseStream(), Encoding.GetEncoding(1251));
            //запихиваем ответ в строку
            string page = myStreamReadermy.ReadToEnd();
            //это регулярное выражение,которое выдирает из переменной headers(а ее мы получили выше) значение sid
            Regex sidregex = new Regex("sid=([a-z0-9]+); exp");
            Match ssid = sidregex.Match(headers);
            sid = ssid.Groups[1].Value;
            //инициализируем куки
            cook = new Cookie("remixsid", sid);
            //тоже самое,куки пишем
            cook.Domain = "vkontakte.ru";
            //проверяем,получили ли мы нужную переменную в куки
            if (String.IsNullOrEmpty(sid))
                MessageBox.Show("Чето не получается авторизироваться");
            else
                f2.Show();
        }
    }
}
А вот добавление сообщения не могу написать,на форме 2 есть кнопка и поле для ввода при нажатии на кнопку должно отправляться сообщение: пример пользователю id которого написан в поле для ввода.
Тут также надо использовать cookie как их использовать в программе описано здесь.
Помогите пожалуйста, просто я в post запросах не разбираюсь
P.S не надо мне писать как да что делать просто напишите код и если можно коменты.
  Ответить с цитированием
Старый 26.07.2011, 23:40   #2
Читер-спонсор
 Рыцарь-защитник
Аватар для Hermein
 
Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(
Регистрация: 14.01.2011
Сообщений: 633
Популярность: 28087
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 90
Поблагодарили 717 раз(а) в 374 сообщениях
Отправить сообщение для Hermein с помощью ICQ Отправить сообщение для Hermein с помощью Skype™
 
По умолчанию Re: C# авторизация в контакте.

Цитата:
Сообщение от maksyПосмотреть сообщение
Помогите написать код для авторизации в контакте и добавления сообшения на стену.
Авторизация:
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;

namespace VK_Auth
{
    public partial class Form1 : Form
    {
        string sid;
        Cookie cook;
        public Form1()
        {
            InitializeComponent();
            f2 = new Form2();
            label1.Text = "Email:";
            label1.Font = new Font(label1.Font.FontFamily, 12, FontStyle.Bold);
            label2.Text = "Password:";
            label2.Font = new Font(label2.Font.FontFamily,12, FontStyle.Bold);
            button1.Text = "Login";
        }
        Form2 f2;
        private void button1_Click(object sender, EventArgs e)
        {
            //создаем запрос
            HttpWebRequest wrGETURL = (HttpWebRequest)System.Net.WebRequest.Create("http://vkontakte.ru/login.php?m=1&email=" + textBox1.Text + "&pass=" + textBox2.Text);
            //выставляем значения Headers
            //Запрещаем редирект
            wrGETURL.AllowAutoRedirect = false;
            //Выставляем таймаут
            wrGETURL.Timeout = 100000;
            //получаем Headers,пришедшие в ответе
            string headers = wrGETURL.GetResponse().Headers.ToString();
            //получаем весь ответ
            HttpWebResponse myHttpWebResponse = (HttpWebResponse)wrGETURL.GetResponse();
            //записываем ответ в поток
            StreamReader myStreamReadermy = new StreamReader(myHttpWebResponse.GetResponseStream(), Encoding.GetEncoding(1251));
            //запихиваем ответ в строку
            string page = myStreamReadermy.ReadToEnd();
            //это регулярное выражение,которое выдирает из переменной headers(а ее мы получили выше) значение sid
            Regex sidregex = new Regex("sid=([a-z0-9]+); exp");
            Match ssid = sidregex.Match(headers);
            sid = ssid.Groups[1].Value;
            //инициализируем куки
            cook = new Cookie("remixsid", sid);
            //тоже самое,куки пишем
            cook.Domain = "vkontakte.ru";
            //проверяем,получили ли мы нужную переменную в куки
            if (String.IsNullOrEmpty(sid))
                MessageBox.Show("Чето не получается авторизироваться");
            else
                f2.Show();
        }
    }
}
А вот добавление сообщения не могу написать,на форме 2 есть кнопка и поле для ввода при нажатии на кнопку должно отправляться сообщение: пример пользователю id которого написан в поле для ввода.
Тут также надо использовать cookie как их использовать в программе описано здесь.
Помогите пожалуйста, просто я в post запросах не разбираюсь
P.S не надо мне писать как да что делать просто напишите код и если можно коменты.

ну:
во-первых это не ты написал, а взял готовый код Черино.
во-вторых учи основы
в-третьих ты вообще не разбираешься, а не в пост-запросах

Последний раз редактировалось Hermein; 26.07.2011 в 23:43.
  Ответить с цитированием
Пользователь сказал cпасибо:
maksy (28.07.2011)
Старый 27.07.2011, 16:19   #3
 Разведчик
Аватар для maksy
 
maksy вызывает надежду
Регистрация: 26.07.2010
Сообщений: 2
Популярность: -28
Сказал(а) спасибо: 11
Поблагодарили 4 раз(а) в 4 сообщениях
 
По умолчанию Re: C# авторизация в контакте.

Цитата:
Сообщение от HermeinПосмотреть сообщение
ну:
во-первых это не ты написал, а взял готовый код Черино.
во-вторых учи основы
в-третьих ты вообще не разбираешься, а не в пост-запросах

Знаете что:
1. Я не писал что код мой,я его взял отсюда.
2. Я знаю основы
3. Я хорошо знаю GET запросы и разбираюсь в C#
4. И не надо тут хамить.

Последний раз редактировалось maksy; 27.07.2011 в 16:21.
  Ответить с цитированием
Старый 27.07.2011, 17:35   #4
 Разведчик
Аватар для maksy
 
maksy вызывает надежду
Регистрация: 26.07.2010
Сообщений: 2
Популярность: -28
Сказал(а) спасибо: 11
Поблагодарили 4 раз(а) в 4 сообщениях
 
По умолчанию Re: C# авторизация в контакте.

Цитата:
Сообщение от StabiliZatorПосмотреть сообщение
Дай ссылку попробую сделать

[Ссылки могут видеть только зарегистрированные пользователи. ] но только я тут сам переделывал,просто он auth_key вытаскивает из игр.




P.S походу я неправильно сформулировал тему,мне нужно вытащить переменные из 1 формы в другую)

Последний раз редактировалось maksy; 27.07.2011 в 17:46.
  Ответить с цитированием
Старый 27.07.2011, 18:00   #5
 Пехотинец
Аватар для StabiliZator
 
StabiliZator неизвестен в этих краяхStabiliZator неизвестен в этих краях
Регистрация: 05.10.2010
Сообщений: 67
Популярность: -129
Сказал(а) спасибо: 29
Поблагодарили 19 раз(а) в 12 сообщениях
Отправить сообщение для StabiliZator с помощью ICQ Отправить сообщение для StabiliZator с помощью Skype™
 
По умолчанию Re: C# авторизация в контакте.

напиши мне в скайп StabiliZator9
я те исходник кину там посмотришь как делать!
  Ответить с цитированием
Пользователь сказал cпасибо:
maksy (28.07.2011)
Старый 28.07.2011, 01:16   #6
Читер-спонсор
 Рыцарь-защитник
Аватар для Hermein
 
Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(
Регистрация: 14.01.2011
Сообщений: 633
Популярность: 28087
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 90
Поблагодарили 717 раз(а) в 374 сообщениях
Отправить сообщение для Hermein с помощью ICQ Отправить сообщение для Hermein с помощью Skype™
 
По умолчанию Re: C# авторизация в контакте.

Цитата:
Сообщение от CherinhoПосмотреть сообщение
я же писал как печеньки во вторую форму передать..

Дак уже много раз писали, но если человек не понимает элементарных основ это бесполезно, и, кстати довольно плохой способ передач печенек(нашел на форуме кучу минусов этого способа) лучше через program.cs передавать

итак в program.cs пишем:
Код:
static class Program
    {public static string ololo = "";
в форм1:

Код:
private void button1_Click(object sender, EventArgs e)
        {
            Program.ololo = "ololotrololo";
            Form2 form2 = new Form2();
            form2.Show();        
        }
в форм2:
Код:
 private void Form2_Load(object sender, EventArgs e)
        {
            MessageBox.Show(Program.ololo);
        }
тоже не очень хороший способ(создание лишних переменных) но все же лучше
Еще существует способ открытия новой формы как дочерней, как следствие из 2 формы имеем доступ ко всем переменным, самый лучший способ, паблик-кода нет, свой приватный, не дам

Последний раз редактировалось Hermein; 28.07.2011 в 01:38.
  Ответить с цитированием
Пользователь сказал cпасибо:
maksy (28.07.2011)
Старый 28.07.2011, 03:02   #7
 Сержант
Аватар для Cherinho
 
Cherinho на правильном путиCherinho на правильном пути
Регистрация: 20.09.2010
Сообщений: 106
Популярность: 172
Золото Zhyk.Ru: 50
Сказал(а) спасибо: 17
Поблагодарили 82 раз(а) в 50 сообщениях
Отправить сообщение для Cherinho с помощью ICQ
 
По умолчанию Re: C# авторизация в контакте.

Hermein, хороший способ)
а вообще ведь способов передачи данных между формами много.то уже на любителя,или в зависимости от поставленной задачи
  Ответить с цитированием
Пользователь сказал cпасибо:
maksy (28.07.2011)
Старый 28.07.2011, 12:57   #8
Читер-спонсор
 Рыцарь-защитник
Аватар для Hermein
 
Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(
Регистрация: 14.01.2011
Сообщений: 633
Популярность: 28087
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 90
Поблагодарили 717 раз(а) в 374 сообщениях
Отправить сообщение для Hermein с помощью ICQ Отправить сообщение для Hermein с помощью Skype™
 
По умолчанию Re: C# авторизация в контакте.

Цитата:
Сообщение от CherinhoПосмотреть сообщение
Hermein, хороший способ)
а вообще ведь способов передачи данных между формами много.то уже на любителя,или в зависимости от поставленной задачи

Пример у тебя 3 формы - при открытии 3 закрываем форм 2 и с 3 форм2 не открыть уже - так как с формы 3 печеньки передавать тоже надо.
Способов много но 1 всего не имеет минусов - это при открытии форм как дочерних, через програм - то что только статический поля, 2 минус-замедляют скорость работы.
  Ответить с цитированием
Пользователь сказал cпасибо:
maksy (28.07.2011)
Старый 28.07.2011, 16:53   #9
 Разведчик
Аватар для maksy
 
maksy вызывает надежду
Регистрация: 26.07.2010
Сообщений: 2
Популярность: -28
Сказал(а) спасибо: 11
Поблагодарили 4 раз(а) в 4 сообщениях
 
По умолчанию Re: C# авторизация в контакте.

Цитата:
Сообщение от HermeinПосмотреть сообщение
Дак уже много раз писали, но если человек не понимает элементарных основ это бесполезно, и, кстати довольно плохой способ передач печенек(нашел на форуме кучу минусов этого способа) лучше через program.cs передавать

итак в program.cs пишем:
Код:
static class Program
    {public static string ololo = "";
в форм1:

Код:
private void button1_Click(object sender, EventArgs e)
        {
            Program.ololo = "ololotrololo";
            Form2 form2 = new Form2();
            form2.Show();        
        }
в форм2:
Код:
 private void Form2_Load(object sender, EventArgs e)
        {
            MessageBox.Show(Program.ololo);
        }
тоже не очень хороший способ(создание лишних переменных) но все же лучше
Еще существует способ открытия новой формы как дочерней, как следствие из 2 формы имеем доступ ко всем переменным, самый лучший способ, паблик-кода нет, свой приватный, не дам

Вот с public'ом я не мог разобраться.

Добавлено через 4 часа 34 минуты
Я нупь...оказалось зря я вас мучал проблема не в кукисах и не в программе,а просто в хеше контакта,всем спасибо))
________________
Все были новичками,но не все были нубами.

Последний раз редактировалось maksy; 28.07.2011 в 21:28. Причина: Добавлено сообщение
  Ответить с цитированием
Ответ

Метки
cookie, vk.com


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Авторизация и использование cookie в контакте на C#. maksy Школа Читера 6 21.07.2011 16:58
Авторизация Доминик Общение разработчиков 1 15.07.2011 00:22
[Помогите!] Авторизация и бот BinKz Вопросы и ответы, обсуждения 7 10.05.2011 18:56
[Help] ФГ авторизация manstrrr Вопросы и ответы: RF Online 1 03.12.2009 22:06

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 17:09.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net