Страница 70 из 243

Добавлено: Чт мар 05, 2015 18:05
Avada
Flasher
В документации эта замена впервые обнаруживается в 1.6 beta 14.

Добавлено: Чт мар 05, 2015 18:08
Flasher
Avada
В beta 12.
history_ru.txt писал(а):1.6 beta 12
+ добавлен API для С++
* системная информация перенесена в плагин Sysinfo
Хотя я, помнится, был против переноса.

Добавлено: Чт мар 05, 2015 18:31
Avada
Flasher
Искомая переменная в ридми для beta 12 и beta 13 фигурирует ещё как %AUTORUN_OSARCH%. Второй вопрос, правильно это было описано или нет.

Добавлено: Чт мар 05, 2015 18:45
Flasher
Avada
Где она там фигурирует? У тебя какой-то свой ридми, похоже. :)
MVV писал(а):Как выполнить действие, если процесса не существует?
А тут и не нужен оператор отрицания. Тут всё по старинке:

Код: Выделить всё

ProcessExist NOTE 'notepad.exe'
If %NOTE% = 0 Then
  ShellExec /W:1 /T "notepad.exe"
EndIf

Добавлено: Чт мар 05, 2015 18:58
MVV
Flasher писал(а):Есть: <>. В справке же всё написано.
Это не отрицание, это оператор неравенства.

А как сделать отрицание, не пойму. Есть блок:

Код: Выделить всё

If ProcessExist /F "%COMMANDER_PATH%\Addons\AskParam\AskParam.exe" Then
	'сообщение об ошибке'
Endif
Надо инвертировать условие, чтобы блок выполнялся, когда процесс не запущен. Заводить переменную для результата ProcessExist не хочу, хочу прямо в условии. Пробовал, не работают:

Код: Выделить всё

If ProcessExist /F "%COMMANDER_PATH%\Addons\AskParam\AskParam.exe" = 0 Then

Код: Выделить всё

If ProcessExist /F "%COMMANDER_PATH%\Addons\AskParam\AskParam.exe" <> True Then

Код: Выделить всё

If ProcessExist /F "%COMMANDER_PATH%\Addons\AskParam\AskParam.exe" = False Then

Код: Выделить всё

If (ProcessExist /F "%COMMANDER_PATH%\Addons\AskParam\AskParam.exe") = False Then

Добавлено: Чт мар 05, 2015 19:01
Avada
Flasher
Своих ридми мне тут не надо, авторских достаточно. У меня сохранены беты Autorun 1.6 в полной комплектации. Все архивы включают ридми. В бетах 1-13 — в текстовом виде, далее — как CHM. Искомая информация фигурирует в разделе про Sysinfo. "Плагин экспортирует константы" и так далее. Замена с AUTORUN на SYSINFO была сделана в CHM во всех прежних константах дочернего плагина, плюс кое-что нового добавилось.

Добавлено: Чт мар 05, 2015 19:07
Flasher
MVV писал(а):Заводить переменную для результата ProcessExist не хочу, хочу прямо в условии.
Я тоже много чего хотел (например, писать выражение на одной строке без EndIf), но автору всё это невдомёк.
Avada писал(а):Все архивы включают ридми. В бетах 1-13 — в текстовом виде, далее — как CHM. Искомая информация фигурирует в разделе про Sysinfo.
К чему тут SysInfo, если мы про "фигурирует ещё как %AUTORUN_OSARCH%"?

Добавлено: Чт мар 05, 2015 19:23
Avada
Flasher
SysInfo тут к тому, что переменная %AUTORUN_OSARCH% в ридми для беты 12 и 13 фигурирует именно в разделе про SysInfo и больше нигде. А начиная с беты 14 она заменена на %SYSINFO_OSARCH%. Что, собственно, может легко увидеть любой, у кого есть эти архивы.

Добавлено: Чт мар 05, 2015 19:36
Flasher
Avada
Теперь ясно. А то я именно в истории искал. Т.е. автор зачем-то поменял уже используемые пользователями во всю переменные, но даже предупредить об этом забыл. :?

Добавлено: Чт мар 05, 2015 20:33
Avada
Flasher
Это отсутствие предупреждения меня тоже крайне удивило, и я даже предположил, что фактически изменения могли быть внесены не в бету 14, а в предыдущую, где осталась неисправленной документация. Впрочем, проверять это не стал. :wink:

Добавлено: Чт мар 05, 2015 21:10
MVV
А я спрашивал автора, почему имя поменялось, ещё когда был Readme. :D
Flasher писал(а):Я тоже много чего хотел (например, писать выражение на одной строке без EndIf), но автору всё это невдомёк.
То ладно, убейсиковский синтаксис... Знак равенства тоже сначала был двойным сишным, а потом стал одинарным паскалевским. А тут получается, что вызвать команду без присвоения результата переменной можно, но результат ни с чем сравнить нельзя.

Добавлено: Чт мар 05, 2015 21:25
Flasher
Про старый усикатный синтаксис умолчим... Но твой нужник писать на одной строке с Nоt по важности ничем не превосходит мою хотелку (да и не одна она была в таком ключе).

Добавлено: Пт мар 06, 2015 08:28
Avada
Насчёт замены имён переменных — необходимое уточнение. После нашего обмена мнениями вспомнил, что у меня в конфиге Autorun по-прежнему прописана и нормально работает переменная %AUTORUN_TCARCH%, а вызов Autorun_Sysinfo.dll закомментирован. После чего в CHM-справке (Общая информация — Syntax — Переменные) обнаружилась %AUTORUN_TCARCH% в целости и сохранности. Так что тут не замена, а дополнение, исходная переменная сейчас цела и работает.

Добавлено: Пт мар 06, 2015 14:29
Flasher
Avada
%AUTORUN_TCARCH% в отличии от %AUTORUN_OSARCH%, о которой шла речь, является внутренней, а не системной переменной, поэтому тут как раз таки всё понятно.

Добавлено: Пт мар 06, 2015 15:32
Avada
Flasher
Спасибо, ясно.