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

реализовать прокси в потоках

-

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

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

Ответ
 
Опции темы
Старый 12.08.2012, 05:45   #31
Заблокирован
 Сержант
Аватар для [Na`Vi]DendI
 
[Na`Vi]DendI на правильном пути[Na`Vi]DendI на правильном пути
Регистрация: 06.06.2012
Сообщений: 131
Популярность: 102
Сказал(а) спасибо: 141
Поблагодарили 131 раз(а) в 78 сообщениях
Отправить сообщение для [Na`Vi]DendI с помощью Skype™
 
По умолчанию Re: реализовать прокси в потоках

Цитата:
Сообщение от YukikazeПосмотреть сообщение
ужасный пример ты нашел, уж лучше так
Код:
List<Thread> Threads = new List<Thread>();
const int max = 8;
int counter = 0;

Queue<string> Logins = new Queue<string>(/* тут как бы заполнили очередь связками логин;пароль */);
while(true)
{
    if(Threads.Count > max) continue; //если максимум потоков то пропускаем итерацию
    if(Logins.Count == 0) break; //если в очереди не осталось аккаунтов то выходим из цикла
    var thread = new Thread(Brute);
    thread.IsBackground = true;
    thread.Start(Logins.Dequeue());
    Threads.Add(thread); //добавляем поток в список
}
метод брута
Код:
void Brute(object param)
{
   string pair = (string)param;
   //Используем пару лог пасс по назначению
   Threads.Remove(Thread.CurrentThread); // удаляем отработавший поток из списка
}

Тоже не катит((
попробую эту http://zhyk.ru/forum/showthread.php?t=377890 тему мб подойдет.)
Все перепробовал, нечего не помогает((
Будто в c# вообще нельзя брут с прокси сделать(

Последний раз редактировалось [Na`Vi]DendI; 12.08.2012 в 06:07.
  Ответить с цитированием
Старый 12.08.2012, 07:00   #32
 Сержант
Аватар для Yukikaze
 
Yukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядомYukikaze в состоянии испепелить взглядом
Регистрация: 01.10.2011
Сообщений: 128
Популярность: 5723
Сказал(а) спасибо: 25
Поблагодарили 174 раз(а) в 105 сообщениях
 
По умолчанию Re: реализовать прокси в потоках

Оба варианта работают как часы, я бы на твоем месте почитал RSDN.ru там много полезных статей по .NET
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
________________
Talk is cheap. Show me the code
— Linus Torvalds
  Ответить с цитированием
Старый 12.08.2012, 14:26   #33
Заблокирован
 Сержант
Аватар для [Na`Vi]DendI
 
[Na`Vi]DendI на правильном пути[Na`Vi]DendI на правильном пути
Регистрация: 06.06.2012
Сообщений: 131
Популярность: 102
Сказал(а) спасибо: 141
Поблагодарили 131 раз(а) в 78 сообщениях
Отправить сообщение для [Na`Vi]DendI с помощью Skype™
 
По умолчанию Re: реализовать прокси в потоках

Цитата:
Сообщение от YukikazeПосмотреть сообщение
Оба варианта работают как часы, я бы на твоем месте почитал RSDN.ru там много полезных статей по .NET
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]

Всё прочитаю спасибо,но на данный момент меня интересует прокси((
Начал юзать так:
string[] loginPass = //массив связок логин;пароль
foreach(string logpas in loginPass)
{
ThreadPool.QueueUserWorkItem(Brute, logpas);
}
Вообще жесть скорость низкая(
Если уже и буду юзать данный способ то как остановить потоки ? Выходить из логики потока не хорошо.( спасибо заранее)

Последний раз редактировалось [Na`Vi]DendI; 12.08.2012 в 18:44.
  Ответить с цитированием
Старый 14.11.2012, 13:37   #34
 Пехотинец
Аватар для XRASER
 
XRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краяхXRASER неизвестен в этих краях
Регистрация: 27.11.2010
Сообщений: 84
Популярность: -1831
Сказал(а) спасибо: 249
Поблагодарили 57 раз(а) в 27 сообщениях
Отправить сообщение для XRASER с помощью ICQ Отправить сообщение для XRASER с помощью Skype™
 
По умолчанию Re: реализовать прокси в потоках

Цитата:
Сообщение от YukikazeПосмотреть сообщение
Чето подумал и решил, что можно отделаться одним статичным классом
Код:
    static class ProxyQ
    {
        private static readonly object sync = new object();
        public static readonly Queue<string> Proxyes;
        static ProxyQ()
        {
            Proxyes = new Queue<string>();
        }
        private static bool Check(string proxy)
        {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://google.ru/");
            req.Proxy = new WebProxy(proxy);
            req.Timeout = 5000;
            try
            {
                HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                return resp.StatusCode == HttpStatusCode.OK;
            }
            catch
            {
                return false;
            }
        }

        public static void Add(IEnumerable<string> proxyes)
        {
            foreach (string proxy in proxyes)
            {
                Proxyes.Enqueue(proxy);
            }
        }

        public static void Add(string proxy)
        {
            Proxyes.Enqueue(proxy);
        }

        public static string Get()
        {
            while (Proxyes.Count > 0)
            {
                string proxy;
                lock (sync) proxy = Proxyes.Dequeue();
                if (Check(proxy)) return proxy;
            }
            return null;
        }
    }
Вот пример использования
Код:
ProxyQ.Add("proxy"); //или ProxyQ.Add(new []{"proxy", "proxy", "proxy"}); или даже ProxyQ.Proxyes = new Queue<string>(массив проксей);
Console.WriteLine(ProxyQ.Get());
Метод Get() возвращает первый попавшийся рабочий прокси из очереди

Как можно отобразить отправку исходящего запроса в ProgressBar?
Чтобы программа не зависала на время запроса?

Код:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL.Text);
String secondStepForm = HttpRequest.Text;
request.UserAgent = "Opera/9.80";
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
byte[] EncodedPostParams = Encoding.ASCII.GetBytes(secondStepForm);
request.ContentLength = EncodedPostParams.Length;
request.GetRequestStream().Write(EncodedPostParams, 0, EncodedPostParams.Length);
request.GetRequestStream().Close();
________________
[Ссылки могут видеть только зарегистрированные пользователи. ] - сообщество серверов MineCraft.
RPG, Survival, Hi-Tech сервера. 24\7. Без лагов.
  Ответить с цитированием
Старый 15.11.2012, 20:07   #35
Заблокирован
 Сержант
Аватар для [Na`Vi]DendI
 
[Na`Vi]DendI на правильном пути[Na`Vi]DendI на правильном пути
Регистрация: 06.06.2012
Сообщений: 131
Популярность: 102
Сказал(а) спасибо: 141
Поблагодарили 131 раз(а) в 78 сообщениях
Отправить сообщение для [Na`Vi]DendI с помощью Skype™
 
По умолчанию Re: реализовать прокси в потоках

Запускаю потоки вот так:
Код:
 Queue<string> Logins = new Queue<string>(loader.Logins);
     int max = Convert.ToInt32(threadBOX.Text);

     while (true)
     {
         if (Threads.Count > max) continue; //если максимум потоков то пропускаем итерацию
         if (Logins.Count == 0)
         {
             startbutton.Enabled = true;
             stoped.Enabled = false;
             break;
         }
         var thread = new Thread(goes);
         thread.IsBackground = true;
         thread.Start(Logins.Dequeue());
         Threads.Add(thread); //добавляем поток в список
     }
Все вроде работает хорошо, но если я укажу к примеру 100 связок и 5 потоков то тупо зависает, короче если я ставлю потоков меньше чем связок то программа зависает, что же делать ? если 100000 связок столько же потоков не поставишь.(
  Ответить с цитированием
Старый 15.11.2012, 20:34   #36
 Старший сержант
Аватар для Sinyss
 
Sinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака НоррисаSinyss троюродный дядя Чака Норриса
Регистрация: 29.07.2011
Сообщений: 197
Популярность: 8989
Сказал(а) спасибо: 45
Поблагодарили 175 раз(а) в 139 сообщениях
Отправить сообщение для Sinyss с помощью Skype™
 
По умолчанию Re: реализовать прокси в потоках

Не знаю что тут может не работать... Только если ты не удаляешь потоки из списка...
  Ответить с цитированием
Старый 15.11.2012, 20:50   #37
Заблокирован
 Сержант
Аватар для [Na`Vi]DendI
 
[Na`Vi]DendI на правильном пути[Na`Vi]DendI на правильном пути
Регистрация: 06.06.2012
Сообщений: 131
Популярность: 102
Сказал(а) спасибо: 141
Поблагодарили 131 раз(а) в 78 сообщениях
Отправить сообщение для [Na`Vi]DendI с помощью Skype™
 
По умолчанию Re: реализовать прокси в потоках

Цитата:
Сообщение от SinyssПосмотреть сообщение
Не знаю что тут может не работать... Только если ты не удаляешь потоки из списка...

Да ладно ?! ахах)
Проблему решил
  Ответить с цитированием
Ответ


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Прокси в потоках [Na`Vi]DendI Вопросы и ответы, обсуждения 9 01.07.2012 01:35
Как такое можно реализовать? iamzero Общение разработчиков 11 31.05.2012 21:07
[Статья] Как реализовать сумму прописью на С++ GAHIK С/С++ 2 09.01.2012 01:49

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

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

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