Страница 1 из 1

Проверка работоспособности

Добавлено: Ср окт 24, 2007 9:55 am
Jurka
Здравствуйте!

У меня вопросец - как я могу проверить работоспособность плагина.

Я скачал 3.31 версию, но в настройках ни чего не нашел. Где искать?

А, да, заодно расскажите какой библиотекой для чтения картинок посоветуете пользоваться, для Visual C++, потому как к минимальных требованиях не указан .NET framework, а следовательно использовать GDI+ нестоит.

Добавлено: Ср окт 24, 2007 8:11 pm
Max Terentiev
У меня вопросец - как я могу проверить работоспособность плагина.
Создать DLL плагина и использовать ее для обработки какой-то тестовой страницы. Очевидно, что только так.
Я скачал 3.31 версию, но в настройках ни чего не нашел. Где искать?
Выбор плагина для обработки страницы осуществляется в окне редактирования адреса (кнопка Изменить на главном окне программы).
А, да, заодно расскажите какой библиотекой для чтения картинок посоветуете пользоваться, для Visual C++, потому как к минимальных требованиях не указан .NET framework, а следовательно использовать GDI+ нестоит.
Для Visual C++ не могу сказать, я больше специализируюсь на Delphi/Builder'e. Тем не менее никаких ограничений нет. В принципе вы можете использовать все что угодно, лишь бы DLL экспортировала нужные функции. В этом смысле GDI вполне возможен.

Добавлено: Сб окт 27, 2007 6:10 pm
Jurka
Спасибо за ответ!

У меня возникает такая ошибка

Код: Выделить всё

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

А не могли бы Вы еще и запостить сюда пример формирования выходных данных. язык не принципиален :).

Спасибо

Добавлено: Сб окт 27, 2007 7:33 pm
Max Terentiev
Вы забыли вернуть в парметре ResultTypeFlags одну из этих констант:

#define resCaptchaDecoded 0x00000100

Флаг показывает, что плагин распознал защитную картинку и возвращает результат распознавания.

#define resNewFieldValues 0x00000200

Флаг показывает, что плагин модифицировал значения полей для отправляемой формы и возвращает новый набор значений

#define resNewHttpRequest 0x00000400

Флаг показывает, что плагин модифицировал HTTP заголовки или уже подготовленные данные (поля и закодированные значения) для сабмита формы и возвращает новые значения и заголовки.

#define resSubmitDone 0x00000800

Флаг означает, что сабмит формы был выполнен средствами плагина или перенаправлен вашему скрипту и отправка данных SmartPoster'ом не требуется. При получения этого флага адрес будет помечен как "Отправлен".

Добавлено: Сб окт 27, 2007 7:40 pm
Max Terentiev
А не могли бы Вы еще и запостить сюда пример формирования выходных данных. язык не принципиален
В случае если декодировалась капча результат можно вернуть так (на языке С++):

bool __stdcall ProcessPostingRequest(/*тут много параметров, смотрите их в SDK*/)
{
// выделяем память
*CaptchaRecognitionResult=(char *)AllocateMemory(strlen("результат декодирования")+1);
// копируем строку
strcpy(*CaptchaRecognitionResult,"результат декодирования");
// указываем размер строки
CaptchaRecognitionResultSize=strlen("результат декодирования")+1;
// выставляем флаг выполненной операции:
ResultTypeFlags=resCaptchaDecoded;
// возвращаем true
return true;
}

С остальными выходными переменными работать нужно примерно так же.

Добавлено: Пн окт 29, 2007 8:57 pm
Jurka
Я уже всех задолбал, НО!

Код: Выделить всё


string ans;

тут еще кое чего

и вот как возвращаю результаты:

Код: Выделить всё


*CaptchaRecognitionResult=(char*)AllocateMemory(ans.length()+1);
strcpy(*CaptchaRecognitionResult,ans.c_str());
CaptchaRecognitionResultSize=6;			
ResultTypeFlags=resCaptchaDecoded;		
return true;

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

что делать?

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

Добавлено: Пн окт 29, 2007 9:05 pm
Max Terentiev
Ок, пришлите dll (в Зип архиве) на support@bspdev.com

Добавлено: Вт ноя 06, 2007 10:18 am
Max Terentiev
Я исправил проблему и отправил вам письмо где объяснил что нужно сделать чтобы все заработало.

Добавлено: Пт май 06, 2016 6:54 pm
dima8720
Подскажите мне тоже,как исправить эту ошибку