вот бы еще проверку ServicePack'а прикрутили
Autorun
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Специализированной функции точно не будет. Скорее что-нибудь универсальное для чтения реестра.KopBuH писал(а):вот бы еще проверку ServicePack'а прикрутили
Можно, по аналогии с AUTORUN_TCHANDLE.KopBuH писал(а):есть еще одна вещь, которую хотелось бы видеть в плагине:
это переменная с PID текущего процесса TotalCmd.exe.
заметил еще такой глюк:
autorun.cfg
# Проверка архитектуры ОС
If %AUTORUN_OSARCH% == 64 Then
SetEnv COMMANDER_OSARCH x64
ElseIf %AUTORUN_OSARCH% == 32 Then
SetEnv COMMANDER_OSARCH x86
EndIf
на Win8 x64 Pro все равно определяет битность ОС как x86
ну, и конечно хорошо бы добавить определение Win8
%AUTORUN_OSVERSION% == WIN_8
autorun.cfg
# Проверка архитектуры ОС
If %AUTORUN_OSARCH% == 64 Then
SetEnv COMMANDER_OSARCH x64
ElseIf %AUTORUN_OSARCH% == 32 Then
SetEnv COMMANDER_OSARCH x86
EndIf
на Win8 x64 Pro все равно определяет битность ОС как x86
ну, и конечно хорошо бы добавить определение Win8
%AUTORUN_OSVERSION% == WIN_8
Думаю, пора уже выносить эту кучу псевдопеременных в подплагин, чтобы не надо было каждый раз обновлять сам плагин, чтобы добавить новую или исправить имеющиеся... Там их, кстати, можно даже сделать обычными переменными окружения, с которыми потом можно будет работать далее.
И вообще, не надо плодить псевдопеременные. К псевдопеременным нужно прибегать только в случае, когда они возвращают различное значение в зависимости от определенных условий (например, случайное число - каждый раз новое значение). Если же значение переменной неизменно (версия винды, например - она явно не изменится, пока тотал запущен), спокойно можно добавить её как обычную переменную окружения, головной боли в разы меньше.
А насчёт AUTORUN_OSVERSION - надо сделать, чтобы переменная возвращала числовое значение версии, если не может его опознать (например, 6.2W для рабочей станции, или 6.2S для серверной). Тогда этим можно будет пользоваться на неизвестных версиях винды (глядишь, через годик Windows 9 выпустят... сейчас мода пошла на накрутку номеров версий).
И вообще, не надо плодить псевдопеременные. К псевдопеременным нужно прибегать только в случае, когда они возвращают различное значение в зависимости от определенных условий (например, случайное число - каждый раз новое значение). Если же значение переменной неизменно (версия винды, например - она явно не изменится, пока тотал запущен), спокойно можно добавить её как обычную переменную окружения, головной боли в разы меньше.
А насчёт AUTORUN_OSVERSION - надо сделать, чтобы переменная возвращала числовое значение версии, если не может его опознать (например, 6.2W для рабочей станции, или 6.2S для серверной). Тогда этим можно будет пользоваться на неизвестных версиях винды (глядишь, через годик Windows 9 выпустят... сейчас мода пошла на накрутку номеров версий).
Все эти переменные, за исключением, может, версии винды - одна-две строчки кода, и эти данные так или иначе используются плагином. Нет смысла делать еще дополнительные плагины для этого. Модульность, конечно, хорошо, но до разумных пределов.MVV писал(а):Думаю, пора уже выносить эту кучу псевдопеременных в подплагин, чтобы не надо было каждый раз обновлять сам плагин, чтобы добавить новую или исправить имеющиеся... Там их, кстати, можно даже сделать обычными переменными окружения, с которыми потом можно будет работать далее.
Если будет нужно организовать действительно что-то сложное, а главное - малоиспользуемое, то можно и задуматься о плагине.
Если бы плагин работал напрямую с переменными окружения (как батник), это имело бы смысл. Но он оперирует переменными.MVV писал(а):И вообще, не надо плодить псевдопеременные. К псевдопеременным нужно прибегать только в случае, когда они возвращают различное значение в зависимости от определенных условий (например, случайное число - каждый раз новое значение). Если же значение переменной неизменно (версия винды, например - она явно не изменится, пока тотал запущен), спокойно можно добавить её как обычную переменную окружения, головной боли в разы меньше.
И это даже не псевдопеременные, а константы. И обрабатываются они совершенно одинаково. Впрочем, если нужно будет реализовать именно псевдопеременную, обработка вполне может быть реализована тем же механизмом.
Вот с этим согласен. Вместо UNKNOWN вполне можно выводить числовое значение.MVV писал(а):А насчёт AUTORUN_OSVERSION - надо сделать, чтобы переменная возвращала числовое значение версии, если не может его опознать (например, 6.2W для рабочей станции, или 6.2S для серверной). Тогда этим можно будет пользоваться на неизвестных версиях винды (глядишь, через годик Windows 9 выпустят... сейчас мода пошла на накрутку номеров версий).
Откуда же плагин может знать, с какой целью запущен тотал?
Создай второй wincmd.ini без плагинов (разве что листерные оставь) и запускай второй экземпляр тотала с этим INI с помощью ключа /i=путь_к_ini. Чем меньше лишнего будет в этом конфиге, тем быстрее будет открываться этот отдельный листер.
Можешь даже для секции ListerPlugins в альтернативном конфиге редирект сделать на основной wincmd.ini, тогда плагины всегда будут одни и те же. Думаю, такого конфига вполне хватит (поправь путь к основному конфигу, если у тебя другой):
Создай второй wincmd.ini без плагинов (разве что листерные оставь) и запускай второй экземпляр тотала с этим INI с помощью ключа /i=путь_к_ini. Чем меньше лишнего будет в этом конфиге, тем быстрее будет открываться этот отдельный листер.
Можешь даже для секции ListerPlugins в альтернативном конфиге редирект сделать на основной wincmd.ini, тогда плагины всегда будут одни и те же. Думаю, такого конфига вполне хватит (поправь путь к основному конфигу, если у тебя другой):
Код: Выделить всё
[Configuration]
AlternateUserIni=%COMMANDER_PATH%\wincmd.ini
[ListerPlugins]
RedirectSection=%COMMANDER_PATH%\wincmd.inisEXEcutor
Можно также открывать через программу Lister.exe, а если не отдельным процессом, то так.
Можно также открывать через программу Lister.exe, а если не отдельным процессом, то так.
Пятая бета.
Скачать
В этой версии поменялся API плагинов. Теперь можно добавлять переменные и функции, возвращающие результат. Наверняка, он еще будет меняться. Также добавил исходник тестового плагина.
Сделана эта версия была довольно давно, и долгое время проработала у меня без проблем, но все же вполне могут быть новые косяки.
KopBuH
Определение восьмерки добавил. Но проверить архитектуру пока не могу за отсутствием установленной восьмерки.
Скачать
В этой версии поменялся API плагинов. Теперь можно добавлять переменные и функции, возвращающие результат. Наверняка, он еще будет меняться. Также добавил исходник тестового плагина.
Сделана эта версия была довольно давно, и долгое время проработала у меня без проблем, но все же вполне могут быть новые косяки.
KopBuH
Определение восьмерки добавил. Но проверить архитектуру пока не могу за отсутствием установленной восьмерки.
Шестая бета.
Скачать
Что нового:
Второй и третий пункты подразумевают добавление востребованного функционала по определению запущенности процесса.
Скачать
Что нового:
Код: Выделить всё
+ возможность использования полноценных условий сравнения
+ возможность использования специальных функций в сравнении
+ плагин Process (работа с процессами)
* изменения в языковом файле
Седьмая бета.
Скачать
Изменения:
Скачать
Изменения:
Код: Выделить всё
+ возможность выполнения действий при закрытии TC
+ добавлена функция ProcessTerminate в плагин Process
+ файл конфигурации может быть ANSI или UTF-16(LE).
- исправлена проблема с ShellExec в определенных условиях