Загрузил скрипт на сервер, собрал демо ехе с загрузкой и запуском с сервера.
Скинул себе на другой пк, запускаю, появляется моя менюшка. Жму "запустить",
менюшка исчезает а скрипт ничего не делает. В чем проблема?! на своем пк запускаю
эту же демку -- все работает.
(Добавление)
выяснилось, что с трансляцией все норм. Просто скрипт не работает на другом пк, а почему не понимаю...
Вообщем, написан бот для рыбалки в игре в фоновом режиме с привязкой по указателю к окну игры. У меня все прекрасно работает. Скинул человеку, он поставил такое-же разрешение игры как и у меня при написании скрипта. Но после запуска ничего не происходит. В чем может быть проблема?
1. imbaQQ - 20 Ноября, 2019 - 10:36:34 - перейти к сообщению
2. 007wan - 20 Ноября, 2019 - 11:50:41 - перейти к сообщению
Я бы прозванивал весь код messagebox ми. Сначала там, где работает, а потом там, где не работает. Может какой-то условие не выполняется из-за переменной, которая меняется из-за чего-то,например, указатель окна не получает из-за браузера. У меня такое было: старый браузер , при получении указателя на флеш-окно получает указатель, а на новом браузере - нет. Виноваты разработчики, но я настойчив и упаковал в ресурсы старую версию и при запуске он предлагает ее установить:)
3. imbaQQ - 20 Ноября, 2019 - 12:39:40 - перейти к сообщению
007wan пишет:
Я бы прозванивал весь код messagebox ми. Сначала там, где работает, а потом там, где не работает. Может какой-то условие не выполняется из-за переменной, которая меняется из-за чего-то,например, указатель окна не получает из-за браузера. У меня такое было: старый браузер , при получении указателя на флеш-окно получает указатель, а на новом браузере - нет. Виноваты разработчики, но я настойчив и упаковал в ресурсы старую версию и при запуске он предлагает ее установить
он вообще не работает) кажется из-за привязки к окну игры по указателю. Но ведь у меня то работает, ну что же за ерунда то такая.
4. 007wan - 20 Ноября, 2019 - 12:44:00 - перейти к сообщению
А код можно?
PS: не краду:) в рыбалку не играю, код в визуалке ужасный, поэтому пишу свой построчно.
(Добавление)
Наверное путь к картинкам одинаковый, а на разных компах должен разный
PS: не краду:) в рыбалку не играю, код в визуалке ужасный, поэтому пишу свой построчно.
(Добавление)
Наверное путь к картинкам одинаковый, а на разных компах должен разный
5. imbaQQ - 20 Ноября, 2019 - 15:56:32 - перейти к сообщению
007wan пишет:
А код можно?
PS: не краду в рыбалку не играю, код в визуалке ужасный, поэтому пишу свой построчно.
(Добавление)
Наверное путь к картинкам одинаковый, а на разных компах должен разный
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";
}
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.
В случае с ботом, код начинается с закидывании удочки - чего он конечно же не делает. Отсюда вывод, что похоже он не видит окно игры) Но вот почему.
6. ivantu - 20 Ноября, 2019 - 16:12:11 - перейти к сообщению
Возможно в виндовс 10 масштаб не 100% если моник огромный, как правило это так... может еще что то
7. imbaQQ - 20 Ноября, 2019 - 17:07:55 - перейти к сообщению
ivantu пишет:
Возможно в виндовс 10 масштаб не 100% если моник огромный, как правило это так... может еще что то
из-за этого скрипт не может привязаться к окну? из-за масштаба окна?
(Добавление)
Проверил. Скрипт не работает на другом пк не в фоновом режиме, не без фонового режима. Не по указателю, окну, котролу. Вот какого черта?!
(Добавление)
скрипт бота проверил*
8. Zireael - 20 Ноября, 2019 - 17:53:52 - перейти к сообщению
Причин полно. Все функции возвращают результат работы. Дописывайте проверку и выводите сообщение выполнилось то или иное действие. Только так можно найти в каком месте что-то не работает как надо.
Пример нашлось окно или нет:
Пример нашлось окно или нет:
CODE:
win w=window (-1, "Notepad", -1); // указатель на окно
if(w)messagebox("Окно найдено"); // если найдено
else messagebox("Окно не найдено"); // если не найдено
if(w)messagebox("Окно найдено"); // если найдено
else messagebox("Окно не найдено"); // если не найдено
9. imbaQQ - 21 Ноября, 2019 - 10:43:11 - перейти к сообщению
вопрос решен. запуск от имени админа)