Автокликер Clickermann :: Форум

Основной раздел => Прочее => Topic started by: Oraven on November 02, 2016, 04:25:38 PM

Title: GUI настроек
Post by: Oraven on November 02, 2016, 04:25:38 PM
Расширенные настройки Clickermann
Написал GUI расширенных настроек для кликера в которое включены все доступные настройки.

Файл Clickermann_settings.exe нужно положить в папку кликера "Clickermann\" и запускать от туда.
Скачать >>> GUI_Clickermann_settings_4.13.zip <<< (https://yadi.sk/d/3Z4Pm9ry3WkuQ6)
Скачать >>> GUI_Clickermann_settings_4.12.zip <<< (https://yadi.sk/d/2M-gFMNpy4Uge)

(https://pp.userapi.com/c844721/v844721660/6c749/fOi7FCOTYlw.jpg)
Title: Re: GUI настроек
Post by: Vint on November 02, 2016, 04:47:27 PM
Добро пожаловать в автоит  :)

P.S. только не нужно снова про "рекламу".  Одно другому не мешает. А вопрошателям из VK так совсем не мешает.
Title: Re: GUI настроек
Post by: Золотой on November 02, 2016, 04:57:26 PM
Добро пожаловать в автоит  :)
При чём здесь автоит? Вроде все настройки старые остались, только из редактирования файла выносятся в отдельное и ныне существующее окно настроек с меню.
Нужно допиливать горячие клавиши и включать в новую версию программы. 
Будем надеяться, что наличие кнопки "вернуть настройки по умолчанию" компенсирует энтузиазм новичков от кликанья по непонятным настройкам.
Всплывающие при наведении курсора подсказки хорошо-бы ко всем строкам добавить.
 Кнопку настроек в редактор добавить, раз уж появилось меню настроек редактора.
Title: Re: GUI настроек
Post by: Золотой on November 02, 2016, 05:00:59 PM
...А вопрошателям из VK так совсем не мешает.
Вопрошателю из VK пора заводить именную тему, а может даже группу.  ;D
Title: Re: GUI настроек
Post by: Vint on November 02, 2016, 05:06:54 PM
При чём здесь автоит?
Ну как бы это отдельная утилита, написанная на нём.
Это не правка исходников программы и "включать в новую версию программы" её можно только отдельной утилитой либо Джонни всё заново напишет в делфи.
Title: Re: GUI настроек
Post by: Золотой on November 02, 2016, 05:18:00 PM
При чём здесь автоит?
Ну как бы это отдельная утилита, написанная на нём.
Это не правка исходников программы и "включать в новую версию программы" её можно только отдельной утилитой либо Джонни всё заново напишет в делфи.
зачем всё заново писать? можно запуск этого "почти готового эксешника" привязать к нажатию кнопки " настройки ", ну будет в архиве и папке кликера одним файлом больше, это нестрашно. Дойдут руки, тогда и напишет заново.
Title: Re: GUI настроек
Post by: Vint on November 02, 2016, 05:30:35 PM
Это полумера. Но думаю так и останется. Можно только спрятать в дату чтоб не маячил в корне и пути поиска подправить.
Плохо только то, что это отдельный экзэшник на который антивирусы могут ругаться и аннигилировать его по тихому. Проблема только в этом.
А так я предлагал написать ещё и помошника... набор утилит в одном экзешнике, в котором будут всякие вспомогательные плюшки при создании скриптов.
Например показ области при установке курсора на одну из строк вида IF_PICTURE_IN... и прочих с диапазоном.
Показать процент совпадения заданного образца и реального участка.
Задавать контрольные опорные точки и смещения от них до курсора с последующим взятием координат/смещений.

Ну всякого барахла в голове крутилось.
Одному лень, вот если бы на пару с кем-то. Тут лучше больше голов на придумывание и обдумывание реализации.
Title: Re: GUI настроек
Post by: Золотой on November 02, 2016, 05:42:23 PM
Это полумера. Но думаю так и останется. Можно только спрятать в дату чтоб не маячил в корне и пути поиска подправить.
Плохо только то, что это отдельный экзэшник на который антивирусы могут ругаться и аннигилировать его по тихому. Проблема только в этом.
А так я предлагал написать ещё и помошника... набор утилит в одном экзешнике, в котором будут всякие вспомогательные плюшки при создании скриптов.
Например показ области при установке курсора на одну из строк вида IF_PICTURE_IN... и прочих с диапазоном.
Показать процент совпадения заданного образца и реального участка.
Задавать контрольные опорные точки и смещения от них до курсора с последующим взятием координат/смещений.

Ну всякого барахла в голове крутилось.
Одному лень, вот если бы на пару с кем-то. Тут лучше больше голов на придумывание и обдумывание реализации.
Писать на автоите с открытым исходным кодом, а результат будет такой-же в виде отдельного, постоянно модифицируемого разработчиками эксешника?
Title: Re: GUI настроек
Post by: Vint on November 02, 2016, 05:53:55 PM
утилиты - да.
Title: Re: GUI настроек
Post by: Oraven on November 02, 2016, 08:06:29 PM
Действительно проверил на вирус тотале два антивиря сигналят. Правда малоизвестные бесплатные антивири верещат на все что угодно. Интересно что перекомпилировал без UPX сжатия и сигналить начаили уже 4  ;D

Поэтому добавил исходный код. Можно самому скомпилировать если параноя не дает покоя.

На счет горячих клавишь, все сложно. Сделать так как в кликере вообще не представляю как. А если обычным  списком из дропбокса то дофига кода нужно написать чтобы сопоставлять буквы с цифрами и все это вычислять.

Понятно что Джонни не хочет заморачиваться, я над этим сутки сидел, вроде просто а дофига всего писать нужно.
Title: Re: GUI настроек
Post by: Vint on November 03, 2016, 02:07:02 PM
Оно так и есть, GUI отнимает много времени.
Кстати, там есть косяк когда сжатие вроде и включено, но размер остаётся большой. Было на одной из версий именно на сильном или максимальном сжатии. И при одном из способов запуска компиляции.
У тебя, судя по размеру файла, сжатие не сработало. Обычно на таком маленьком скрипте выходит ~ 300 кБ
Title: Re: GUI настроек
Post by: Луций on November 03, 2016, 05:44:49 PM
а есть где то гайд по создани этой гуишки или может напишет кто?

а то создать окно с полями и кнопками просят достаточно часто
Title: Re: GUI настроек
Post by: Oraven on November 04, 2016, 10:28:57 AM
Оно так и есть, GUI отнимает много времени.
Кстати, там есть косяк когда сжатие вроде и включено, но размер остаётся большой. Было на одной из версий именно на сильном или максимальном сжатии. И при одном из способов запуска компиляции.
У тебя, судя по размеру файла, сжатие не сработало. Обычно на таком маленьком скрипте выходит ~ 300 кБ

Не в этом дело. Я просто лишних инклудов повтыкал, а Stripper почему то при компиляции выдавал ошибку и использовался скрипт без оптимизации с кучей ненужных данных. Щас подчистил лишнее скомпилировал, ошибок нет, все отработало как нужно и размер стал вдвое меньше.


а есть где то гайд по создани этой гуишки или может напишет кто?

а то создать окно с полями и кнопками просят достаточно часто

Вот здесь можно скачать русскую справку которая по ближе к максимальной версии чем та что на оф сайте.
http://autoit-script.ru/index.php?topic=10070.0 (http://autoit-script.ru/index.php?topic=10070.0)
Или справка онлайн http://autoit-script.ru/autoit3_docs/ (http://autoit-script.ru/autoit3_docs/)

Используй Koda для визуального создания GUI. Он входит в состав кастомной версии SciTE (https://www.autoitscript.com/site/autoit-script-editor/downloads/) найдешь его в папке SciTE.
Однако там тоже масса нюансов.
Title: Re: GUI настроек
Post by: Vint on November 04, 2016, 10:42:26 AM
Я кодой пробовал только в начале.
Сильно ограничено, плюс мусор в коде. Ну и не так гибко.
Title: Re: GUI настроек
Post by: Oraven on November 04, 2016, 11:03:04 AM
Я кодой пробовал только в начале.
Сильно ограничено, плюс мусор в коде. Ну и не так гибко.

Она нужна для заготовки GUI с нуля. Собрать так сказать начальный макет.
Title: Re: GUI настроек
Post by: Cleoss on November 06, 2016, 05:16:11 PM
Написал GUI настроек для кликера в которое включены все доступные настройки.
Правда без горячих клавиш. Не осилил я их пока.  ::)
Программа написана на AutoIt3 3.3.14.2
Файл Clickermann settings.exe нужно положить в папку кликера "Clickermann\" и запускать от туда.

По поводу горячих клавиш. Орейвен, а можно как-нибудь повесить хоткей в фоновой программульке только для основной, но по-моему самой важной функции Клмна -- "Перечитать файл скрипта с диска"? То есть по идее логика должна быть такой: резидентная программка сидит скажем в трее и по нажатию на ОДНУ (желательно одну либо же накрайняк две настраиваемые) кнопку она просто обновляет с диска, загружает в Кликерманн обновлённый скрипт (читай: открыть последний скрипт из списка недавних скриптов Клмна) и этот скрипт уже сразу можно запустить на выполнение, потому что при доводке скрипта до идеале приходится его многократно изменять во внешнем редакторе и потом тратить по нескольку ненужных кликов на то, чтоб открыть Клмн, открыть список ресентов, выбрать последний файл и опять свернуть Клмн. У меня проблема с обновлением скрипта осложняется на порядок ещё и тем, что мышка на компе сломалась (кликает дважды или трижды вместо одного раза, чем не хило осложняет работу постоянно, а приобрести новую сейчас нет возможности), так что подобный хоткей думаю нормально бы помог многим скрипт-мейкерам в будущем (надо бы ещё разные утилитки к Клмну собирать в одну подборку).

Также не вижу в утилитке настроек из файлов data/config.ini + config_editor.ini, их тоже можно было бы парсить и выводить двумя отдельными вкладками в виде ГУИшных настроек, имхо самые нужные оттуда настройки (при первоначальном запуске кликера): only_tray (ставлю параметр в ноль), history_size (увеличиваю по вкусу больше стандартных 5), delay_between_lines (в ноль) и smart_delay, а также этот долбанный aim_speed, который из-за глюка не восстанавливается в стандартный при выходе из редактора без закрытия лупы (зря его автор ваще трогает без спроса). Не буду против и добавлений остальных конфигов их этих двух файлов.

Остаётся под вопросом, к каком из кликеров будут применяться параметры, если (вдруг!) окажутся запущены сразу несколько копий Клмна (мож, ввести поле выбора файла, в котором можно будет ввести путь к нужной копии?).
Title: Re: GUI настроек
Post by: Cleoss on November 06, 2016, 08:08:55 PM
Ой, стоп, присмотрелся к скринам внимательнее и обнаружил там некоторые ожидаемые функции)) Просто они там подписаны немного непривычно, по-русски.

ПС. Всмотрелся и нашёл оказывается все нужные настройки из текстовых файликов. Орейвен респектос! Не хватает теперь ещё настройки, чтоб игнорировались при записи команды делеев, а то долго их потом сидеть и удалять вручную. Вы там что, на Гитхаб выложили и вместе с Винтом дорабатываете ау-код?
Title: Re: GUI настроек
Post by: Oraven on November 06, 2016, 09:50:10 PM
Остаётся под вопросом, к каком из кликеров будут применяться параметры, если (вдруг!) окажутся запущены сразу несколько копий Клмна (мож, ввести поле выбора файла, в котором можно будет ввести путь к нужной копии?).

Программа работает только в каталоге кликера. При старте проверяет наличие файла data/config.ini и если его нет завершает свою работу.
Кликер читает свои настройки только при старте, поэтому чтобы настройки сделанные этим конфигуратором применились кликер должен быть перезапущен.

Я добавил туда все доступные настройки кроме горячих клавиш.
Некоторые пункты при наведении мыши выдают подсказку что они из себя представляют.

Не хватает теперь ещё настройки, чтоб игнорировались при записи команды делеев, а то долго их потом сидеть и удалять вручную.

Пиши скрипт в ручную, это куда проще чем пытаться разобрать запись.

Title: Re: GUI настроек
Post by: Oraven on November 08, 2016, 08:45:07 PM
Обновил программку, теперь так же доступны горячие клавиши.
Title: Re: GUI настроек
Post by: Cleoss on November 22, 2016, 01:08:18 PM
У меня две копии кликера, с разными настройками с разных компов и соответственно с различными хоткеями у каждой копии. Скопировал программу эту в обе папки с клмн, но при этом обе программки показывают одинаковые хоткеи, хоткеи одной копии, не учитывая хоткеи другой.

Отсюда вопрос: это только хоткеи программка читает из реестра (куда их очевидно должен писать клмн, раз уж в обоих копиях одинаковые хоткеи) или некоторые/все настройки тоже считываются из реестра (или какого-то другого общего хранилища)?

Не могу зафиксировать программку поверх других окон своими стандартными средствами, как это легко делаю с другими окнами. Также окошко программы каждый раз забывает о своём последнем местоположении.
Title: Re: GUI настроек
Post by: Vint on November 22, 2016, 04:05:29 PM
Ты что-то напутал. Программа работает только в директории в которой находится. И берёт и редактирует файлы из поддиректории \data

Хоткеи не хранятся в реестре, они хранятся в файле config.ini

Code: [Select]
[hotkey]
start=84
stop=16468
record=32850
ins1=32849
cwnd=32855

В реестре хранится только ассоциация файлов cms.

Проверил две копии. Всё редактируется раздельно, раздельными настройщиками. Всё помнит.

Запоминание местоположения не реализовано. Его можно сделать, но нет смысла для такой мелкой утилиты, т.к. местоположение нужно хранить или в реестре или в дополнительном файле. Зачем это? Лишний файл ini будет болтаться... а с реестром могут возникнуть проблемы из-за доступа к нему в параноидальных режимах защиты.

Используемая мной утилита всё зафиксировала поверх. Проблем не возникло.

Я совсем не понимаю зачем может понадобиться частое редактирование настроек? Я их редактирую один раз, после смены версии. Всё.
Title: Re: GUI настроек
Post by: Cleoss on November 23, 2016, 12:54:03 AM
Не знаю, то ли Винда у мя заколдованная какая, но зараза, вот все программы у меня действуют не так, как у всех остальных.
Образ ОСки не становится в виртуалку (ни в VMware, ни в VirtualBox), кликер не так кликает/записывает/привязывается, вот ещё и скомпиленный автоит чудит.

Что за уличная магия и почему я такой рак? Я мозгом понимаю, что настройки в ини хранятся, но две копии показывают упорно одни и те же хоткеи, втф?

>> Используемая мной утилита всё зафиксировала поверх. Проблем не возникло.
То есть она переписывает сразу ВСЕ параметры? и именно теми значениями, которые вбиты в формы, а не дефолтными?

>> Я совсем не понимаю зачем может понадобиться частое редактирование настроек? Я их редактирую один раз, после смены версии. Всё.
Да собсна, по большому счёту так и есть (часто редактировать не надо), но раз есть утилитка, то нужно ж её погонять и помозговать, как её можно допилить до +- идеала и тем упростить работу мб сотням людей. Вот я к примеру не разу не пользовался автоитом (страшный он))), но смотрел исходник программки, и думаю, что хотелось бы иметь для себя перекомпиленную версию утилиты именно с теми дефолтными параметрами, которые выставлены у меня (и которые МНЕ нра), а не которые идут с Клмном по умолчанию. Так что хотелось бы услышать пару слов о том, как по-быстрому скомпилить свою версию утилитки (с изменёнными параметрами) в автоите, при этом самыми большими вопросами для меня являются совместимость разных версий и подключение разных либ (в т. ч. все ли они не включены в комплект поставки автоита и так же все ли их версии можно брать, особенно если автоит взят не самый свежий):
[spoiler=Подключённые к проекту утилиты либы (не наю, какие из них уже внедрены и ваще внедрены ли? Хоть одна из них?)]
Code: [Select]
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiComboBox.au3>
#include <File.au3>
#include <FontConstants.au3>
#include <WinAPIGdi.au3>
#include <Misc.au3>
#include <Array.au3>
#include <UserInput.au3>
#include <EditConstants.au3>
[/spoiler]
То есть все эти либы придётся отдельно искать на форуме автоита и скачивать, чтобы включить в утилиту и успешно скомпилировать её или мож (но маловероятно) они подключаются сами из нэта на манер расширений/пакетов Linux/Npm/gc?

>> Запоминание местоположения не реализовано.
>> Его можно сделать, но нет смысла для такой мелкой утилиты,
>> т. к. местоположение нужно хранить или в реестре или в дополнительном файле.
>> Зачем это? Лишний файл ini будет болтаться...
Почему отдельный ини? Можно прямо в том же конфиге хранить, но в другой секции.
И с Клмном это подозреваю, что не будет никак пересекаться и тем более влиять на него. Или я не прав?
Что, Клмн дурной что ли, чтобы лезть в секцию, которая в нём не задана, и читать параметры, которые в нём не прописаны?!?
Пусть все допконфиги хранятся в том же ини-файлике, что и сеттинги Клмна, аллилуйя!
Title: Re: GUI настроек
Post by: Oraven on November 23, 2016, 06:28:45 AM
Нет, эти инклуды поставляются в комплекте программы. То что я скачивал отдельно я приложил в архив. Достаточно скачать ту версию которую я указал в первом посте и все должно работать.
Title: Re: GUI настроек
Post by: Vint on November 23, 2016, 11:40:21 AM
Не знаю, то ли Винда у мя заколдованная какая, но зараза, вот все программы у меня действуют не так, как у всех остальных.

Я заметил  :D

Так что хотелось бы услышать пару слов о том, как по-быстрому скомпилить свою версию утилитки (с изменёнными параметрами) в автоите, при этом самыми большими вопросами для меня являются совместимость разных версий и подключение разных либ (в т. ч. все ли они не включены в комплект поставки автоита и так же все ли их версии можно брать, особенно если автоит взят не самый свежий)

Автоит должен быть тот, под который делалось - AutoIt3 3.3.14.2.
У меня, например 3.3.8.1 и нет библиотеки WinAPIGdi.au3

Почему отдельный ини? Можно прямо в том же конфиге хранить, но в другой секции.
И с Клмном это подозреваю, что не будет никак пересекаться и тем более влиять на него. Или я не прав?
Может это так, а может и нет. Смотря как реализовано.
Никогда нельзя надеяться что сделано так, как ты подумал в первый момент.
Система закрытая. ini не публичный. Вполне может быть что чтение всех параметров сделано так:
- получаем список всех секций из ini.
- в цикле обходим этот список секций и сопоставляем группу параметров согласно словарю...

Так меньше кода выйдет.
Так хоть и компактней, но не очень хорошо. И в нашем случае не так, что легко проверяется.
Но никогда не надейся что код который ты не видишь реализован так, как ты думаешь.

и думаю, что хотелось бы иметь для себя перекомпиленную версию утилиты именно с теми дефолтными параметрами, которые выставлены у меня (и которые МНЕ нра), а не которые идут с Клмном по умолчанию
:o Так утилита читает текущие настройки. Параметры по умолчанию там присваиваются только при отсутствии нужной настройки.
Title: Re: GUI настроек
Post by: Vint on November 23, 2016, 11:41:54 AM
Обновил программку, теперь так же доступны горячие клавиши.
Я бы последнюю портянку переделал
Code: [Select]
Func _KeyRep($iKeyIn)
    Local $key_name = ''
    Local $aKey[59][2] = [['8','BACKSPACE'],['9','TAB'],['13','ENTER'],['16','SHIFT'],['17','CTRL'],['18','ALT'],['19','PAUSE'],['20','CAPSLOCK'],['27','ESC'], _
        ['32','SPACE'],['33','PAGEUP'],['35','END'],['36','HOME'],['37','LEFT'],['38','UP'],['39','RIGHT'],['40','DOWN'],['45','INSERT'],['46','DELETE'],['91','LWIN'],['92','RWIN'], _
        ['96','NumPad 0'],['97','NumPad 1'],['98','NumPad 2'],['99','NumPad 3'],['100','NumPad 4'],['101','NumPad 5'],['102','NumPad 6'],['103','NumPad 7'],['104','NumPad 8'],['105','NumPad 9'],['106','NumPad *'],['107','NumPad +'],['109','NumPad -'],['110','NumPad .'],['111','NumPad /'], _
        ['112','F1'],['113','F2'],['114','F3'],['115','F4'],['116','F5'],['117','F6'],['118','F7'],['119','F8'],['120','F9'],['121','F10'],['122','F11'],['123','F12'], _
        ['186',';'],['187','='],['188',','],['189','-'],['190','.'],['191','/'],['192','~'],['219','['],['220','\'],['221',']'],['222',"'"]]

    Switch $iKeyIn
        Case 48 To 57, 65 To 90
            $key_name = Chr($iKeyIn)
        Case Else
            For $ik = 0 To UBound($aKey) - 1
                If Int($aKey[$ik][0]) = $iKeyIn Then
                    $key_name = $aKey[$ik][1]
                    ExitLoop
                EndIf
            Next
    EndSwitch
    Return $key_name
EndFunc   ;==>_KeyRep
Title: Re: GUI настроек
Post by: Cleoss on November 23, 2016, 06:31:34 PM
У меня, например 3.3.8.1 и нет библиотеки WinAPIGdi.au3
А почему нет либы? Потому что она вышла в более поздней версии АУ или всё-таки она внешняя?
И библиотеки, они ж наверно тоже с течением времени изменяются и наверно достаточно часто?
И что, там на сайте хранятся разные версии либ под разные версии ау?
И мне вот непонятно, там же как я понял либы пишутся многие сообществом, а не разрабами. Так как же их добавляют в сборку, это безопасно? и какой критерий добавления в сборку? И много ли там либ ваще в комплекте? Ух, вопросы-вопросы..

Может это так, а может и нет. Смотря как реализовано.
Никогда нельзя надеяться что сделано так, как ты подумал в первый момент.
Система закрытая. ini не публичный. Вполне может быть что чтение всех параметров сделано так:
- получаем список всех секций из ini.
- в цикле обходим этот список секций и сопоставляем группу параметров согласно словарю...
Да, возможно, всё и не так, как может показаться впервые, но ведь это станет видно сразу при изменении/добавлении секций/параметров? Для этого не надо и программу писать, просто протестировать, а если буит работать, то.. оставить как есть)) Можно будет пользоваться, пока что-то не пойдёт не так.
В противном случае какая проблема в том, если утилита будет создавать свой ини в папке Клмна? Да, где-то, на каких-то уникальных компах, не будет на это у юзера привилегий, но на то он и юзер, чтоб хоть иногда, хоть при установке включать моск.

:o Так утилита читает текущие настройки. Параметры по умолчанию там присваиваются только при отсутствии нужной настройки.
Нет, ты не понял. Охота такую феню себе, чтоб допустим после переустановки системы можно было бы просто запустить эту утилитку (изменённую, с индивидуальными настройками), чтобы там в настройках не копаться и она б переписала дефолтные настройки моими фаворитами.
Title: Re: GUI настроек
Post by: Oraven on November 24, 2016, 07:29:57 AM
У меня, например 3.3.8.1 и нет библиотеки WinAPIGdi.au3
А почему нет либы? Потому что она вышла в более поздней версии АУ или всё-таки она внешняя?
И библиотеки, они ж наверно тоже с течением времени изменяются и наверно достаточно часто?
И что, там на сайте хранятся разные версии либ под разные версии ау?
И мне вот непонятно, там же как я понял либы пишутся многие сообществом, а не разрабами. Так как же их добавляют в сборку, это безопасно? и какой критерий добавления в сборку? И много ли там либ ваще в комплекте? Ух, вопросы-вопросы..

Последняя версия AutoIt както поменялась в сравнении с предыдущими. При желании можно скачать более старую версию, они так же доступны.
Все эти дополнительные скрипты находятся в папке Include.

Нет, ты не понял. Охота такую феню себе, чтоб допустим после переустановки системы можно было бы просто запустить эту утилитку (изменённую, с индивидуальными настройками), чтобы там в настройках не копаться и она б переписала дефолтные настройки моими фаворитами.

В кликере мало настроек которые можно изменить потратив 10 сек и забыть об этом на длительное время.
Не говоря о том уже что кликер портативен и разумный человек бекапит все необходимое при переустановки винды. Достаточно скопировать папку кликера в которой находится папка твоих проектов, и переноси её куда угодно, все настройки переедут вместе с кликером.