Помогите с кодом С#, AutoIt

Leonardo

Client
Регистрация
26.02.2017
Сообщения
29
Благодарностей
1
Баллы
3
Прочтя конкурсную статью, http://zennolab.com/discussion/threads/zennoposter-winapi-dlja-chajnikov-avtomatizacija-ljubogo-desktop-prilozhenija.33709/ решил попробовать создать Viber чекер номеров.
Подскажите как решить эту задачу?
После набора номера не существующего в базе Viber, Viber выдает сообщение что данного номера нет в базе вайбер.
Вопрос первый какими функциями можно распоснать это, (сообщение об ощибке нельзя выделить мышью)
Мне кажиться я нашел рещение использую функцию PixelSearch http://autoit-script.ru/autoit3_docs/functions/PixelSearch.htm , но я не как не могу понять как ее встроить в С# код что бы она работала ?

var handle = AutoItX.WinGetHandle("Viber +79182346465");// хендл окна
AutoItX.WinActivate(handle);
AutoItX.WinMove(handle, 0, 0);
AutoItX.MouseClick("LEFT", 335, 122); //клик по номеру наберателю
AutoItX.MouseClick("LEFT", 136, 183);
AutoItX.Send(project.Variables["number"].Value); // берет номер из переменной и вписывает
AutoItX.MouseClick("LEFT", 257, 626); //нажимает кнопку отправить СМС
 

Вложения

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 344
Благодарностей
298
Баллы
83
Ищи текст, зачем тебе пиксели?
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113
Вырежи экран в буфер. Я же кидал ссыльных на то как сделать
 

Leonardo

Client
Регистрация
26.02.2017
Сообщения
29
Благодарностей
1
Баллы
3

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113

Leonardo

Client
Регистрация
26.02.2017
Сообщения
29
Благодарностей
1
Баллы
3

Leonardo

Client
Регистрация
26.02.2017
Сообщения
29
Благодарностей
1
Баллы
3
Спасибо за ответ))
Мои познания не позволяют мне понять как при помощи скриншота экрана я смогу определять, недействительный номер?

А с помощью функцию PixelSearch, я собирался вести координаты необходимой области экрана и найти необходимый цвет кнопки (показанно на скриншоте) и если бы цвет совпал, появились координаты в масиве, а если нет то выдало бы "@error" этими функциями я хотел отсеивать рабочие номера и не рабочие !!
в любом случае спасибо за ответ буду капать !!
 

Leonardo

Client
Регистрация
26.02.2017
Сообщения
29
Благодарностей
1
Баллы
3

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113
Leonardo, сделай скрин этого учатска и через tesseract распознай.
 

Elmander88

Client
Регистрация
19.02.2017
Сообщения
15
Благодарностей
1
Баллы
3
Прочтя конкурсную статью, http://zennolab.com/discussion/threads/zennoposter-winapi-dlja-chajnikov-avtomatizacija-ljubogo-desktop-prilozhenija.33709/ решил попробовать создать Viber чекер номеров.
Подскажите как решить эту задачу?
После набора номера не существующего в базе Viber, Viber выдает сообщение что данного номера нет в базе вайбер.
Вопрос первый какими функциями можно распоснать это, (сообщение об ощибке нельзя выделить мышью)
Мне кажиться я нашел рещение использую функцию PixelSearch http://autoit-script.ru/autoit3_docs/functions/PixelSearch.htm , но я не как не могу понять как ее встроить в С# код что бы она работала ?

var handle = AutoItX.WinGetHandle("Viber +79182346465");// хендл окна
AutoItX.WinActivate(handle);
AutoItX.WinMove(handle, 0, 0);
AutoItX.MouseClick("LEFT", 335, 122); //клик по номеру наберателю
AutoItX.MouseClick("LEFT", 136, 183);
AutoItX.Send(project.Variables["number"].Value); // берет номер из переменной и вписывает
AutoItX.MouseClick("LEFT", 257, 626); //нажимает кнопку отправить СМС
Привет! Написал чеккер для Viber?
Есть к нему интерес.
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113

rotkiv

Client
Регистрация
27.04.2015
Сообщения
35
Благодарностей
3
Баллы
8
Помогите как в переменной Variables["text"] написать текст чтоб Viber
понял что это перенос на другую строку а не Enter


Пример
texttexttexttext
texttexttext
texttext


var handle = AutoItX.WinGetHandle("[#] Viber nomer [#]");
AutoItX.WinActivate(handle);
AutoItX.WinMove(handle, 0, 0);
AutoItX.MouseClick("LEFT", 278, 102);
AutoItX.MouseClick("LEFT", 136, 400);
AutoItX.MouseClick("LEFT", 136, 164);
AutoItX.Send(project.Variables["nomer"].Value);
AutoItX.MouseClick("LEFT", 206, 528-);
AutoItX.MouseClick("LEFT", 450, 580);
AutoItX.Send(project.Variables["text"].Value);
AutoItX.MouseClick("LEFT", 770, 580);
AutoItX.MouseClick("LEFT", 450, 580);
Thread.Sleep(2000);
AutoItX.Send("text");
AutoItX.MouseClick("LEFT", 770, 580);
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113
Попробуй указать перенос строк
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)