LonerD

|
Posted: Fri Jul 28, 2023 23:18 Post subject: |
|
|
Опять отвалились переменные на ровном месте.
В плагине Autorun прописано так:
Code: | SetEnv /A /EV PATH ;%commander_path%
SetEnv /A /EV PATH ;%commander_path%\System |
В %commander_path%\System лежит файл Hidcon.exe для скрытия консольных окон. И есть несколько пользовательских команд, начинающихся с конструкции:
cmd=Hidcon.exe %comspec% /c
Запускаю последовательно несколько команд, потом оп - через пару секунд следующая уже не запускается. Посмотрел плагином EnvVariables - добавленные значения в переменной PATH пропали. Перезапустил Тотал, попробовал снова, воспроизвести пропадание не удалось.
Заметил ошибки в моей записи.
1. Для чего у меня было /EV - не знаю.
2. Точку с запятой правильнее ставить в конце пути, иначе в тексте переменной получится ;;
Правильно будет вот так:
Code: | SetEnv /A PATH %commander_path%;
SetEnv /A PATH %commander_path%\System; |
-----------------------
Но выявил и другую проблему, которая касается непосредственно плагина.
Время от времени перезапускаю Тотал. Не закрываю, а перезапускаю утилитой Tinny TC Restarter. Оказывается, в конце переменной PATH накапливаются записи вида
Code: | ;D:\TCDL;D:\TCDL\System;D:\TCDL;D:\TCDL\System;D:\TCDL;D:\TCDL\System;D:\TCDL;D:\TCDL\System; |
Может, Windows время от времени запускает внутреннюю проверку состояния системы, обнаруживает это непотребство и удаляет подозрительные записи.
По справке:
При использовании опции /A плагин проверяет наличие добавляемого текста в конце значения переменной и не добавляет его повторно.
На деле это почему-то не работает.
Windows 11 x64, TC 11 RC3, Autorun 2.2.10 beta.
Попробовал более ранние версии Autorun - поведение то же самое. _________________ Windows 11 | TC DreamLair eternal pre-α |
|