Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - Hito

Страницы: [1] 2 3 ... 6
1
Предлагаю ввести функцию проверки наличия файла или каталога по маске, на подобии - GetFileList. Только GetFileList помещает в массив список всех найденных файлов, а я говорю о функции, которая будет искать 1 файл по маске.
Объясню - зачем это может быть нужно...
К примеру, мне нужно получить расстояние до моба и вместо того, чтобы мутить долгий процесс по вычислению цифр, из которых состоит число (их позицию и их значение), я просто заранее сохранил бы в папку "расстояние" скрины с разным расстоянием, а их название состояло бы из их контрольной суммы пикселей и значения расстояния. Пример - "130_847690405.bmp". А в скрипте написал бы подобный код:
Код: Clickermann
  1. IF($target > 0)
  2.   GETSCREEN($x1,$y1, $x2,$y2)
  3.   $count = PXLCRC ($x1,$y1, $x2,$y2)
  4.   IF(FExists_mask(STRCONCAT("screens\расстояние\*_",$count,".bmp")))
  5.      $rasstoyanie = STRCUT ($_return1, 1, STRPOS($_return1, "_")-1)
  6.   else
  7.      IF(FExists(STRCONCAT("screens\расстояние\цех\_",$count,".bmp")))
  8.      else
  9.         SCREENSHOTFIX($x1,$y1, $x2,$y2, STRCONCAT("screens\расстояние\цех\_",$count,".bmp")) // Здесь сохраняем заготовку, которую я потом просмотрю, допишу расстояние в ее названии и перекину в папку - "расстояние".
  10.      END_IF
  11.   END_IF
  12. END_IF
Подобный способ распознания того же расстояния был бы очень быстрым в сравнении со способами, в которых используются большие массивы...

2
Столкнулся с непонятной проблемой, после переустановки винды. Строка:
Код: Clickermann
  1. PXLREPLACE(1170,45, 1342,45, -1, 225)
закрашивает не одну полосу пикслей, а 4 полосы. Как будто я прописал:
Код: Clickermann
  1. PXLREPLACE(1168,43, 1344,46, -1, 225)
И закрашивает как-то не ровно... Надеюсь, на видео видно нормально.

https://www.youtube.com/watch?v=lrFWQ6TxZe4

3
Общие вопросы / Оповещения в VK API
« : Октябрь 22, 2019, 12:39:53 pm »
В связи с обломом темы с телеграмом, предлагаю мутить оповещения из кликера в ВК. В ВК есть ограничение на отправку запросов ботами сообществ, которое нас мало волнует - 20 запросов с секунду. Я ставил цикл в котором бот отправлял мне сообщения постоянно. В цикле была пауза в 50 мс. Так что нас это ограничение вполне устраивает. Приложение от ВК можно установить на мобилу и таким образом всегда быть в курсе того, что у вас там на компе происходит в скриптах. Через ВК так же удобно намутить пульт управления скриптами. Ниже видео, на котором смотрим, как создать сообщество, в котором будем получать оповещения.

ВАЖНЫЕ МОМЕНТЫ:
Тип группы указываем - Частная, чтобы в нашу группу никто не лез и в ней были только вы и ваш бот.
Какую версию API выбираем, ту и используем потом в скрипте. В нашем скрипте это последняя версия - "v=5.102"
После всех настроек сообщества, в него необходимо написать первое сообщение. На видео таким сообщением является - "Упс"
В с крипте - $user_id, указываем - ВАШ id в ВК.
В папку с exe-шником кликера кидаем две dll-ки (libeay32.dll и ssleay32.dll)  -  https://yadi.sk/d/hWk3k-Q2i6uTrA  и  https://yadi.sk/d/_gajbqM4iPuu6A (Clickermann вроде должен быть 32-битной версии. Хз - работает ли 64-битная версия с этими dll.)
Если сообщение не отправилось, копируем сообщение ошибки из лога и показываем (экстрасенсов тут нет).

Ссылка на видео по созданию и настройке сообщества.
https://www.youtube.com/watch?v=d1lQyQBVtBY&feature=youtu.be

Скрипт Clickermann-а, для отправки сообщений на русском языке.
Код: Clickermann
  1. $access_token =""
  2. $group_id =""
  3. $user_id =""
  4.  
  5.  
  6. //======================================= Отправка сообщений
  7. SUB(VK_message, $sms)
  8.   $random_id = ""
  9.   FOR($a=0,$a<35)
  10.      $s = RND(0, 9)
  11.      $random_id = STRCONCAT($random_id,$s)
  12.   END_CYC
  13.  
  14.   $message = ""
  15.   FOR($i=0,$i<strlen($sms))
  16.      $simvol = STRCUT ($sms, $i+1, 1)
  17.  
  18.      //= Таблица кодирования символов URL для русского алфавита.
  19.      SWITCH($simvol)
  20.         CASE("А")
  21.            $message = STRCONCAT($message,"%D0%90")
  22.         CASE("а")
  23.            $message = STRCONCAT($message,"%D0%B0")
  24.         CASE("Б")
  25.            $message = STRCONCAT($message,"%D0%91")
  26.         CASE("б")
  27.            $message = STRCONCAT($message,"%D0%B1")
  28.         CASE("В")
  29.            $message = STRCONCAT($message,"%D0%92")
  30.         CASE("в")
  31.            $message = STRCONCAT($message,"%D0%B2")
  32.         CASE("Г")
  33.            $message = STRCONCAT($message,"%D0%93")
  34.         CASE("г")
  35.            $message = STRCONCAT($message,"%D0%B3")
  36.         CASE("Д")
  37.            $message = STRCONCAT($message,"%D0%94")
  38.         CASE("д")
  39.            $message = STRCONCAT($message,"%D0%B4")
  40.         CASE("Е")
  41.            $message = STRCONCAT($message,"%D0%95")
  42.         CASE("е")
  43.            $message = STRCONCAT($message,"%D0%B5")
  44.         CASE("Ё")
  45.            $message = STRCONCAT($message,"%D0%81")
  46.         CASE("ё")
  47.            $message = STRCONCAT($message,"%D1%91")
  48.         CASE("Ж")
  49.            $message = STRCONCAT($message,"%D0%96")
  50.         CASE("ж")
  51.            $message = STRCONCAT($message,"%D0%B6")
  52.         CASE("З")
  53.            $message = STRCONCAT($message,"%D0%97")
  54.         CASE("з")
  55.            $message = STRCONCAT($message,"%D0%B7")
  56.         CASE("И")
  57.            $message = STRCONCAT($message,"%D0%98")
  58.         CASE("и")
  59.            $message = STRCONCAT($message,"%D0%B8")
  60.         CASE("Й")
  61.            $message = STRCONCAT($message,"%D0%99")
  62.         CASE("й")
  63.            $message = STRCONCAT($message,"%D0%B9")
  64.         CASE("К")
  65.            $message = STRCONCAT($message,"%D0%9A")
  66.         CASE("к")
  67.            $message = STRCONCAT($message,"%D0%BA")
  68.         CASE("Л")
  69.            $message = STRCONCAT($message,"%D0%9B")
  70.         CASE("л")
  71.            $message = STRCONCAT($message,"%D0%BB")
  72.         CASE("М")
  73.            $message = STRCONCAT($message,"%D0%9C")
  74.         CASE("м")
  75.            $message = STRCONCAT($message,"%D0%BC")
  76.         CASE("Н")
  77.            $message = STRCONCAT($message,"%D0%9D")
  78.         CASE("н")
  79.            $message = STRCONCAT($message,"%D0%BD")
  80.         CASE("О")
  81.            $message = STRCONCAT($message,"%D0%9E")
  82.         CASE("о")
  83.            $message = STRCONCAT($message,"%D0%BE")
  84.         CASE("П")
  85.            $message = STRCONCAT($message,"%D0%9F")
  86.         CASE("п")
  87.            $message = STRCONCAT($message,"%D0%BF")
  88.         CASE("Р")
  89.            $message = STRCONCAT($message,"%D0%A0")
  90.         CASE("р")
  91.            $message = STRCONCAT($message,"%D1%80")
  92.         CASE("С")
  93.            $message = STRCONCAT($message,"%D0%A1")
  94.         CASE("с")
  95.            $message = STRCONCAT($message,"%D1%81")
  96.         CASE("Т")
  97.            $message = STRCONCAT($message,"%D0%A2")
  98.         CASE("т")
  99.            $message = STRCONCAT($message,"%D1%82")
  100.         CASE("У")
  101.            $message = STRCONCAT($message,"%D0%A3")
  102.         CASE("у")
  103.            $message = STRCONCAT($message,"%D1%83")
  104.         CASE("Ф")
  105.            $message = STRCONCAT($message,"%D0%A4")
  106.         CASE("ф")
  107.            $message = STRCONCAT($message,"%D1%84")
  108.         CASE("Х")
  109.            $message = STRCONCAT($message,"%D0%A5")
  110.         CASE("х")
  111.            $message = STRCONCAT($message,"%D1%85")
  112.         CASE("Ц")
  113.            $message = STRCONCAT($message,"%D0%A6")
  114.         CASE("ц")
  115.            $message = STRCONCAT($message,"%D1%86")
  116.         CASE("Ч")
  117.            $message = STRCONCAT($message,"%D0%A7")
  118.         CASE("ч")
  119.            $message = STRCONCAT($message,"%D1%87")
  120.         CASE("Ш")
  121.            $message = STRCONCAT($message,"%D0%A8")
  122.         CASE("ш")
  123.            $message = STRCONCAT($message,"%D1%88")
  124.         CASE("Щ")
  125.            $message = STRCONCAT($message,"%D0%A9")
  126.         CASE("щ")
  127.            $message = STRCONCAT($message,"%D1%89")
  128.         CASE("Ъ")
  129.            $message = STRCONCAT($message,"%D0%AA")
  130.         CASE("ъ")
  131.            $message = STRCONCAT($message,"%D1%8A")
  132.         CASE("Ы")
  133.            $message = STRCONCAT($message,"%D0%AB")
  134.         CASE("ы")
  135.            $message = STRCONCAT($message,"%D1%8B")
  136.         CASE("Ь")
  137.            $message = STRCONCAT($message,"%D0%AC")
  138.         CASE("ь")
  139.            $message = STRCONCAT($message,"%D1%8C")
  140.         CASE("Э")
  141.            $message = STRCONCAT($message,"%D0%AD")
  142.         CASE("э")
  143.            $message = STRCONCAT($message,"%D1%8D")
  144.         CASE("Ю")
  145.            $message = STRCONCAT($message,"%D0%AE")
  146.         CASE("ю")
  147.            $message = STRCONCAT($message,"%D1%8E")
  148.         CASE("Я")
  149.            $message = STRCONCAT($message,"%D0%AF")
  150.         CASE("я")
  151.            $message = STRCONCAT($message,"%D1%8F")
  152.         CASE(" ")
  153.            $message = STRCONCAT($message,"%20")
  154.  
  155.         DEFAULT
  156.            $message = STRCONCAT($message,$simvol)
  157.      END_SWITCH
  158.   END_CYC
  159.  
  160.   $str = HTTPGET (STRCONCAT("https://api.vk.com/method/messages.send?user_id=",$user_id,"&group_id=",$group_id,"&random_id=",$random_id,"&message=",$message,"&v=5.102&access_token=",$access_token))
  161.   IF(STRPOS ($str, "response") > 0)
  162.      $VK_message = 1
  163.   else
  164.      $VK_message = 0
  165.      LOGWRITE ($str)
  166.   END_IF
  167. END_SUB
  168.  
  169.  
  170.  
  171. VK_message("Наше сообщение")
  172. IF($VK_message)
  173.   // Сообщение отправлено
  174. else
  175.   // Ошибка при отправке сообщения - смотрим лог
  176. END_IF
  177.  
  178. HALT

Получаем сообщения так:

Код: Clickermann
  1. $access_token =""
  2. $group_id =""
  3. $user_id =""
  4.  
  5.  
  6. $str = HTTPGET (STRCONCAT("https://api.vk.com/method/messages.getDialogs?group_id=",$group_id,"&v=5.102&access_token=",$access_token))
  7. IF(STRPOS ($str, "response") > 0)
  8.   $body = STRPOS ($str, "body")
  9.   IF($body)
  10.      // Есть сообщение
  11.  
  12.      $ns = $body+7
  13.      $ks = STRPOS ($str, char(34), $ns)
  14.      $komanda = STRCUT ($str, $ns, $ks-$ns)
  15.  
  16.      // Выводим сообщение в лог
  17.      LOGWRITE ($komanda)
  18.  
  19.      // Затираем сообщение в памяти бота, чтобы он нам его в цикле не показывал.
  20.      $str = HTTPGET (STRCONCAT("https://api.vk.com/method/messages.deleteConversation?user_id=",$user_id,"&group_id=",$group_id,"&v=5.102&access_token=",$access_token))
  21.   END_IF
  22. END_IF
  23.  
  24.  
  25. WAITMS(100)

4
Общие вопросы / Есть алтернативный способ?
« : Октябрь 07, 2019, 03:08:01 pm »
Ребят, может я как-то по-сложному делаю все это? Может есть способ полегче и побыстрее? Этот кусок выполняется пол секунды - это долго...
Код: Clickermann
  1. FOR($y=19,$y<30)
  2.   FOR($x=913,$x<947)
  3.      $col = PXL ($x, $y)
  4.      IF($col ! 16777087)
  5.         PXLREPLACE($x, $y, $x, $y, $col, 0)
  6.      END_IF
  7.   END_CYC
  8. END_CYC

5
Ребят, прошу прощения за вопрос - на форуме наверняка есть ответ. Да и в справке наверняка что-то можно придумать. Но что-то так устал все выискивать, пробовать и тестить...  Может кто ответит? Вот есть функции в кликере:
Код: Clickermann
  1. $count = PXLCRC ($X1,$Y1, $X2,$Y2)
  2. IF($count = 79389910)
  3.   // Картинка найдена
  4. END_IF
с помощью которых можно искать картинку на экране без самой картинки заготовленной. Но этот способ подходит, если картинку искать в четких координатах. А что можно придумать, что бы картинку можно было искать без заготовленного скрина, но не в четких координатах а в пределах этих координат?

6
Ребят, в конфиге есть настройка - "Дополнительная задержка (в милисекундах) после выполнения команды (0 - без задержки)". Как она работает вообще? Пауза добавляется после каких-то конкретных команд, или в конец скрипта, или как...?

7
Народ, все больше игр появляется, в которых взятие объекта в таргет по кнопке не возможно, а "пошарить" в таких проектах хочется  :) Можно у нас как-то намутить поиск "объекта" (чтобы по нему кликнуть мышкой), по скоплению определенных пикслей на экране? Или может какие-то другие предложения есть...?

9
Общие вопросы / IF_PICTURE_IN - Для новичков
« : Март 07, 2019, 01:01:05 pm »
Очень часто вижу на форуме, как новички пытаются разобраться в том, как находить нужную картинку на экране. Мне это понятно, так как несколько лет назад сам тут ломал голову не одни сутки над этим ))) Решил написать для новичков подробный мануал на эту тему. Приступим...

1:
Начнем с того, что у  Clickermann-а, как и у других программ, нет реальных глаз, как у человека, и для того, чтобы "визуально" работать с экраном, ему нужно сделать снимок этого экрана и поместить в свой графический буфер. Вот этот снимок он и делает с помощью команды GETSCREEN. Если эта команада без координат, то Clickermann помещает в свой графический буфер скриншот ВСЕГО вашего экрана. Если же будут указаны координаты, как - GETSCREEN (x1, y1, x2, y2 ), то Clickermann поместит в свой графический буфер скриншот, сделанный строго в указанных координатах. Поехали дальше...

2:
Если после GETSCREEN (в следующей строке) вы используете команду COLORMODE и указываете режим COLORMODE-а, как - COLORMODE(5), то в буфер Clickermann-а поступает не та картинка, которая находится на вашем экране, а измененная, в зависимости от режима, указанного в команде COLORMODE. Для наглядности (чтобы было понятно) можно поиграться со следующим кодом. Только прежде, чем его запускать в кликере, сохраните этот скрипт в какую-либо папку.
Код: Clickermann
  1. GETSCREEN // Clickermann помещает в свой графический буфер скриншот вашего экрана
  2. COLORMODE(3) // Применяет к этому скриншоту режим COLORMODE
  3. SCREENSHOTFIX(0,0, $_xmax,$_ymax, "file.bmp") // Сохроняет скриншот, находящийся в его буфере, в папку, в которой будет сохранен этот скрипт
  4. HALT // Останавливает скрипт
После того, как скрипт отработает, в папке, в которой он сохранен, появится скриншот вашего экрана. Откройте этот скриншот и посмотрите его. Потом установите в скрипте другой режим COLORMODE - к примеру COLORMODE(6), и повторите операцию. Вы увидите разницу, между первым скрином и тем, что появится во второй раз. Проанализировав эту разницу, вы можете понять - как работает команда COLORMODE. Идем далее...

3:
После того, как Clickermann отскринит ваш экран и поместит скрин в свой графический буфер, он будет готов приступить к анализу этого скриншота. В нашем случае, он будет готов к поиску вашей заготовленной картинки на том скриншоте, который находится в буфере Clickermann-а. Имейте в виду, что та заготовка картинки, которую вы будете искать, должна быть сделана в соответствующем режиме COLORMODE, который Clickermann применял к скриншоту вашего экрана, при помещении его в свой буфер, для анализа. Поиском картинки у нас занимается оператор - IF_PICTURE_IN. Не трудно понять, что перефразируя с английского языка, это выглядит как - ЕСЛИ_КАРТИНКА_В. И так, рассмотрим этот оператор подробнее...
Код: Clickermann
  1. IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 100)
  2. // IF_PICTURE_IN - Это - оператор, который говорит Clickermann-у о том, чем он будет заниматься, а именно - искать картинку
  3. // 0,0, $_xmax,$_ymax - Это координаты, в которых Clickermann будет искать картинку
  4. // file.bmp - Это собственно наш заготовленный скриншот, который мы будем искать "на экране"
  5. // О таких параметрах, как -1 и 100, вполне понятно написано в справке Clickermann-а
Думаю, что с этим тоже разобрались...

4:
Далее у нас идет оператор END_IF, говорящий о закрытии условия - ЕСЛИ_КАРТИНКА_В
Есть еще один оператор, который мы можем использовать во всей этой теме. Это - ELSE. Вариантов перевода этого оператора с английского языка не мало, но в нашем случае подходит вариант - ИНАЧЕ. Вот, как выглядит полностью наш скрипт вместе с этим оператором:
Код: Clickermann
  1. GETSCREEN // Clickermann помещает в свой графический буфер скриншот вашего экрана
  2. COLORMODE(3) // Применяет к этому скриншоту режим COLORMODE
  3. IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 100) // "ЕСЛИ_КАРТИНКА_В..." - ищет картинку в заданных координатах на скрине, находящемся в буфере.
  4.   // Тут мы прописываем команды на случай, если картинка найдена.
  5. ELSE // "ИНАЧЕ"
  6.   // Тут прописываем действия на случай, если картинка не найдена.
  7. END_IF // КОНЕЦ_"ЕСЛИ..." - конец условия

5:
Теперь создадим скрин, который в последствии будем искать на экране. Создадим скрин цифры "3:". Вставляем код в кликер, который дан в пункте "2:" этого поста, а далее смотрим видео...
https://www.youtube.com/watch?v=aasgn66DgtE

10
Ребят, можно как-то с кликера, запущенного с виртуалки (не из расшаренной папки, а именно - расположенного в виртуалке), получить данные, или записать данный в ини-файл, расположенный уже в расшаренной папке...? Это очень нужно, но у меня что-то нифига не получается...

12
Почему QIP Shot видит эти панели,



а Clickermann не видит...?


13
Прочее / Благодарность Johnny
« : Февраль 16, 2019, 10:03:35 am »
Доброе утро! Решил написать эту статью, так как совесть немного мучает...
По моим записям на форуме многие наверно сделали выводы, что я сижу дома с мощным сервером и практически штампую лаве в разных проектах, с помощью Clickermann-а, не имея благодарности к Johnny, в виде пожертвований. Я обрисую немного ситуацию...
Я женат на женщине, у которой есть малолетняя дочь (6 лет). Живем все вместе в двухкомнатной коммуналке (у нас комната). Работаю в храме за 20.000р в месяц. Жена работать не может, так как занимается дочерью. Я не буду сейчас перечислять то, за что мы должны заплатить в месяц (все коммунальные платы и так далее). Кто живет без мам и пап, тот сам понимает. Благодаря Clickermann-у мы имеем в месяц + 7.000р. И того 27.000р в месяц на семью с ребенком.
Johnny, не могу жертвовать, но очень тебе благодарен...


14
Ребят, такая проблема у меня... Обрисую ситуацию. У меня есть скрипт на 2000 строк. В этом скрипте имеется около 100 обращений к одному и тому же ini-файлу. Скрипт конечно не все 100 обращений использует за 1 свой цикл - разные обращения в разных ситуациях, но думаю, что за 1 цикл раз 30 он все же к ini обращается. Этот цикл по времени равен 700-900 мс. Иными словами - скрипт обращается к ini раз 30 в секунду. Я запускаю 15 виртуальных машин и в каждой виртуалке запускается игра + кликер с этим скриптом. И того мы имеем уже около 450 обращений в секунду к этому ini. Все работает нормально. В ини есть несколько параметров, которые правятся в ручную, для управления кликерами. Я написал прогу для того, чтобы не копаться в этом ini-файле, для внесения изменений в эти параметры, но как только я запускаю эту прогу и начинаю пользоваться, в кликерах (которые в виртуалках) начинают периодически выскакивать ошибки интерпритации строк. Это как раз те строки, которые вносят свои данные в этот ini. Строки типа:
Код: Clickermann
  1. INIWRITE("variables.ini", "time", $_time_t, $imya)
Сначала я думал, что такие ошибки вылазят тогда, когда к ini идет несколько обращений одновременно, но потом, почесав репу, я подумал - а почему тогда кликеры без этой проги не выдают эти ошибки...? Ведь 15 кликеров очень не мало обращений делают к этому ini и наверняка тоже не раз эти обращения получаются одновременными. Тогда я подумал, что возможно в кликре и в моей проге (написанной на delphi) все же может быть какие-то разные форматы обращения к ini-файлам, или еще что-то вроде этого, и эта мысль мне кажется более подходящей... Отсюда и вопрос к Johnny - а как в кликере (ведь он тоже написан на delphi) прописаны обращения к ini? Вот, напирмер у меня в проге так:

uses
  IniFiles...

var
  variables: TIniFile;

procedure TForm1.Button1Click(Sender: TObject);
begin
  variables := TIniFile.Create(ExtractFilePath(Application.ExeName)+'variables.ini');
  variables.WriteString('Agr1.1','relog','1');
  variables.Free;
end;

Или в чем может быть причина...?

15
Прочее / Система оповещений
« : Декабрь 30, 2018, 10:32:53 pm »
Предлагаю в этой теме выкладывать все возможные свои варианты!

С недавних пор озадачился тем, чтобы я мог получать на мобильник оповещения от кликера. Порыскав по форуму, я не нашел ни одной темы, в которой эта проблема была бы решена под ключ. Я НЕ НАШЕЛ! Если такая тема все же есть, то не надо меня закидывать тухлыми помидорами! И я ни в коем случае не унижаю функционал Clickermann-а! Я вообще считаю, что это в конце концов в первую очередь - АВТОКЛИКЕР, и со своей задачей он справляется превосходно! Это не проблема уважаемого Johnny, что мы хотим, чтобы нам кликер еще и кофе варил. От себя лично предлагаю один костыль, благодаря которому, можно получать оповещения в соцсеть - ВК.

Инструкция по использованию:
1 - Все три файла распаковываем в одну папку.
2 - Через любой браузер регистрируете себе левый аккаунт во вконтакте. Добавьте его в друзья тому аккаунту, на который будете посылать сообщения, иначе сообщения в сутки будут лимитированы по-моему.
3 - Запускаем VK_messenger.exe
В браузере программы НИЧЕГО НЕ НУЖНО ТЫКАТЬ МЫШКОЙ! Браузер в программе вообще сделан видным только для того, чтобы визуально контролировать процесс, если это нужно. Добавлю, что у браузера программы общие куки со штатным Internet Explorer.
4 - В графу "Логин рабочего аккаунта" прописываем email или телефон левого аккаунта, с которого вам будут поступать сообщения (лично у меня он без телефона).
5 - В графу "Пароль рабочего аккаунта" соответственно прописываете пароль от левого аккаунта.
6 - В графу "ID, на который нужно слать сообщения", прописываете свой ID в ВК (если нужно, чтобы сообщения приходили к вам).
7 - Немного подробней объясню про графу - "Time out, для сбора сообщений"... У меня, например, кликер работает в 18-ти окнах и иногда бывает (редко, но бывает), что во всех окнах практически одновременно выскакивает капча и из каждого окна кликер сообщает мне об этом. То есть, как минимум, мне в таком случае поступает 18 сообщений, между которыми может быть разница в несколько секунд. Так вот чтобы мне в ВК не приходило в таком случае 18 сообщений, а все эти 18 оповещений пришло бы в одном сообщении, я и намутил этот тайм аут. Программа видит, что поступило оповещение от кликера и ожидает несколько секунд - не поступят ли еще оповещения, чтобы добавить их в то же сообщение, которое она в последствии отошлет в ВК. Вот те несколько секунд, которые она будет ожидать, после поступления каждого сообщения, будут равны тому числу, которое будет у вас прописано в графе - "Time out, для сбора сообщений".
8 - Жмем кнопку - "Сохранить".
9 - Жмем кнопку - "Старт".

В архиве скрипт для кликера, в котором пример отправки сообщения.
Программа может нормально работать в свернутом виде и она сбоеустойчивая.
В каждом сообщении в ВК программа формирует идентификационную строку. По этой строке она проверяет - отправилось сообщение, или нет.
Если пропадет интернет по каким-либо причинам, программа каждые 3 секунды будет пытаться зайти на нужную страницу (страницу чата - кому посылает сообщения), и как только вновь появится интернет, она зайдет на эту страницу и отправит предыдущее сообщение, если оно окажется не отправленным, и продолжит свою работу.
Если по каким-то причинам программу выбросит на страницу авторизации, она снова авторизируется и продолжит работу.

Ссылка на архив с программой:
https://yadi.sk/d/bwKQaKgSPMWGZQ

Страницы: [1] 2 3 ... 6