Собственно что не так?
Пишу скрипт в визуальном редакторе. В шпионе копирую имя окна и вставляю в блок старт.
Далее сохраняю рисунок и копирую координаты мыши в клиентской части
Вставляю их в блок поиска изображения вместе с картинкой
Жму старт, но программа не работает
Что не так?
1. Budni - 12 Марта, 2018 - 00:39:04 - перейти к сообщению
2. Zireael - 12 Марта, 2018 - 02:42:26 - перейти к сообщению
В визуальном редакторе, внизу справа галка 'Фоновый режим'.
3. Kibor - 12 Марта, 2018 - 02:52:50 - перейти к сообщению
Небольшое дополнение в тему.
Возможность указать Указатель в Визуальном редакторе для работы в фоновом режиме.
Возможность указать Указатель в Визуальном редакторе для работы в фоновом режиме.
4. Budni - 12 Марта, 2018 - 02:55:13 - перейти к сообщению
Zireael пишет:
В визуальном редакторе, внизу справа галка 'Фоновый режим'.
Нажал галку, добавил в старт имя окна. Работает только в том случае если указатель на окне программы, но если запускать без курсора над окной то скрипт не срабатывает, как исправить?
5. Kibor - 12 Марта, 2018 - 02:58:47 - перейти к сообщению
Выше постом..
6. Budni - 12 Марта, 2018 - 03:39:35 - перейти к сообщению
Kibor пишет:
Выше постом..
Выставил указатель, вообще перестал скрипт работать
CODE:
win window ("Telegram", "Qt5QWindowIcon", -1);
win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[30][21];
start_();
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 1, 0, 0, 0, -1, 0, 100, 1, 11, 213, 54, 248, #sum_KIB, #x_KIB, #y_KIB);
function start_()
{
load_image_();
pause(1000);
w_KIB=window ("Telegram", "Qt5QWindowIcon", -1);
ex_KIB=w_KIB.widthclient; ey_KIB=w_KIB.heightclient;
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, w_KIB); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, w_KIB); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){sendmouse(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==2){sendmouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==3){sendmouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==4){sendmousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==5){sendmousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==6){sendmousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==7){sendmouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==8){sendmouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==9){sendmouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==10){sendmousemove(xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\BOT\test\tel.bmp");
}
win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[30][21];
start_();
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 1, 0, 0, 0, -1, 0, 100, 1, 11, 213, 54, 248, #sum_KIB, #x_KIB, #y_KIB);
function start_()
{
load_image_();
pause(1000);
w_KIB=window ("Telegram", "Qt5QWindowIcon", -1);
ex_KIB=w_KIB.widthclient; ey_KIB=w_KIB.heightclient;
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, w_KIB); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, w_KIB); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){sendmouse(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==2){sendmouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==3){sendmouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==4){sendmousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==5){sendmousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==6){sendmousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==7){sendmouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==8){sendmouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==9){sendmouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
if (m==10){sendmousemove(xs+xKIB+xm, ys+yKIB+ym, w_KIB); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\BOT\test\tel.bmp");
}
7. Kibor - 12 Марта, 2018 - 04:09:48 - перейти к сообщению
Возможно из за ошибки в первой строке, которая вообще не нужна.
Это читается как объявление переменной window, за которой идет ошибка.
Теперь Кибор считает функцию window переменной и она не работает.
Удалите эту строку.
Если не будет работать - получите указатель на контрол.
Цитата:
win window ("Telegram", "Qt5QWindowIcon", -1);
Это читается как объявление переменной window, за которой идет ошибка.
Теперь Кибор считает функцию window переменной и она не работает.
Удалите эту строку.
Если не будет работать - получите указатель на контрол.
8. Budni - 12 Марта, 2018 - 05:18:56 - перейти к сообщению
Kibor пишет:
Возможно из за ошибки в первой строке, которая вообще не нужна.
Это читается как объявление переменной window, за которой идет ошибка.
Теперь Кибор считает функцию window переменной и она не работает.
Удалите эту строку.
Если не будет работать - получите указатель на контрол.
Цитата:
win window ("Telegram", "Qt5QWindowIcon", -1);
Это читается как объявление переменной window, за которой идет ошибка.
Теперь Кибор считает функцию window переменной и она не работает.
Удалите эту строку.
Если не будет работать - получите указатель на контрол.
Собственно ошибка была из за того что я в win тоже вписал имя окна.
Но клик всё равно не происходит если курсор не на окне. Но кнопка мигает на которую клик должен произойти(для просмотра ссылки Вам необходимо авторизоваться)
9. Kibor - 12 Марта, 2018 - 05:31:36 - перейти к сообщению
Попробуйте указатель на контрол если он есть.
10. Budni - 12 Марта, 2018 - 05:36:45 - перейти к сообщению
Kibor пишет:
Попробуйте указатель на контрол если он есть.
Который в шпионе? Его нет.