Author Topic: [РЕШЕНО!] Ошибки в SUB-подпрограммах (макросах), не работает инклуд, инклюд  (Read 6458 times)

0 Members and 6 Guests are viewing this topic.

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Привет, ребята!

Расскажите мне, какие у вас бывают несостыковки при подключении внешних скриптов и при выносе повторяющихся, одинаковых и неизменяемых функций вовне, в подключаемый инклудом скрипт.

Quote from: Cleoss
Code: (clickermann) [Select]
//И сразу забегая наперёд СКАЖУ:
##############################
// Мой трабл с #include случился из-за того, что я по недосмотру забыл после тестирования длинного скрипта убрать оператор halt из самого конца файла, подключённого, через инклуд.

// Также в инклюзируемом ака вставляемом файле не рекомендую использовать #name, иначе тот будет забивать аналогичную директивы из вашего основного скрипта, в который вы ставите #include. 
// И теперь в директиве инклюд нельзя указывать полный путь к файлу, только относительный, увы.
// То есть щас нельзя написать вот так: #include "H:\dlz\op\clickermann_last\Clickermann4.13b3\projects\mposback.cms"
// и приходится мудрить с уровнями, вроде этого: INIWRITE("..\data\config.ini", "skip_error", "0", "core")
// Хотя впрочем это всё изик, если просто ты предупреждён и вооружён обо всех напастях.
##############################


Приведу свой пример. Если что, у меня Вин10. Создаю вот такой файлик mpostest.cms, который будет использовать простейший инклюд без передаваемых параметров:

Code: (clickermann) [Select]
// указываю полный путь (на всякий случай) к подключаемому файлу
#include "H:\dlz\op\clickermann_last\Clickermann4.13b3\projects\mposback.cms"
// #include "mposback.cms" // вариант с относительным путём не срабатывает
// хотя оба скрипта лежат в одной папке

// Узнаём исходные координаты мыши
mpos()
// $xmcoord=$_xmouse
// $ymcoord=$_ymouse

// Делаем клик в другом месте
rclick(500,200)
wait(1)

// Возвращаем мышь в исходную позицию
mback()
// move($xmcoord,$ymcoord)

halt

К нему подключаю этот файл mposback.cms с описанными в нём функциями, вызываемыми из первого файла:

Code: (clickermann) [Select]
sub(mpos)
$xmcoordt=$_xmouse
$ymcoordt=$_ymouse
iniwrite("mpos.ini", "x", $xmcoordt)
iniwrite("mpos.ini", "y", $ymcoordt)
/waitms(200)
end_sub
sub(mback)
$xmcoordt=iniread("mpos.ini", "x")
$ymcoordt=iniread("mpos.ini", "y")
move($xmcoordt,$ymcoordt)
end_sub

Когда заканчиваю править скрипт mpostest.cms в редакторе КЛМН и жму Сохранить/Применить/Закрыть, то всё равно выскакивает окошко с предложением "применить изменения" (не смотря на только что нажимавшуюся кнопку Применить), а если в этом диалоговом окне подтвердить своё желание сохранить изменение нажатие кнопки да (йес), то окно это просто закрывается и ничего не происходит (то есть редактор не закрывается, а продолжает быть открытым), а при повторной попытке закрыть его опять выскакивает то же окно. Получается, что при подключении инклуда применение изменений во встроенном КЛМНовском редакторе не работает, а можно сделать только сохранение файла скрипта.

Если же потом закрыть редактор без сохранения изменений и открыть этот скрипт заново в самом КЛМН, в его главном окне через кнопку открыть (а через список последних открытых файлов такой скрипт с инклудом открыть не получается, поскольку он пропадает из этого списка, по крайней мере сначала, после запуска/редактирования в редакторе), то при запуске этого скрипта ничего не происходит (мышь не кликает по описанному сценарию), но кнопки запуска скрипта при этом меняют свои иконки так, вроде скрипт работает. При этом скрипт продолжает "работать" (читай: простаивать) бесконечно, не смотря на имеющийся в скрипте halt, до тех, пока его не выключишь вручную. Вот такие дела, малята)

Уже перепробовал подключение инклуда с этими тестовыми двумя файлами в разных версиях кликера (4.12.001, 4.13.3 х32+х64), запускал под админом, пока что результат 0. Может, что-т не правильно пишу в sub()?

ПС. Сперва делал в субмакросах вариант без iniwrite/iniread, потом подумал, что переменные могут уничтожаться в промежутке между двумя сабами, не передаваясь из одного в другой, и поэтому решил сделать вариант с записью переменных в файл и последующим чтением их оттуда при необходимости.
« Last Edit: August 18, 2017, 07:42:14 PM by Cleoss »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Code: (clickermann) [Select]
// указываю полный путь (на всякий случай) к подключаемому файлу
#include "H:\dlz\op\clickermann_last\Clickermann4.13b3\projects\mposback.cms"
// #include "mposback.cms" // вариант с относительным путём не срабатывает

Как раз абсолютный путь не работает начиная с какой-то версии (может 4.10 или 9). Работает только относительный.
При
Code: (clickermann) [Select]
#include "mposback.cms"всё сохраняется, закрывается и работает. При условии что файлы рядом в одной папке.

99,9% что ты проводя эксперименты на разных версиях, наделал копий файлов и запутался с путями запущенного и прописанного.


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
ПС. Сперва делал в субмакросах вариант без iniwrite/iniread, потом подумал, что переменные могут уничтожаться в промежутке между двумя сабами, не передаваясь из одного в другой, и поэтому решил сделать вариант с записью переменных в файл и последующим чтением их оттуда при необходимости.
Эти переменные не уничтожаются. Можешь в ini не писать.


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Как раз абсолютный путь не работает начиная с какой-то версии (может 4.10 или 9). Работает только относительный.
При
Code: (clickermann) [Select]
#include "mposback.cms"всё сохраняется, закрывается и работает. При условии что файлы рядом в одной папке.

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

Дело в том, что запара с файлами была, потому что когда Клмн сохраняет новый файлик в backup.cms, то видимо ему потом оч хочется читать файлы из той же папки, а не из projects (если б не эта его черта, то у меня было б только две папки со скриптами, а так их в два раза больше)), но уже сто раз перепроверил и чёт не работает всё=. Ещё бывает каким-то чудом кликеры из одной папки лезут в папку к другим кликерам, видимо, потому что оттуда копировал и сохранились настройки.

Эти переменные не уничтожаются. Можешь в ini не писать.

Просто смутило вот это в туториале:
Quote from: Johnny
После выполнения подпрограммы, сценарий продолжится с момента вызова подпрограммы. Локальные переменные подпрограммы (параметры) при этом будут уничтожены.

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

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Просто смутило вот это в туториале:
Quote from: Johnny
После выполнения подпрограммы, сценарий продолжится с момента вызова подпрограммы. Локальные переменные подпрограммы (параметры) при этом будут уничтожены.
Локальные переменные в кликере - только параметры подпрограмм, о них и речь. Остальные глобальные.
Параметры это то, что принимает подпрограмма
Code: (clickermann) [Select]
SUB(mayPP, p1, p2, p3)
...
END_SUB

// вызов
mayPP(7, 100, 5)

Вот p1, p2, p3 - параметры и они уничтожатся после выхода из подпрограммы


Дело в том, что запара с файлами была, потому что когда Клмн сохраняет новый файлик в backup.cms, то видимо ему потом оч хочется читать файлы из той же папки, а не из projects (если б не эта его черта, то у меня было б только две папки со скриптами, а так их в два раза больше)), но уже сто раз перепроверил и чёт не работает всё=. Ещё бывает каким-то чудом кликеры из одной папки лезут в папку к другим кликерам, видимо, потому что оттуда копировал и сохранились настройки.
Перестань жонглировать версиями и эти проблемы сразу пропадут. Ты же не тестировщик.
Работаешь в одной, с ней ассоциируешь файлы. Всё. Файлы без авторана открываешь двойным кликом.


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Перестань жонглировать версиями и эти проблемы сразу пропадут. Ты же не тестировщик.
Работаешь в одной, с ней ассоциируешь файлы. Всё. Файлы без авторана открываешь двойным кликом.

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

И вот только что ещё один сюрприз: добавил в тестовый файлик с сабом #name "sumthing", и вставил инклуд на этот саб в другой скрипт, и оказывается скрипт видит файл саба, потому что в заголовке скрипта с инклудом появляется sumthing. И это после всех моих многократных проверок, что оба файлике лежат в одной папке и что не "бредовый код". Вот листинг тестовой функции для инклуда, много здесь бреда?
Code: (clickermann) [Select]
sub(nirtest)
print("Testedd!")
end_sub
При этом инклуженный хедер вставляется, а функция не выполняется. Как так?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
И вот только что ещё один сюрприз: добавил в тестовый файлик с сабом #name "sumthing", и вставил инклуд на этот саб в другой скрипт, и оказывается скрипт видит файл саба, потому что в заголовке скрипта с инклудом появляется sumthing. И это после всех моих многократных проверок, что оба файлике лежат в одной папке и что не "бредовый код".

Имя скрипта #name "" срабатывает всегда, их может быть несколько в файле и все сработают. Имя окна останется от последнего.
Когда вводился #name никаких инклюдов ещё небыло и никто не предполагал что будет в коде больше одного #name "".

Когда ввели инклюд, эта недоработка сразу всплыла http://crapware.aidf.org/forum/index.php?topic=26.0
Но Джонни с тех пор так и не поправил.

Я, и Все, давно уже не обращаем на это внимание. И чтоб было правильно, нужно поставить #name после инклюдов, или продублировать его.
Пример
Code: (clickermann) [Select]
#name "Основной скрипт"
// Author: Я
// Version: 1.0.0 (18.08.2017)

#include "logger.cms"
#include "..\twoinclud.cms"
#name "Основной скрипт"

// .........

Неудобняк конечно, ну как-то выкручиваться нужно. Чтобы это исправить Джонни нужно учитывать в коде только самый первый #name "", остальные игнорировать.


и что не "бредовый код". Вот листинг тестовой функции для инклуда, много здесь бреда?
Code: (clickermann) [Select]
sub(nirtest)
print("Testedd!")
end_sub
При этом инклуженный хедер вставляется, а функция не выполняется. Как так?

Здесь вообще не понял что где не запускается. Где все файлы в настоящем виде или код оттуда.
« Last Edit: August 18, 2017, 05:10:24 PM by Vint »


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Неудобняк конечно, ну как-то выкручиваться нужно. Чтобы это исправить Джонни нужно учитывать в коде только самый первый #name "", остальные игнорировать.
Не ну что, ты действительно не понимаешь, к чему я написал пост выше? Мне всё равно, что #name  из двух файлов срабатывает дважды. Я пишу о том, что при этом код всего инклуда НЕ срабатывает (хотя #name из инклуда виден), про что собсна и создана ЭТА тема. Точно так же, как и мне всё равно, пишет ли Кликер в реестр что-то, но разговор о том, что он каждый раз стартует с разной папки, да и у него ОТДЕЛЬНЫЕ списки последних открытых файлов для редактора и для основного окна, что не менее странно.

Здесь вообще не понял что где не запускается. Где все файлы в настоящем виде или код оттуда.
Нарисую ещё раз, на пальцах:
Есть файл 1:
[spoiler=performing.cms]
Code: (clickermann) [Select]
#name "Performin"
#include "nir.cms"
nirtest()
wait(1)
halt
[/spoiler]
и есть файл 2:
[spoiler=nir.cms (сокращённая версия)]
Code: [Select]
#name "NiRred"
sub(nir, $paramz)
$striing=strconcat("nircmd.exe ", $paramz)
$batnm="tempz.bat"
tfwrite($batnm, $striing, 1)
execute($batnm)
wait(3)
tfclear($batnm)
end_sub

sub(nirtest)
print("Testedd!")
end_sub
[/spoiler]

При запуске perform.cms тот выводит в заголовок строку NiRred из другого файла, но при этом НИЧЕГО другого не делает из того подключаемого файла!

Если интересно, то вот полный листинг скрипта nir.cmd:
[spoiler]
Code: [Select]
#name "NiRred"
sub(nir, $paramz)
$striing=strconcat("nircmd.exe ", $paramz)
$batnm="tempz.bat"
tfwrite($batnm, $striing, 1)
execute($batnm)
wait(3)
tfclear($batnm)
end_sub

sub(nirtest)
print("Testedd!")
end_sub

// подключение модуля:
// вставить строчку-incude в начале скрипта и раскаментить /
/#include "nir.cms"
/nir("execmd rsLiker.bmp") // открывает файлик
/nir("setsysvolume 65535 ") // врубает звук на полную катушку
/nir("speak text ~$clipboard$") // озвучка буфера + чернь
/nir("execmd nircmd.exe speak text ~$clipboard$") // без черни, но озвучивает инглиш онли, хоть и по-русски
/nir("mutesysvolume 2") // вкл/откл громкость
/nir("nircmd.exe monitor off") //откл. моник
/nir("screensaver") // заставка экрана
/nir("execmd nircmd.exe qboxcom "TTEPE3a2py3UT6_BEHDY?_~x20" ~qThatiz_da_qestion~q exitwin reboot") // Матрица.Рилод
//nir("execmd nircmd.exe qboxcom "~x00~x01~x02~x03~x04~x05~x06~x07~x08~x09~x0A~x0B~x0C~x0D~x0E~x0F~x10~x11~x12~x13~x14~x15~x16~x17~x18~x19~x1A~x1B~x1C~x1D~x1E~x1F~x20~x21~x22~x23~x24~x25~x26~x27~x28~x29~x2A~x2B~x2C~x2D~x2E~x2F~x30~x31~x32~x33~x34~x35~x36~x37~x38~x39~x3A~x3B~x3C~x3D~x3E~x3F~x40~x41~x42~x43~x44~x45~x46~x47~x48~x49~x4A~x4B~x4C~x4D~x4E~x4F~x50~x51~x52~x53~x54~x55~x56~x57~x58~x59~x5A~x5B~x5C~x5D~x5E~x5F~x60~x61~x62~x63~x64~x65~x66~x67~x68~x69~x6A~x6B~x6C~x6D~x6E~x6F~x70~x71~x72~x73~x74~x75~x76~x77~x78~x79~x7A~x7B~x7C~x7D~x7E~x7F~x80~x81~x82~x83~x84~x85~x86~x87~x88~x89~x8A~x8B~x8C~x8D~x8E~x8F~x90~x91~x92~x93~x94~x95~x96~x97~x98~x99~x9A~x9B~x9C~x9D~x9E~x9F~xa0~xa1~xa2~xa3~xa4~xa5~xa6~xa7~xa8~xa9~xaA~xaB~xaC~xaD~xaE~xaF~xb0~xb1~xb2~xb3~xb4~xb5~xb6~xb7~xb8~xb9~xbA~xbB~xbC~xbD~xbE~xbF~xc0~xc1~xc2~xc3~xc4~xc5~xc6~xc7~xc8~xc9~xcA~xcB~xcC~xcD~xcE~xcF~xd0~xd1~xd2~xd3~xd4~xd5~xd6~xd7~xd8~xd9~xdA~xdB~xdC~xdD~xdE~xdF~xe0~xe1~xe2~xe3~xe4~xe5~xe6~xe7~xe8~xe9~xeA~xeB~xeC~xeD~xeE~xeF~xf0~xf1~xf2~xf3~xf4~xf5~xf6~xf7~xf8~xf9~xfA~xfB~xfC~xfD~xfE~xfF" ~qThatiz_da_qestion~q exitwin reboot") // ascii, запили мне быстро 10050 окон нира!
/nir("win trans ititle "NirCmd" 99") // делает окну прозрачно
/nir("win min class "IEFrame"") // сворачивает Ослика ИЕ
//nir("win settopmost ititle "Кальк" 1") // wannabe закрепляет вендовый Калич поверх всего, ne robit
/nir("win settopmost ititle "NirCmd" 1") // закрепляет Нир-окна поверх всего, с инглишем работает норм
/nir("killprocess iexplore.exe") // зарубить осла на корню
/nir("urlshortcut "http://crapware.aidf.org/forum/" "~$folder.favorites$\Links" "KLMN"") // Кликмана в Избранное ИА!   
/nir("regedit "HKLM\Software\Microsoft\Windows\CurrentVersion" "CommonFilesDir" ") // открыть ключик реестра 
/nir("regsetval sz "HKCU\control panel\desktop" "ScreenSaveActive" 1 ") // включить сейвер через регэдит
/nir("clipboard set ~$folder.start_menu$ ") // путь к папке Пуска в буфер
/nir("clipboard readfile "c:\My Files\info1.txt" ") // из текстовика всё в буфер
/nir("clipboard addfile "c:\My Files\info1.txt" ") // из буфера добавить в файл
/nir("clipboard clear ") // очистить буфер обмена
/nir("paramsfile "c:\temp\folders.txt" "" "" execmd md ~$fparam.1$ ") //создать все папки, перечисленные в файлике (раздел. абзацем)
/nir("emptybin") // очистить Корзину
/nir("dlg "" "" click yes ") // жать подтверждение в диалоге
/nir("cmdwait 2000 savescreenshot "f:\temp\shot.png" ") // скрин после паузы
/nir("loop 10 60000 savescreenshot c:\temp\scr~$currdate.MM_dd_yyyy$-~$currtime.HH_mm_ss$.png") // серия скринов с интервалом
/nir("waitprocess Clickermann.exe speak text "Clickermann zakryt" ") // озвучить закрытие КликМэна
/nir("clipboard set ~$sys.username$ ") // виндовый %юзернейм%  в буфера %)
//nir("execmd nircmd.exe infobox "The_current_logged-on_user_is_~$sys.username$" "logged-on_user"") // то же, но на экран, эррорит
/nir("savescreenshot c:\temp\scr~$currdate.MMddyyyy$-~$currtime.HHmmss$.png") // заскринить экран
//copy /b "file1"+"file2" "file"
//nir("cmdexe nircmd.exe infobox "Hello !" "This is the first message"~n infobox "Hello !" "This is the second message"") //
/nir("regedit "HKEY_CURRENT_USER\Control Panel\Desktop" "Wallpaper" ") //
/nir("inisetval "c:\windows\test.ini" "section1" "TestValue" "1" ") //
/nir("cmdshortcutkey "c:\temp" "Turn Monitor Off" "Ctrl+Shift+M" monitor off ") //
/nir("exec max "c:\temp\test.exe"") //
/nir("exec hide "c:\temp\wul.exe" /savelangfile ") //
/nir("exec2 show "f:\winnt\system32" "f:\winnt\system32\calc.exe" ") //
/nir("execmd mkdir f:\temp\desktop1 ") //
/nir("execmd copy "~$folder.desktop$\*.lnk" f:\temp\desktop ") //
/nir("execmd del "~$folder.desktop$\calc.lnk" ") //
/nir("shexec "open" "http://www.nirsoft.net" ") //
/nir("shexec "open" "c:\my documents\abc.doc" ") //
/nir("shexec "print" "d:\files\1.pdf" ") //
/nir("setfiletime "c:\temp\*.exe" "15-05-2004 11:22:12" "22-01-2005 21:22:55" ") //
/nir("setdisplay 800 600 24 -updatereg ") //
/nir("setprimarydisplay 1 ") //
//nir("setbrightness 50") //
/nir("closeprocess "c:\winnt\system32\calc.exe" ") //
/nir("suspendprocess "c:\winnt\system32\calc.exe" ") //
/nir("setprocesspriority iexplore.exe abovenormal ") //
/nir("setprocessaffinity "c:\winnt\system32\calc.exe" 0 1 2 3 ") //
/nir("win hideshow ititle "Clickermann.exe" ") //
/nir("win togglehide class MozillaWindowClass ") //
/nir("win activate title "my computer" ") //
/nir("win redraw alltop") //
/nir("win setsize class "IEFrame" 50 50 400 300 ") //
/nir("win move class "IEFrame" 50 50 400 300 ") //
/nir("win sendmsg title "calculator" 0x10 0 0 ") //
/nir("win dlgclick class "#32770" cancel ") //
/nir("win togglemin ititle "internet explorer"") //
/nir("win focus process /1275 ") //
/nir("win max handle 0x00009c01 ") //
/nir("clipboard copyimage "c:\temp\img01.gif"") //
/nir("clipboard saveclp "c:\temp\1.clp" ") //
/nir("clipboard addufile "c:\temp\clip1.txt" ") //
/nir("beep 500 2000 ") //
/nir("stdbeep ") //
/nir("setvolume 0 32768 32768 ") //
/nir("setvolume 1 0xffff 0 ") //
/nir("changesysvolume 0x1000 default_record ") //
/nir("setappvolume wmplayer.exe 0.75 Speakers ") //
/nir("setappvolume focused 0.25 ") //
/nir("muteappvolume Firefox.exe 1 ") //
/nir("setdefaultsounddevice "Microphone" ") //
/nir("wait 500 ") //
/nir("shellrefresh ") //
/nir("sysrefresh ") //
/nir("dlg "explorer.exe" "run" settext 12298 "calc.exe" ") //
/nir("dlg "explorer.exe" "" click yes ") //
//dlgany [Process Name] [Window Title] [Action] [Parameters]
/nir("qboxcom "Do you want to continue ?" "question" returnval 0x30 ") //
/nir("sendkeypress ctrl+shift+esc ") //
/nir("sendkeypress Shift+n spc 3 9 ") //
/nir("sendkey a press ") //
/nir("sendkey 0x2e press ") //
/nir("sendmouse left dblclick ") //
/nir("sendmouse move -30 20 ") //
/nir("sendmouse wheel 1200 ") //
/nir("convertimage "c:\temp\test1.jpg" "c:\temp\test1.gif" ") //  .bmp, .gif, .png, .jpg, .tiff 
/nir("convertimages "c:\temp\a*.gif" .png ") //
/nir("savescreenshot "c:\temp\shot.png" ") //
/nir("savescreenshot "c:\temp\shot.png" 50 50 300 200 ") //
/nir("savescreenshot *clipboard* 150 150 400 400 ") //
//savescreenshotfull [filename] 
/nir("savescreenshotwin *clipboard* ") //
/nir("shellcopy "c:\temp\*.*" "d:\temp" yestoall noerrorui ") //
/nir("filldelete "c:\temp\*.*" ") //
/nir("speak file "c:\temp\speak1.txt" 0 100 "c:\temp\speak.wav" 48kHz16BitStereo ") //
/nir("elevate notepad.exe C:\Windows\System32\Drivers\etc\HOSTS ") //
/nir("elevatecmd regsetval binary "HKLM\Software\Test" "Value1" "6a cb ab dd 80 86 95" ") //
/nir("trayballoon "Hello" "This is a test..." "shell32.dll,22" 15000 ") //
/nir("trayballoon "Hello" "This is the text that will be appear inside the balloon !" "c:\temp\icon1.ico" 10000 ") //
/nir("mediaplay 10000 "c:\temp\1.mp3" ") //
/nir("loop 3 2000 speak text "Call Number ~$loopcount$"") //
/nir("memdump calc.exe "c:\temp\calc.txt" "32" "0x30000" "0x400000" nohex") //
/nir("win dlgclick class "#32770" cancel ") //
/nir("") //


//halt
[/spoiler]

P. S. Блииииииииин, ну я тупой. ???

Пока копался в этом скрипте, сам случайно нашёл, почему инклуд не запускался! Оказывается, я запихнул хальт в конец инклуда, но в коде выложенном выше, я его уже успешно закоментил, чтоб вдруг другие не повторяли мою ошибку. Почему я поставил туда хальт? Да потому что я сначала тестировал тот скрипт живьём, а потом уже превратил его в инклуд, а про стопор в конце файла позабыл в спешке, видимо. Так чито
НИКОГДА, Вы слышите!!?
Никогда не ставьте HALT в подключаемый файл!

Иначе он не станет выполняться. Вообще.
Не стоит туда совать и #name  и всякую прочую всячину, не умножайте сущности без необходимости, вставляйте туда только то, что действительно нужно.
Оох, хвала аллаху, мои инклуды заработали  :D Три дня спустя...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Не ну что, ты действительно не понимаешь, к чему я написал пост выше?
Да, действительно не понимаю.
Код то ты весь не выкладываешь, всё обрывками, да обрезками. А то и вовсе код один, а результат от другого.

Был бы здесь http://crapware.aidf.org/forum/index.php?topic=3377.msg23176#msg23176 указан весь код, глядишь и заметили бы.


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
так долго и старательно маскироваться под хохла и давиться салом :o
Да, я такой хохол, что на мой родине щас уже рублики ходят! Превед Путенгу с Донбасса))

Был бы здесь http://crapware.aidf.org/forum/index.php?topic=3377.msg23176#msg23176 указан весь код, глядишь и заметили бы.
Не знаю, но сверху был выложен весь код безо всяких изменений и никто моего прогона не заметил. Shame to ya, niggaz!  :)
Да и он сегодня у меня, как по магии, заработал, хотя всё, что я там сегодня изменил, это было исправление абсолютного пути на относительный, хотя вчера я уже тестировал с относительным путём и он не работал, загадка.  :o Даже больше того, сёдня утром перестал работать ещё один мой скрипт, который вчера успешно пахал, а сёдня вот такэйэ:



Даже редактор подсветил мой вражеский код каким-то незнакомым ядовитым фоном, хотя вчера этот же код был какбэ безвредным и работал норм.
Ах да, вот код, есси чё))
Code: (clickermann) [Select]
//#include "nir.cms"
#autorun
#name "setzArun"
logclear

sub(setrad)
$setz = radiobox("Что желаете настроить? ", "1.Загрузить рекомендуемые настройки", "2.Сохранить текущие настройки", "3.Открыть сохранённые настройки", "=== === === Х === === Х === === === === ", "5.Общие настройки кликера config.ini", "6.Настройки Редактора config_editor.ini", "7.Настройка интерфейса gui.ini", "8.Меню быстрой вставки qinsert_menu.ini", "9.Настройка констант const.txt", "10.Настройка хоткеев скрипта","11.Помогите нам с переводом кликера! ", "12.Сбросить настройки на дефолтовые ", )

switch($setz)
case(1)

//INIWRITE("..\data\config.ini", "", "", "window")
// Это блок рекомендуемых настроек. Для правильной работы скрипт должен лежать в папке projects
// Раскомментируйте и настраивайте здесь один раз нужные вам параметры
// или наоборот отключите ненужные, ставя впереди слеши
config.ini
[window]
//INIWRITE("..\data\config.ini", "popups_on_run", "0", "window")
//INIWRITE("..\data\config.ini", "sound_on_run", "1", "window")
//INIWRITE("..\data\config.ini", "check_updates", "1", "window")
//INIWRITE("..\data\config.ini", "delayed_run_value", "3", "window")
// //INIWRITE("..\data\config.ini", "script_auto_run", "1", "window")
//INIWRITE("..\data\config.ini", "lang", "en", "window")
INIWRITE("..\data\config.ini", "only_tray", "0", "window")
INIWRITE("..\data\config.ini", "history_size", "39", "window")
[core]
INIWRITE("..\data\config.ini", "mousemove_record", "0", "core")
//INIWRITE("..\data\config.ini", "thread_priority", "4", "core")
INIWRITE("..\data\config.ini", "delay_between_lines", "1", "core")
//INIWRITE("..\data\config.ini", "smart_delay", "30", "core")
//INIWRITE("..\data\config.ini", "skip_error", "0", "core")
//INIWRITE("..\data\config.ini", "sshot_jpeg", "0", "core")
//INIWRITE("..\data\config.ini", "sshot_jpeg_quality", "75", "core")
INIWRITE("..\data\config.ini", "max_log_size", "100", "core")
INIWRITE("..\data\config.ini", "only_primary_monitor", "0", "core")
[hotkey]
//INIWRITE("..\data\config.ini", "start", "120", "hotkey")
//INIWRITE("..\data\config.ini", "stop", "121", "hotkey")
//INIWRITE("..\data\config.ini", "record", "0", "hotkey")
//INIWRITE("..\data\config.ini", "ins1", "32849", "hotkey")
//INIWRITE("..\data\config.ini", "cwnd", "32855", "hotkey")

config_editor.ini
[global]
//INIWRITE("..\data\config_editor.ini", "font_name", "Lucida Console", "global")
INIWRITE("..\data\config_editor.ini", "font_size", "12", "global")
//INIWRITE("..\data\config_editor.ini", "show_gutter", "1", "global")
//INIWRITE("..\data\config_editor.ini", "ins_spaces", "3", "global")
//INIWRITE("..\data\config_editor.ini", "refresh_rate", "200", "global")
//INIWRITE("..\data\config_editor.ini", "dot_aim", "0", "global")
INIWRITE("..\data\config_editor.ini", "aim_speed", "20", "global")

// Блок рекомендуемых настроек завершён.

hintpopup("Recommended settings are applied! ","CLMN Hotkeys")

print ( TFCount("..\data\config_editor.ini") )


 
case(2)
 
case(3)
 
case(4)
   hintpopup("! ")
   wait(10)
   setrad()
case(5)
 
case(6)
 
case(7)
 
case(8)
 
case(9)
 
case(10)
 
case(11)
 
case(12)
 
default

$dlg = dialogbox("Вы действительно желаете покинуть настройки без сохранения?", 4, 2)
if ($dlg = 6)
hintpopup("Ok, I'm closing","CLMN Settings")
print("Yes")
else
  setrad()
print("No")
end_if 

end_switch

if ($res ! 0)
  print("Вы выбрали: ", $res)
else
  print("Вы ничего не выбрали")
end_if  
end_sub

// Режим выполнения Ctrl-R
// Неогр Фикс+ Интерв+ Применить
//
// Лог Ctrl-L
// Очист Сохр Топ Прозр
//
// Менеджер окон Ctrl-M
// Окно Обнов Вручн Заголовок x y w h Прозр Примен
//
// Настройки Ctrl-S
// Хоткеи Запуск+ Останов+ Запись+ Вставка+ Привязка+ Примен
// Ифс Озуч Обновл Язык Ассоц Удал
// Интерп Запис Игнор ДЖпег
//
// config.ini
//
// [window] popups_on_run = 0 sound_on_run =1 check_updates =1 delayed_run_value = 3
// ; script_auto_run =1 lang =ru only_tray = 0 history_size = 25
// [core] mousemove_record =0 thread_priority = 4 delay_between_lines = 1 smart_delay = 30
// skip_error =0 sshot_jpeg =0 sshot_jpeg_quality = 75 max_log_size = 100 only_primary_monitor=0
// norepeat:
// [window] popups_on_run = 0 delayed_run_value = 3 only_tray = 0 history_size = 25
// [core] thread_priority = 4 delay_between_lines = 1 smart_delay = 30
// sshot_jpeg_quality = 75 max_log_size = 100 only_primary_monitor=0
//
// config_editor.ini
//
// [global] font_name  = Lucida Console font_size = 10 show_gutter= 1
// ins_spaces = 3 refresh_rate = 200 dot_aim = 0 aim_speed = 20//
//

//$str = INIREAD("..\data\config_editor.ini", "font_size", "global")
//$str = INIREAD("H:\dlz\op\clickermann_last\Clickermann4.13b3\data\config_editor.ini", "font_size", "global")

//изменение параметров
//$str = INIREAD("..\data\config_editor.ini", "font_size", "global") // 10
//print($str)
//INIwrite("..\data\config_editor.ini", "font_size", "12", "global")
//$str = INIREAD("..\data\config_editor.ini", "font_size", "global")
//print($str)

//wait(10)
////nir("win trans ititle "NirCmd" 99")
//execute("setz.bat")

//halt(1)



define($init) // пример одноразовой функции
if ($init=0)
   $stri = INIREAD("..\data\config_editor.ini", "font_size", "global") // default fontsize is 10
   print($stri)
   inc($init)
end_if


 

if (iskeydown(#ctrl)=1)
   if (iskeydown(#b)=1)
      //WNDBUMP(wndfind("Editor - "))
      execute("activate.bat")
      waitms(500)
   end_if
   if (iskeydown(#r)=1)
      execute("setz.bat")
      halt(1)
   end_if
   if (iskeydown(#e)=1)
      setrad()
waitms(500)
   end_if
   if (iskeydown(#d)=1)
      $str = inputbox("Plz input fontsize: ", "10", 60)
      INIwrite("..\data\config_editor.ini", "font_size", $str, "global")
      waitms(500)
   end_if
end_if
waitms(1)

пысы. Меня уже колбасит просто, за столько проектов взялся, ладно, что я туповат, не всё догоню быстро, как делать, так ещё и кликер подмогает)) Больше ИИ!
« Last Edit: August 18, 2017, 07:23:49 PM by Cleoss »

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
У тебя в подпрограмме вызов самой себя.  :o

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
У тебя в подпрограмме вызов самой себя.  :o

Да, и как с этим жить?) Ведь  может же понадобиться перезапустить программу из неё же, если к примеру пользователь выбрал режим отмены/выхода, а потом передумал выходить и при этом же как-то надо снова запустить ту же подпрограмму.

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Да, и как с этим жить?)
С этим жить нельзя. А вот с этим например можно попробовать...
Code: (clickermann) [Select]
//#include "nir.cms"
#autorun
#name "setzArun"
logclear

sub(setrad)
   $pop=0
   WHILE($pop=0)
      $setz = radiobox("Что желаете настроить? ", "1.Загрузить рекомендуемые настройки", "2.Сохранить текущие настройки", "3.Открыть сохранённые настройки", "=== === === Х === === Х === === === === ", "5.Общие настройки кликера config.ini", "6.Настройки Редактора config_editor.ini", "7.Настройка интерфейса gui.ini", "8.Меню быстрой вставки qinsert_menu.ini", "9.Настройка констант const.txt", "10.Настройка хоткеев скрипта","11.Помогите нам с переводом кликера! ", "12.Сбросить настройки на дефолтовые ", )
     
      switch($setz)
      case(1)
         $pop=1
         //INIWRITE("..\data\config.ini", "", "", "window")
         // Это блок рекомендуемых настроек. Для правильной работы скрипт должен лежать в папке projects
         // Раскомментируйте и настраивайте здесь один раз нужные вам параметры
         // или наоборот отключите ненужные, ставя впереди слеши
         config.ini
         [window]
         //INIWRITE("..\data\config.ini", "popups_on_run", "0", "window")
         //INIWRITE("..\data\config.ini", "sound_on_run", "1", "window")
         //INIWRITE("..\data\config.ini", "check_updates", "1", "window")
         //INIWRITE("..\data\config.ini", "delayed_run_value", "3", "window")
         // //INIWRITE("..\data\config.ini", "script_auto_run", "1", "window")
         //INIWRITE("..\data\config.ini", "lang", "en", "window")
         INIWRITE("..\data\config.ini", "only_tray", "0", "window")
         INIWRITE("..\data\config.ini", "history_size", "39", "window")
         [core]
         INIWRITE("..\data\config.ini", "mousemove_record", "0", "core")
         //INIWRITE("..\data\config.ini", "thread_priority", "4", "core")
         INIWRITE("..\data\config.ini", "delay_between_lines", "1", "core")
         //INIWRITE("..\data\config.ini", "smart_delay", "30", "core")
         //INIWRITE("..\data\config.ini", "skip_error", "0", "core")
         //INIWRITE("..\data\config.ini", "sshot_jpeg", "0", "core")
         //INIWRITE("..\data\config.ini", "sshot_jpeg_quality", "75", "core")
         INIWRITE("..\data\config.ini", "max_log_size", "100", "core")
         INIWRITE("..\data\config.ini", "only_primary_monitor", "0", "core")
         [hotkey]
         //INIWRITE("..\data\config.ini", "start", "120", "hotkey")
         //INIWRITE("..\data\config.ini", "stop", "121", "hotkey")
         //INIWRITE("..\data\config.ini", "record", "0", "hotkey")
         //INIWRITE("..\data\config.ini", "ins1", "32849", "hotkey")
         //INIWRITE("..\data\config.ini", "cwnd", "32855", "hotkey")
         
         config_editor.ini
         [global]
         //INIWRITE("..\data\config_editor.ini", "font_name", "Lucida Console", "global")
         INIWRITE("..\data\config_editor.ini", "font_size", "12", "global")
         //INIWRITE("..\data\config_editor.ini", "show_gutter", "1", "global")
         //INIWRITE("..\data\config_editor.ini", "ins_spaces", "3", "global")
         //INIWRITE("..\data\config_editor.ini", "refresh_rate", "200", "global")
         //INIWRITE("..\data\config_editor.ini", "dot_aim", "0", "global")
         INIWRITE("..\data\config_editor.ini", "aim_speed", "20", "global")
         
         // Блок рекомендуемых настроек завершён.
         
         hintpopup("Recommended settings are applied! ","CLMN Hotkeys")
         
         print ( TFCount("..\data\config_editor.ini") )
         
         
         
      case(2)
         $pop=1
      case(3)
         $pop=1
      case(4)
         hintpopup("! ")
         wait(10)
         $pop=0
      case(5)
         $pop=1
      case(6)
         $pop=1
      case(7)
         $pop=1
      case(8)
         $pop=1
      case(9)
         $pop=1
      case(10)
         $pop=1
      case(11)
         $pop=1
      case(12)
         $pop=1
      default
         
         $dlg = dialogbox("Вы действительно желаете покинуть настройки без сохранения?", 4, 2)
         if ($dlg = 6)
            hintpopup("Ok, I'm closing","CLMN Settings")
            print("Yes")
            $pop=1
         else
            $pop=0
            print("No")
         end_if
         
      end_switch
     
      if ($res ! 0)
         print("Вы выбрали: ", $res)
      else
         print("Вы ничего не выбрали")
      end_if
   END_CYC
end_sub

// Режим выполнения Ctrl-R
// Неогр Фикс+ Интерв+ Применить
//
// Лог Ctrl-L
// Очист Сохр Топ Прозр
//
// Менеджер окон Ctrl-M
// Окно Обнов Вручн Заголовок x y w h Прозр Примен
//
// Настройки Ctrl-S
// Хоткеи Запуск+ Останов+ Запись+ Вставка+ Привязка+ Примен
// Ифс Озуч Обновл Язык Ассоц Удал
// Интерп Запис Игнор ДЖпег
//
// config.ini
//
// [window] popups_on_run = 0 sound_on_run =1 check_updates =1 delayed_run_value = 3
// ; script_auto_run =1 lang =ru only_tray = 0 history_size = 25
// [core] mousemove_record =0 thread_priority = 4 delay_between_lines = 1 smart_delay = 30
// skip_error =0 sshot_jpeg =0 sshot_jpeg_quality = 75 max_log_size = 100 only_primary_monitor=0
// norepeat:
// [window] popups_on_run = 0 delayed_run_value = 3 only_tray = 0 history_size = 25
// [core] thread_priority = 4 delay_between_lines = 1 smart_delay = 30
// sshot_jpeg_quality = 75 max_log_size = 100 only_primary_monitor=0
//
// config_editor.ini
//
// [global] font_name  = Lucida Console font_size = 10 show_gutter= 1
// ins_spaces = 3 refresh_rate = 200 dot_aim = 0 aim_speed = 20//
//

//$str = INIREAD("..\data\config_editor.ini", "font_size", "global")
//$str = INIREAD("H:\dlz\op\clickermann_last\Clickermann4.13b3\data\config_editor.ini", "font_size", "global")

//изменение параметров
//$str = INIREAD("..\data\config_editor.ini", "font_size", "global") // 10
//print($str)
//INIwrite("..\data\config_editor.ini", "font_size", "12", "global")
//$str = INIREAD("..\data\config_editor.ini", "font_size", "global")
//print($str)

//wait(10)
////nir("win trans ititle "NirCmd" 99")
//execute("setz.bat")

//halt(1)



define($init) // пример одноразовой функции
if ($init=0)
   $stri = INIREAD("..\data\config_editor.ini", "font_size", "global") // default fontsize is 10
   print($stri)
   inc($init)
end_if




if (iskeydown(#ctrl)=1)
   if (iskeydown(#b)=1)
      //WNDBUMP(wndfind("Editor - "))
      execute("activate.bat")
      waitms(500)
   end_if
   if (iskeydown(#r)=1)
      execute("setz.bat")
      halt(1)
   end_if
   if (iskeydown(#e)=1)
      setrad()
      waitms(500)
   end_if
   if (iskeydown(#d)=1)
      $str = inputbox("Plz input fontsize: ", "10", 60)
      INIwrite("..\data\config_editor.ini", "font_size", $str, "global")
      waitms(500)
   end_if
end_if
waitms(1)

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
sub(setrad)
   $pop=0
   WHILE($pop=0)


То есть, в моём понимании, подпрограмма выполняется пока не поп=1. То бишь вот тут:
switch($setz)
      case(1)
         $pop=1

подпрограмма уже попытает выйти или завершиться? А как же дальше будет код в кейсе выполняться, если саб саб должен завершиться?

И почему вот здесь не = 1? И тем более не в начале кейса, как везде, а в конце:
      case(4)
         hintpopup("! ")
         wait(10)


Не догнал, честно говоря, что эта переменная делает, что считает.

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Переменная управляет циклом WHILE. Если она не равна нулю то цикл удачно завершится. Если равна-вернется в начало. $pop=0 я вставил вместо твоих вызовов подпрограммы.
Переделал с использованием "родной" переменной $setz.
Code: (clickermann) [Select]
//#include "nir.cms"
#autorun
#name "setzArun"
logclear

sub(setrad)
   $setz=0
   WHILE($setz=0)
      $setz = radiobox("Что желаете настроить? ", "1.Загрузить рекомендуемые настройки", "2.Сохранить текущие настройки", "3.Открыть сохранённые настройки", "=== === === Х === === Х === === === === ", "5.Общие настройки кликера config.ini", "6.Настройки Редактора config_editor.ini", "7.Настройка интерфейса gui.ini", "8.Меню быстрой вставки qinsert_menu.ini", "9.Настройка констант const.txt", "10.Настройка хоткеев скрипта","11.Помогите нам с переводом кликера! ", "12.Сбросить настройки на дефолтовые ", )
      switch($setz)
      case(1)
         //INIWRITE("..\data\config.ini", "", "", "window")
         // Это блок рекомендуемых настроек. Для правильной работы скрипт должен лежать в папке projects
         // Раскомментируйте и настраивайте здесь один раз нужные вам параметры
         // или наоборот отключите ненужные, ставя впереди слеши
         config.ini
         [window]
         //INIWRITE("..\data\config.ini", "popups_on_run", "0", "window")
         //INIWRITE("..\data\config.ini", "sound_on_run", "1", "window")
         //INIWRITE("..\data\config.ini", "check_updates", "1", "window")
         //INIWRITE("..\data\config.ini", "delayed_run_value", "3", "window")
         // //INIWRITE("..\data\config.ini", "script_auto_run", "1", "window")
         //INIWRITE("..\data\config.ini", "lang", "en", "window")
         INIWRITE("..\data\config.ini", "only_tray", "0", "window")
         INIWRITE("..\data\config.ini", "history_size", "39", "window")
         [core]
         INIWRITE("..\data\config.ini", "mousemove_record", "0", "core")
         //INIWRITE("..\data\config.ini", "thread_priority", "4", "core")
         INIWRITE("..\data\config.ini", "delay_between_lines", "1", "core")
         //INIWRITE("..\data\config.ini", "smart_delay", "30", "core")
         //INIWRITE("..\data\config.ini", "skip_error", "0", "core")
         //INIWRITE("..\data\config.ini", "sshot_jpeg", "0", "core")
         //INIWRITE("..\data\config.ini", "sshot_jpeg_quality", "75", "core")
         INIWRITE("..\data\config.ini", "max_log_size", "100", "core")
         INIWRITE("..\data\config.ini", "only_primary_monitor", "0", "core")
         [hotkey]
         //INIWRITE("..\data\config.ini", "start", "120", "hotkey")
         //INIWRITE("..\data\config.ini", "stop", "121", "hotkey")
         //INIWRITE("..\data\config.ini", "record", "0", "hotkey")
         //INIWRITE("..\data\config.ini", "ins1", "32849", "hotkey")
         //INIWRITE("..\data\config.ini", "cwnd", "32855", "hotkey")
         
         config_editor.ini
         [global]
         //INIWRITE("..\data\config_editor.ini", "font_name", "Lucida Console", "global")
         INIWRITE("..\data\config_editor.ini", "font_size", "12", "global")
         //INIWRITE("..\data\config_editor.ini", "show_gutter", "1", "global")
         //INIWRITE("..\data\config_editor.ini", "ins_spaces", "3", "global")
         //INIWRITE("..\data\config_editor.ini", "refresh_rate", "200", "global")
         //INIWRITE("..\data\config_editor.ini", "dot_aim", "0", "global")
         INIWRITE("..\data\config_editor.ini", "aim_speed", "20", "global")
         
         // Блок рекомендуемых настроек завершён.
         
         hintpopup("Recommended settings are applied! ","CLMN Hotkeys")
         
         print ( TFCount("..\data\config_editor.ini") )
         
         
         
      case(2)
         
      case(3)
         
      case(4)
         hintpopup("! ")
         wait(10)
         $setz=0
      case(5)
         
      case(6)
         
      case(7)
         
      case(8)
         
      case(9)
         
      case(10)
         
      case(11)
         
      case(12)
         
      default         
         $dlg = dialogbox("Вы действительно желаете покинуть настройки без сохранения?", 4, 2)
         if ($dlg = 6)
            hintpopup("Ok, I'm closing","CLMN Settings")
            print("Yes")
            $setz=99
         else
            $setz=0
            print("No")
         end_if
         
      end_switch
   END_CYC
   if ($res ! 0)
      print("Вы выбрали: ", $res)
   else
      print("Вы ничего не выбрали")
   end_if
end_sub

// Режим выполнения Ctrl-R
// Неогр Фикс+ Интерв+ Применить
//
// Лог Ctrl-L
// Очист Сохр Топ Прозр
//
// Менеджер окон Ctrl-M
// Окно Обнов Вручн Заголовок x y w h Прозр Примен
//
// Настройки Ctrl-S
// Хоткеи Запуск+ Останов+ Запись+ Вставка+ Привязка+ Примен
// Ифс Озуч Обновл Язык Ассоц Удал
// Интерп Запис Игнор ДЖпег
//
// config.ini
//
// [window] popups_on_run = 0 sound_on_run =1 check_updates =1 delayed_run_value = 3
// ; script_auto_run =1 lang =ru only_tray = 0 history_size = 25
// [core] mousemove_record =0 thread_priority = 4 delay_between_lines = 1 smart_delay = 30
// skip_error =0 sshot_jpeg =0 sshot_jpeg_quality = 75 max_log_size = 100 only_primary_monitor=0
// norepeat:
// [window] popups_on_run = 0 delayed_run_value = 3 only_tray = 0 history_size = 25
// [core] thread_priority = 4 delay_between_lines = 1 smart_delay = 30
// sshot_jpeg_quality = 75 max_log_size = 100 only_primary_monitor=0
//
// config_editor.ini
//
// [global] font_name  = Lucida Console font_size = 10 show_gutter= 1
// ins_spaces = 3 refresh_rate = 200 dot_aim = 0 aim_speed = 20//
//

//$str = INIREAD("..\data\config_editor.ini", "font_size", "global")
//$str = INIREAD("H:\dlz\op\clickermann_last\Clickermann4.13b3\data\config_editor.ini", "font_size", "global")

//изменение параметров
//$str = INIREAD("..\data\config_editor.ini", "font_size", "global") // 10
//print($str)
//INIwrite("..\data\config_editor.ini", "font_size", "12", "global")
//$str = INIREAD("..\data\config_editor.ini", "font_size", "global")
//print($str)

//wait(10)
////nir("win trans ititle "NirCmd" 99")
//execute("setz.bat")

//halt(1)



define($init) // пример одноразовой функции
if ($init=0)
   $stri = INIREAD("..\data\config_editor.ini", "font_size", "global") // default fontsize is 10
   print($stri)
   inc($init)
end_if




if (iskeydown(#ctrl)=1)
   if (iskeydown(#b)=1)
      //WNDBUMP(wndfind("Editor - "))
      execute("activate.bat")
      waitms(500)
   end_if
   if (iskeydown(#r)=1)
      execute("setz.bat")
      halt(1)
   end_if
   if (iskeydown(#e)=1)
      setrad()
      waitms(500)
   end_if
   if (iskeydown(#d)=1)
      $str = inputbox("Plz input fontsize: ", "10", 60)
      INIwrite("..\data\config_editor.ini", "font_size", $str, "global")
      waitms(500)
   end_if
end_if
waitms(1)
« Last Edit: August 18, 2017, 10:19:20 PM by open_78 »