Принимает капчу. От чего зависит получение incorrect-captcha-sol

02.05.2019

Специалисты наконец-то усовершенствовали капчу, избавив пользователя от надобности вводить слова и выполнять другие непонятные действия. Отныне технология распознавания ботов способна самостоятельно определить, человек перед ней или нет. разобралась, как начиналась война с машинами и кто в ней одерживает победу.

Новая надежда

Капча (CAPTCHA - Completely Automated Public Turing test to tell Computers and Humans Apart) - это автоматизированный публичный тест Тьюринга, направленный на выявление компьютеров среди посетителей сайтов. Этот механизм защиты должен оградить сайты от спама, автоматических регистраций, накруток и прочих нелицеприятных дел, которыми обычно занимаются боты.

Классическая капча заключается в необходимости расшифровать сильно искаженный текст, трудно распознаваемый программными алгоритмами. Технология Google с говорящим названием No CAPTCHA отходит от стандартной концепции автоматизированного теста Тьюринга и оценивает поведение пользователя в сети, а не его способность разгадывания слов.

Пользователю нужно выполнить простейшее действие - отметить галочкой утверждение «Я не робот». В этот момент специальный скрипт оценивает косвенные параметры, указывающие на возможного бота: информация о времени, проведенном на странице, IP-адрес и прочее. Если же у No CAPTCHA закрадываются сомнения в том, что пользователь - человек, то она предложит выполнить простое задание, вроде поиска определенного объекта на картинках или ввода стандартной капчи.

По сравнению с классической системой, даже нынешнее исполнение No CAPTCHA не особо обременяет пользователей. А усовершенствованная технология даже не требует ставить галочек. При проверке на экране откроется маленькое окно, в котором галочка ставится автоматически, сообщая пользователю о том, что он все-таки не робот. Если же система не уверена в этом, она запустит такой же механизм проверки, что и ранее.

Рассказывая о No CAPTCHA, разработчики ограничиваются лишь ссылками на машинное обучение и продвинутый анализ рисков, адаптируемый к новым угрозам. И их можно понять: не зная принципа работы системы, взломщики не смогут ее обойти.

Рождение легенды

Оригинальная версия капчи была разработана в 2000 году специалистами американского университета Карнеги - Меллон. Команда под руководством Луиса Фон Ана (Luis von Ahn) поставила перед собой цель создать защиту, устойчивую к распознанию и угадыванию. Это значит, что капча должна быть нерешаемой для систем распознавания текстов и прочих алгоритмов, а также ее нельзя угадать за малое число попыток (менее 1000). Но для человека она не представляет никакой трудности.

Один из первых и простейших способов обхода защиты - обратиться к обычному пользователю. Спамеры просто платили, причем смешные деньги - цент за картинку, но в бедных странах и это немало. Но в целом система была эффективна, и разработчики озадачились уже совсем другой проблемой.

Создатели капчи понимали, что на решение загадок с зашифрованным текстом миллионы пользователей тратят уйму времени, и было бы неплохо направить эти ресурсы в полезное русло. Так в 2007 году появилась reCAPTCHA, совмещающая, что называется, приятное с полезным. Ключевая ее особенность - то, что система не только защищает сайты от ботов, но и выполняет функцию расшифровки архивных документов.

ReCAPTCHA предлагает ввести пользователю не одно, а два слова, что довольно редко встречается в других системах. Секрет в том, что одно слово уже известно системе, и именно по нему будет проходить проверка, а второе взято из отсканированного документа, не расшифровываемого алгоритмом. Таким образом при прохождении теста пользователь помогает расшифровать реальный текст из старого документа. Конечно же, никто ему за это не заплатит, да и знали о такой уловке немногие.

Когда с помощью reCAPTCHA были расшифрованы архивные номера , на авторов этой системы обратили внимание в Google. В итоге «корпорация добра» купила сервис (в 2009 году) и взялась за расшифровку старых книг, а потом и за распознавание фрагментов снимков из Google Street View. Благодаря сервису в день оцифровывалось примерно 100 миллионов слов, что давало более двух миллионов книг в год.

Помимо reCAPTCHA, есть множество других вариантов. Умельцы со всего мира создают системы защиты с помощью логических и математических задач, интегрируют простенькие игры и разрабатывают все более и более продвинутые варианты. Но классическая капча с текстом остается одной из самых сбалансированных систем, хотя от ботов она уже не спасает.

Бесполезная защита

Одна из главных проблем любой капчи - ее исполнение. Боты - проблема не для пользователей, а для администраторов сайта. Перекладывать ее решение на обычных людей некорректно, тем более что при вводе очередной капчи пользователи испытывают лишь раздражение.

С развитием алгоритмов и искусственного интеллекта многие механизмы защиты стали практически бесполезными. Такая судьба постигла аудио- и видеокапчу, а также многие варианты защиты с логическими вопросами и картинками. В 2014 году сама Google продемонстрировала алгоритм, способный распознать и взломать даже максимально сложные изображения reCAPTCHA с 99,8-процентной вероятностью. Кстати, этот показатель даже выше, чем у человека.

Немало претензий и к самой reCAPTCHA. В первую очередь, необходимость вводить два слова увеличивает время выполнения задания. Не стоит забывать и о том, что пользователь помогает расшифровывать книги, тем самым выполняя работу для Google, и за эту работу ему никто не платит. Поэтому шаг поискового гиганта по изменению привычной капчи на нечто более умное и незаметное выглядит верным. Остается под вопросом лишь то, насколько умно система будет работать и точно ли облегчит жизнь рядовым пользователям.

Введение капчи может понадобиться, чтобы нормально пользоваться какой-то программой, сайтом или же для регистрации . Суть капчи проста: подтвердить, что вы не робот. Но что делать, если она не открывается или упорно выдаёт, что вы ввели неверный результат?

    • Почему сложно распознать капчу
    • Если капча введена неверно
    • Как вводить капчу за деньги

Если вам обязательно нужно зарегистрироваться на конкретном форуме, попробуйте для начала проверить, работает ли капча вообще. Для этого изображение нужно открыть в отдельном окне и посмотреть, что будет показывать (ничего, картинку, код). Если появились непонятные символы, то причина, с большой долей вероятности, в глюке с кодом. В этом случае вы можете только написать администрации сайта.

Почему сложно распознать капчу

Ниже приведены некоторые способы защиты:

  • применение русского алфавита (исключение английского);
  • применение комбинации букв русского алфавита и цифр;
  • введена дополнительная защита в виде наложения различных фильтров, искажений, мусора и т.д.

Такая защита сильно усложняет прочтение и распознавание капчи не только специалистам, но и обычным пользователям ресурсов в интернете, чья подготовка в разы ниже.

Если капча введена неверно

Проблема с капчей возникает по разным причинам: при вводе капчи открывается картинка с одним/двумя словами, которые слабо различаются на фоне изображения, кроме того форма символов искажена, слова написаны с ошибками; компьютеру сложно распознавать искаженные шрифты и бессмысленные текст, человек же может этим воспользоваться для аутентификации.

  1. Зайти с разных браузеров. Иногда это помогает.
  2. Проверить скорость Интернета. Дело в том, что при очень низких показателях картинка может банально не загружаться. Или делать это с ошибками.
  3. Убедиться в том, что вы разрешили показ изображений, ведь капча - по сути картинка. Желательно посмотреть это в соответствующих настройках. Если там стояло ограничение, просто исправьте и перезагрузите браузер.
  4. Зайти с главной страницы сайта. Это действительно иногда срабатывает.
  5. Попытаться найти аудиоверсию капчи. Вполне возможно, что с озвучкой всё в порядке.
  6. Постараться пройти регистрацию или же выполнить нужные действия с сотового. Бывает, что мобильная версия сайта вполне пускает.
  7. Не проходит проверка: капча может конфликтовать с антивирусным ПО, она воспринимается как потенциально опасный элемент. Попробуйте деактивировать антивирусник и обновить страницу;
  8. Спросить, не возникает ли схожая проблема у других пользователей в Рунете. Так вы будете точно знать, связана ли эта неприятность с вашим компьютером.

Скорее всего, один из этих способов сработает. В противном случае, вам нужно искать другие варианты.

Здравствуйте, уважаемые читатели блога сайт. Буквально чуток времени хочу уделить относительно новой капче от Гугла (она около года назад была анонсирована), которая пришла на смену старой и замороченной. Раньше наверное мало кто из блогеров, находящихся в своем уме, мог бы поставить детище Google на свой сайт или блог — уж очень муторно было разгадывать предлагаемые там буквенные ребусы. Все удобство комментирования терялось.

Собственно, в то далекое время я пользовался еще отлично работающим . Для его прохождения нужно было просто поставить галочку в поле «Я не робот» и все ( из всех возможных). Если галочка не ставилась, то сообщение падало в корзину в админке WordPress, либо при отключенной корзине (как в моем случае) просто в базу не добавлялось. Идеальный вариант, по-моему, ибо никаких особых неудобств комментатору это не создавало.

Потом этот плагин работать перестал, и я где-то полгода с успехом пользовался , но и этот метод перестал работать после обновления WordPress до версии 4.4. За это время я попробовал парочку плагинов, которые отсеивали спам на основе анализа адресата и содержания (Antispam Bee и CleanTalk). Первый довольно много путал (спам в не спам, а неспам в спам), а второй вопреки ожиданиям не снижал, а увеличивал нагрузку на сервер (да еще и платный к тому же).

В общем, решил вернуться к проверенному методу - установки простейшей из существующих капч . DCaptcha уже не работает, но зато гигант Google серьезно упростил свою изначально монструозную reCAPTCHA и свел всю проверку к той самой установке галочки «Я не робот». К сожалению, я слишком туп, чтобы понять как это дело прикрутить к сайту без плагина (хотя и пробовал), поэтому пришлось воспользоваться услугами плагина No CAPTCHA reCAPTCHA. Но обо всем по порядку.

Методы снижения спам-нагрузки и почему именно reCAPTCHA?

Как вы наверное знаете, спам бывает ручной и автоматический . От первого можно защититься только включением обязательной модерации всех входящих сообщений перед их публикацией на блоге — тогда наверняка никакая «редиска» не прорвется.

Но ручной спам, как правило, представляет из себя хиленький ручеек по сравнению с полноводной рекой автоспама. Последний может генериться, например, Хрумером в просто фантастических объемах. Лично меня больше раздражает даже не то, что в сутки приходит несколько сотен спамных комментов в мою адмнинку WordPress, а то, что они бывают чудовищно длинными и устаешь их прокручивать до кнопки «Удалить». В общем, проблема сия реальна и тем более актуальна, чем популярнее будет ваш блог.

С ручным спамом бороться нет смысла (из-за обреченности этой борьбы и из-за его несущественного объема), но вот с автоспамом нужно что-то делать. Тут как бы есть два основных подхода :

  1. Фильтровать уже добавленные в базу WordPress комменты на предмет спам/неспам и распихивать их по соотвествующим папочкам. К сожалению, плагины, работающие по такому принципу, выдают много брака и просто так очищать папку «Спам» без просмотра ее содержимого не получится, если вы не хотите потерять десятки действительно ценных комментариев отправленных активными читателями вашего блога.
  2. Прикрутить к форме добавления комментария дополнительную проверку на то, кто именно оставляет это сообщение — живой человек или бот. Задача по выявлению этого различия называется тестом Тьюринга и решается в подавляющем большинстве случаев с помощью так называемой капчи (образовано от CAPTCHA, которое является аббревиатурой от набора умных слов). Основной проблемой этого метода борьбы со спамом является то, что вы напрягаете комментаторов разгадыванием «ребуса» (капчи), что может отбить у него вообще какое-либо желание продолжать пытаться оставить сообщение.

Однако, капчи, как уже говорил, бывают довольно простыми. Гугл сделал серьезный шаг в этом направлении и теперь его новая reCAPTCHA просто образец простоты и изящества для подавляющего большинства пользователей зашедших на ваш сайт (правда, малому числу из них может все же быть предложено ввести символы с картинки, если у алгоритма возникнут сомнения в его человечности).

Вот так реКапча от Гугла будет выглядеть для 99.9% посетителей вашего сайта:

Ну и вот так, в случае возникновения форс-мажора (если алгоритм после проведения десятка тестов на человечность все же засумлевается):

О стойкости этой защиты можно судить по тому, что на сервисах по распознаванию капчи ( или ) за рекапчку берут в два раза больше денежек. Очень говорящий показатель.

Ну, как бы выбор сделан — надо реализовывать.

Регистрация сайта в reCAPTCHA и установка ее на свой блог

Регистрация представляет из себя просто как указание названия и доменного имени вашего сайта, где эту саму капчу вы планируете использовать:

После этого вы попадете в админку сервиса reCAPTCHA для вашего сайта (имеет смысл, наверное, добавить ее в закладки браузера). Со временем там будет отображаться статистика по работе данной капчи, ну, а пока самое важное, что мы отсюда можем почерпнуть — это как раз те самые ключи , без которых «Я не робот» работать не будет:

Чуть ниже приведена инструкция по установке. В области «Интеграция на стороне клиента» все понятно, но простой установки приведенного кода в указанные места не достаточно. Капча отображаться будет, но спам фильтроваться не будет. В области же «Интеграция на стороне сервера» мне вообще ничего не понятно. Туповат я для этого.

Посему было принято решение использовать плагин для интеграции reCAPTCHA в WordPress , благо, что вариантов таких плагинов достаточно много (читайте ). Правда, штуки три из них у меня не заработали (капча в области добавления комментариев не появлялась). После нескольких неудачных попыток пришлось обратиться за решением к умным людям , где и был замечен и в последствии успешно установлен плагин с замысловатым названием (типа масло не маслянное) — .

Настройка и работа плагина No CAPTCHA reCAPTCHA в WordPress

Ну, собственно, заходите в админку WordPress, из левого меню выбираете «Плагины» — «Добавить новый», вводите в поисковую строку No CAPTCHA reCAPTCHA и производите установку. Не забываете его активировать, а затем обычным способом заходите в его настройки (внизу левого меню вы найдете новый пункт «No CAPTCHA reCAPTCHA»).

Собственно, тут из всех настроек самым важным является опять же ввод полученных чуть выше ключей на сайте reCAPTCHA:

После сохранения этих изменений плагин сразу встает на защиту ваших комментариев от спамеров.

И не только комментариев. В настройках можно защитить с помощью этой капчи и форму входа в админку WordPress :

Еще в настройках можно заменить светлую цветовую гамму рекапчи на темную, а также либо предоставить капче самой угадывать язык пользователя, либо установить его принудительно.

Собственно, все. Я пока не стал принудительно сбрасывать кеш в WordPress (обновил лишь те статьи, к которым традиционно Хрумер не равнодушен), поэтому reCAPTCHA отображается не на всех страницах. Каких-то нареканий в работе пока замечено не было.

Удачи вам! До скорых встреч на страницах блога сайт

посмотреть еще ролики можно перейдя на
");">

Вам может быть интересно

Как избавиться от спама в комментариях WordPress за 5 минут (без капчи и без плагинов) Пропало левое меню в админке WordPress после обновления Где скачать WordPress - только с официального сайта wordpress.org
Как войти в админку WordPress, а так же поменять логин и пароль администратора выданные вам при установке движка Как отключить комментарии в WordPress для отдельных статей или всего блога, а так же убрать или наоборот подключить их в шаблоне

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

Что это такое?

Кстати, а что такое капча? Представьте, что вы зашли на какой-нибудь популярный файлообменник. Чтобы скачать файл в бесплатном режиме, вам придется ввести в специальное поле некий набор символов (зачастую бессмысленных), который следует брать с рисунка напротив.

Задача осложняется тем, что символы эти порой совершенно невозможно разобрать, так как их сознательно делают нечитаемыми.

Для чего она нужна?

Разобравшись с тем, что такое капча, было бы неплохо поговорить о ее конкретном назначении. Для чего же нужно городить такой огород, усложняя отправку комментариев или скачивание файлов?

Да, были такие времена, когда о капче вообще никто не знал. Появилась она сравнительно недавно. Произошло это в тот же период, когда на просторах Рунета расплодилась масса ботов, при помощи которых предприимчивые граждане оставляли в комментариях объявления рекламного характера, бесплатно скачивали файлы и творили прочие безобразия.

Конечно, на многих ресурсах за порядком следили администраторы, но в большинстве сервисов для ведения блогов нагрузка на них оказалась такая, что они банально перестали справляться. Вот тогда пользователи и узнали о том, что такое капча! Знакомство оказалось достаточно неприятным.

Если говорить совсем точно, то сама технология первоначально была создана в 2000 году. Изначально она предназначалась только лишь для определения «человечности» вашего собеседника в интернете: тогда ни одна программа для капчи (для ее распознавания, точнее) просто не была создана.

В чем же ее недостаток?

Если вы внимательно прочитали первую часть статьи, то о большинстве негативных факторов использования капчи сможете догадаться самостоятельно. Во-первых, пользователи в большинстве своем действуют в состоянии некоего порыва. Проще говоря, когда вы видите какой-то интересный пост в том же ЖЖ, то хотите его сразу же прокомментировать.

Вот только перед вами встает неудобоваримая капча, причем большая часть символов настолько неразборчива, что на их разгадывание может уйти не один день. Как вы думаете, будет ли пользователь заниматься столь неблагодарным делом?

Нет, конечно же! Он просто уйдет на другой сайт. Таким образом, если вы стремитесь обезопасить свой ресурс от любителей оставлять спам в комментариях, советуем слишком сильно не усердствовать.

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

Практически то же самое можно сказать и о сайтах для обмена файлами. Конечно, понять их создателей можно: предлагая всем и безвозмездно скачивать интересующую информацию, они просто упустят прибыль.

Но на эту же ситуацию можно посмотреть с прямо противоположной стороны: если сайт предлагает вам возможность бесплатно получить файл, он легко наберет огромную аудиторию, которая быстро окупит все издержки за счет привлечения рекламодателей. Кстати, именно так действует отечественный iFolder, создатели которого на бедность точно пожаловаться не могут.

Так что, даже с точки зрения получения прибыли, сама идея капчи не выглядит столь уж привлекательной.

Что же делать?

А как убрать капчу, реально ли вообще это сделать? Здесь ситуация достаточно неоднозначная. Дело в том, что на многих сайтах, которые используют такой тип защиты от спама, капчу прочитать с первого раза удается далеко не каждому пользователю, не говоря уже о каких-то приложениях.

Простые варианты можно распознать при помощи небольшой утилиты Screenshot Reader, которая входит в состав программного пакета ABBYY FineReader. Но читает она только самые простые формы капчи, которые сможет без особого труда опознать любой нормальный пользователь. Кроме того, сам процесс не получится автоматизировать, так как для распознавания необходимо вручную выделять интересующий вас диапазон.

Ввод капчи

Если особого выбора у вас нет, то придется заниматься этим неблагодарным делом вручную. Какие советы можно дать? Во-первых, старайтесь делать это быстрее: на многих сайтах стоит счетчик, который сбрасывает значение, если вы не можете ввести его в течение пары минут.

Кроме того, ошибки при написании символов нередко случаются в том случае, когда в вашем браузере отключены JavaScript. Не забывайте также о необходимости Cookie, так как они помогут сайту вас «узнавать», избавляя от постоянного прохождения надоевшей защиты.

Наконец, обращайте внимание на то, что написано на главной странице сайта. Как правило, капча для сайта бывает подробно описана в пояснительной записке или отдельной статье. Отличный пример - файлообменный сервис Rapidshare, который в свое время вводил уникальную капчу.

Ее символы были легко различимы, не использовалось никаких технологий размытия или поляризации, которые бы затрудняли работу программ для ее распознавания. В чем же был секрет?

А он заключался в том, что на тех буквах и цифрах, которые нужно было вводить в соответствующее поле, сидели котики. Сколько в свое время было сказано нелицеприятных слов в адрес создателей такой системы! В конце концов, от нее отказались под давлением пользовательской общественности.

Покупаем «противоядие»

Другой вариант - связаться с нормальным программистом (или группой, что еще лучше), дабы тот сделал утилиту для распознавания капчи на каком-то конкретном сайте. Увы, но универсальных решений не существует хотя бы потому, что на каждом ресурсе защита уникальна. Какие-то типовые решения встречаются очень редко.

Особый интерес в этом ключе представляют разработки компании CMS Bitrix, которая распространяет действительно эффективные программы, которые справляются с капчей на большинстве популярных сайтов. Разработчики утверждают, что эффективность их творения находится в пределах 95 %. В зависимости от типа защиты, ее сложности и конкретного сайта, разработка методов ее защиты может обойтись вам в пару тысяч долларов, а то и больше.

Кроме того, на некоторых ресурсах есть настолько изощренная защита, что ее и человеку-то разгадать непросто!

Можно ли заработать на ее вводе?

Новички часто интересуются, можно ли как-то зарабатывать на вводе защитных символов. И это неудивительно, ведь в интернете полно объявлений о наборе групп людей, которые будут получать какие-то деньги, выполняя распознавание капчи. Стоит ли связываться с этим?

На наш взгляд (быть может, довольно субъективный), заниматься этим делом не стоит. Вы потратите огромное количество нервов, сил и трафика. А оплата такого «легкого заработка» просто поражает: просидев целый день возле компьютера, с маниакальным упорством занимаясь вбиванием капчи, вы заработаете максимум пару долларов. А оно вам надо? Наверняка нет.

Универсальный выход

Если говорить о файлообменниках, то в случае регулярной закачки вами файлов единственным надежным выходом из ситуации является покупка платного аккаунта. Как правило, его стоимость вполне адекватна. Купив такой абонемент, вы получите возможность быстро и без неудобств скачивать любые объемы информации.

Как убрать капчу с вашего блога?

Надеемся, что вы сделали правильные выводы, прочитав большую часть нашей статьи. А потому рассмотрим, как убрать ввод капчи на популярном сервисе Blogger от небезызвестной Сделать это совсем несложно, а радости посетителям своего сайта вы доставите немало.

Сначала заходим в «Редактор» вашей странички. В левой колонке выбираете пункт «Настройки». В нем есть раздел «Сообщения и комментарии». В поле «Использовать проверку по слову» поставьте значение «нет», после чего капча при вводе сообщений требоваться не будет.

Что делать, если не получается правильно ее ввести?

Бывает, что программа для ввода капчи или сам сайт (если вы вводите значения вручную) постоянно выдают ошибку. В чем может быть причина?

Прежде всего, нужно успокоиться. Как правило, в правой части любой капчи есть изогнутая стрелка. Нажав на нее, вы обновите тот набор символов, который нужно ввести для доступа на сайт. Воспользовавшись ею, можно изменить совершенно нечитаемый набор. К сожалению, нечитаемость букв встречается очень часто. Так, порой совершенно неразличима разница между буквами "Q" и "G".

Наконец, на многих сайтах можно избежать ввода защитных символов, если просто зарегистрироваться на нем. Попробуйте и этот способ.

Вот что такое капча!

Добрый день форумчане, я столкнулся с проблемой, помогите пожалуйста. Я пользуюсь библиотекой vkNet (из Nuget).Так вот, я хочу авторизироваться в вк.

try { vk.Authorize(new ApiAuthParams { ApplicationId = appid, Login = email, Password = pass, Settings = scope, CaptchaKey = captchaKey, CaptchaSid = csid }); }

Если требуется капча (а она все время требуется), то я ее подгружаю её и вывожу в pictureBox1, человек вводит ее в textBox5 и сново нажимаю авторизация, но капча всегда неправильная и она просто обновляется для ввода другой. Почему так не получается?

14 ответов

Sasha95 , могу предположить, что из-за того, что каптча перезагружается, когда назначается pictureBox1.ImageLocation.У меня это было сделано как-то так: В слое логики:

class VKAnswerer { //много всяких свойств и методов, не относящихся к делу private VkApi API { get; set; } = new VkApi(); public delegate void CaptchaNeededHandler(object sender,Bitmap captcha,CaptchaNeededException ex); public event CaptchaNeededHandler CaptchaNeeded = delegate{}; public async Task LogIn() { return await LogIn(Login, Password, AppID); } public async Task LogIn(string captchaKey,long? captchaSid) { return await LogIn(Login, Password, AppID, captchaKey,captchaSid); } private async Task LogIn(string login, string password, ulong AppID, string captchaKey = null, long? captchaSid = null) { try { ApiAuthParams param = new ApiAuthParams(); param.ApplicationId = AppID; param.Login = login; param.Password = password; param.Settings = Settings.All; if (captchaKey!=null && captchaSid!=null) { param.CaptchaKey = captchaKey; param.CaptchaSid = captchaSid; } await API.AuthorizeAsync(param); return true; } catch (Exception e) { SomethingWrong(this, e); if (e is CaptchaNeededException) { using (HttpClient client = new HttpClient()) { var image = Bitmap.FromStream(await client.GetStreamAsync((e as CaptchaNeededException).Img)); CaptchaNeeded(this, (Bitmap)image, e as CaptchaNeededException); } } return false; } } }

В слое GUI:

VKAnswerer ANS = new VKAnswerer(); ANS.CaptchaNeeded += async (s, img, err) => { var form = new СaptchaForm(img); form.ShowDialog(); if (await ANS.LogIn(form.userAnswer, err.Sid)) { AddLogMessage("Вход успешно произведен."); MainPanel.Enabled = true; } };

SomethingWrong(this, e);

Что это за функция?

using (HttpClient client = new HttpClient())

это какая-то библиотека? В стандартной нет, на сколько знаю. Но я так понимаю это просто get запрос.

var image = Bitmap.FromStream(await client.GetStreamAsync((e as CaptchaNeededException).Img));

Тут я так понимаю вы получаете url капчи.

CaptchaNeeded(this, (Bitmap)image, e as CaptchaNeededException);

А тут саму капчу вы выводите на экранЕсли пользоваться

catch (CaptchaNeededException cne) { csid = cne.Sid; string captchaUrl = cne.Img.AbsoluteUri; pictureBox1.ImageLocation = captchaUrl; captchaKey = textBox5.Text; }

то как нужно изменить этот код, чтоб капча не перезагружалась?

что это за функция?
Это не имеет значения. Это просто событие, которое у меня оповещает о любых ошибках в данном проекте.
это какая-то библиотека? В стандартной нет, на сколько знаю. Но я так понимаю это просто get запрос.
Это стандартный класс, про который можно прочитать на MSDN и которым я всегда пользуюсь для работы с HTTP(если версия.NET позволяет).
тут я так понимаю вы получаете url капчи.
Нет, тут я получаю саму картинку.
а тут саму капчу вы выводите на экран
Не совсем, тут я вызываю событие, которое пробрасывает каптчу слоем выше. А дальше она хоть и выводится на экран, но метод, который логинится, про это ничего не знает. Вывод происходит в слое GUI(на СaptchaForm, которую я тут не привожу, ибо детали ее реализации не имеют значения-вы можете выводить каптчу на экран абсолютно как угодно).

catch (CaptchaNeededException cne) { csid = cne.Sid; string captchaUrl = cne.Img.AbsoluteUri; pictureBox1.ImageLocation = captchaUrl; captchaKey = textBox5.Text; }

можно ли этот код переделать так, чтоб каптча не перезагружалась?

Хм, а что у вас за версия.NET ?

то как нужно изменить этот код, чтоб капча не перезагружалась?
Посмотрев внимательно, вижу, что ImageLocation тут, скорее всего, не при чем(хоть я бы и не стал им пользоваться, чтобы быть уверенным, что изображение не перезагрузится ни при каких обстоятельствах). Больше сомнений вызывает:

captchaKey = textBox5.Text;

Это так и написано, или есть какой-то еще код/этот код вырван кусками из контекста? Есть еще какой-то код, который со всем этим работает? Если оно так и написано-то откуда в textBox5 возьмется результат?

хм, а что у вас за версия.NET ?
Любая от 4.0 и выше его поддерживает.Вкратце говоря-лучше всего делать так, как указано в моем коде. Так гарантированно работает без каких-либо неожиданных заморочек.

Ну на самом деле я тут наговнокодил, но это дело решаемо, потому что изначально я переменной captchaKey ничего не присваиваю, но у меня всегда выскакивает окшко с вводом капчи, поэтому я всегда попадаю в блок catch. И тогда, когда я в него попадаю я уже ввожу каптчу и сново жму авторизваться(т.е. когда я жму второй раз авторизация, то каптча уже заполнена). У меня версия NET 4,5, но у что-то я не вижу этого класса, о котором вы говорите. Он точно в System.Net живет?

У меня версия NET 4,5, но у что-то я не вижу этого класса, о котором вы говорите. Он точно в System.Net живет?
Он живет в пространстве имен System.Net.Http.
т.е. когда я жму второй раз авторизация, то каптча уже заполнена
Ну какой-то еще код, который бы заполнял captchaKey перед второй авторизацией где-то есть? Если нет-то работать оно, понятное дело, не может никак. Ведь в текстбокс либо ничего не введено, либо введено не то.