007wan |
Отправлено: 20 Ноября, 2019 - 19:50:41
|
Эксперт
Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017
Репутация: -2
|
Я бы прозванивал весь код messagebox ми. Сначала там, где работает, а потом там, где не работает. Может какой-то условие не выполняется из-за переменной, которая меняется из-за чего-то,например, указатель окна не получает из-за браузера. У меня такое было: старый браузер , при получении указателя на флеш-окно получает указатель, а на новом браузере - нет. Виноваты разработчики, но я настойчив и упаковал в ресурсы старую версию и при запуске он предлагает ее установить:) |
|
|
imbaQQ |
Отправлено: 20 Ноября, 2019 - 20:39:40
|
Наблюдатель
Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2019
Репутация: 0
|
007wan пишет: Я бы прозванивал весь код messagebox ми. Сначала там, где работает, а потом там, где не работает. Может какой-то условие не выполняется из-за переменной, которая меняется из-за чего-то,например, указатель окна не получает из-за браузера. У меня такое было: старый браузер , при получении указателя на флеш-окно получает указатель, а на новом браузере - нет. Виноваты разработчики, но я настойчив и упаковал в ресурсы старую версию и при запуске он предлагает ее установить
он вообще не работает) кажется из-за привязки к окну игры по указателю. Но ведь у меня то работает, ну что же за ерунда то такая. |
|
|
imbaQQ |
Отправлено: 20 Ноября, 2019 - 23:56:32
|
Наблюдатель
Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2019
Репутация: 0
|
007wan пишет: А код можно?
PS: не краду в рыбалку не играю, код в визуалке ужасный, поэтому пишу свой построчно.
(Добавление)
Наверное путь к картинкам одинаковый, а на разных компах должен разный
дак он же запаковывает файлы res в ехешник.
Код бота не дам, а вот проблема 1 в 1 с данным тестовым кодом в винраре)
CODE:win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[3][7];
start_();
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 1, 0, 0, -1, 0, 0, 0, -1, -1, -1, 10, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
function start_()
{
load_image_();
pause(1000);
w_KIB=window (-1, "SysListView32", window ("Архив WinRAR.rar (пробная копия)", "WinRarWindow", -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 mov_m, int mov_x, int mov_y, int p3, int wait, int cycle, 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, tx, ty, tcycle=0;
sty: pause(p1);
sumKIB=0;
if (t!=0) 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); goto hy;}
if (m==2){sendmouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==3){sendmouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==4){sendmousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==5){sendmousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==6){sendmousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==7){sendmouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==8){sendmouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==9){sendmouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==10){sendmousedbl(LEFT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==11){sendmousedbl(MIDDLE, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==12){sendmousedbl(RIGHT, xs+xKIB+xm, ys+yKIB+ym, w_KIB); goto hy;}
if (m==13)sendmousemove(xs+xKIB+xm, ys+yKIB+ym, w_KIB);
hy: if (mov_m==1)sendmousemove(mov_x, mov_y, w_KIB);
if (m>0 && m<14)pause(p3);
if (wait!=-1)
{
for (int ttim=gettime(); gettime()-ttim<wait; sleep(20))
{
if (r==0 && p==100){if (findimage(1, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, w_KIB)==0)return sumKIB;}
else {if (findimage(1, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, w_KIB)==0)return sumKIB;}
}
if (tcycle<cycle){tcycle++; goto sty;}
return 0;
}
return sumKIB;
}
function load_image_()
{
string temp_fold=tempfolder();
unpack("C:\Users\User\Desktop\Kibor\LA\Новая папка\qq2.bmp", temp_fold+"qq2.bmp", 1);
loadimage (#Image_0_KIB[0][0], temp_fold+"qq2.bmp");
}
RESOURCE
{
"C:\Users\User\Desktop\Kibor\LA\Новая папка\qq2.bmp";
}
тут тоже получается что на моем пк в винрар жмет на папку, а на другом пк нет.
Фоновый режим, по указателю на контрол. В обоих случаях winrar (пробный период).
Единственное отличие: на моем пк Windows7, на пк где тестирую 10.
В случае с ботом, код начинается с закидывании удочки - чего он конечно же не делает. Отсюда вывод, что похоже он не видит окно игры) Но вот почему.(Отредактировано автором: 21 Ноября, 2019 - 00:01:35) |
|
|
imbaQQ |
Отправлено: 21 Ноября, 2019 - 01:07:55
|
Наблюдатель
Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2019
Репутация: 0
|
ivantu пишет: Возможно в виндовс 10 масштаб не 100% если моник огромный, как правило это так... может еще что то
из-за этого скрипт не может привязаться к окну? из-за масштаба окна?
(Добавление)
Проверил. Скрипт не работает на другом пк не в фоновом режиме, не без фонового режима. Не по указателю, окну, котролу. Вот какого черта?!
(Добавление)
скрипт бота проверил*(Отредактировано автором: 21 Ноября, 2019 - 01:08:14) |
|
|
|