Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.
Модераторы: Avada , CaptainFlint , Nik , d-view , Моторокер
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт июн 16, 2011 15:58
ask-rus писал(а): Скрипт жмем, открывается Wincmd.ini.
А вот так тоже открывается?:
Код: Выделить всё
CreateObject("Scripting.FileSystemObject").OpenTextFile(CreateObject("WScript.Shell")_
.ExpandEnvironmentStrings("%COMMANDER_PATH%\Wincmd.ini"), 1).ReadAll
ask-rus
Сообщения: 2077 Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation
Сообщение
ask-rus » Чт июн 16, 2011 19:20
Flasher писал(а): А вот так тоже открывается?:
Я не знаю, что этим заменить. Попробовал вместо:
Код: Выделить всё
INI = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%\Wincmd.ini")
Text = FSO.OpenTextFile(INI, 1).ReadAll
Выдает ошибку.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт июн 16, 2011 19:25
Я не писал, что надо что-то менять. Это отдельный скрипт.
ask-rus
Сообщения: 2077 Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation
Сообщение
ask-rus » Пт июн 17, 2011 09:13
Flasher писал(а): А вот так тоже открывается?:
Так не открывается.
Добавлено спустя 13 минут:
Flasher писал(а): WScript.Sleep 10 - вместо единицы пробуй 6, 5, 4, 3, 2.
WScript.Sleep 60 - заработал:
Flasher писал(а): Окно мелькает очень быстро.
А я по-прежнему на своем варианте.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
sa
Сообщения: 2758 Зарегистрирован: Ср апр 29, 2009 18:56
Сообщение
sa » Пт июн 17, 2011 11:43
Flasher писал(а): + Окно мелькает очень быстро.
А ради чего оно мелькает?
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Пт июн 17, 2011 11:48
ask-rus писал(а): Так не открывается.
Я вообще понятия не имею, за счёт чего он у тебя открывается.
ask-rus писал(а): WScript.Sleep 60 - заработал:
А с меньшими нет?
ask-rus писал(а): А я по-прежнему на своем варианте.
Ну, если открывается файл, то я бы тоже на нём оставался. Потом ещё с регекспами попробую, может, с ними реплейс не глючит.
sa писал(а): А ради чего оно мелькает?
Для того, чтобы сразу переключение происходило.
ask-rus
Сообщения: 2077 Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation
Сообщение
ask-rus » Пт июн 17, 2011 11:56
Flasher писал(а): А с меньшими нет?
2, 3, 4 - нет, 5 не проверял.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
sa
Сообщения: 2758 Зарегистрирован: Ср апр 29, 2009 18:56
Сообщение
sa » Пт июн 17, 2011 11:56
Flasher писал(а): чтобы сразу переключение происходило.
Вроде бы и без вызова диалога внутренних ассоциаций переключение сразу происходит..?
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Пт июн 17, 2011 12:00
sa
Посмотри в папке с ассоциированными в ТС файлами как меняются значки при вызове.
sa
Сообщения: 2758 Зарегистрирован: Ср апр 29, 2009 18:56
Сообщение
sa » Пт июн 17, 2011 12:10
Flasher писал(а): как меняются значки
Понял теперь. Замечу для ясности, что фактическое переключение внутренних ассоциаций (за вычетом изменения ассоциированных значков) происходит и без мелькающего диалога.
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Пт июн 17, 2011 14:16
sa писал(а): фактическое переключение внутренних ассоциаций (за вычетом изменения ассоциированных значков) происходит и без мелькающего диалога.
Но кому оно такое, спрашивается, надо? Это было понятно, поэтому я и
написал в своё время.
Ты-то в итоге какой вариант выбрал?
sa
Сообщения: 2758 Зарегистрирован: Ср апр 29, 2009 18:56
Сообщение
sa » Пт июн 17, 2011 14:29
Flasher писал(а): Ты-то в итоге какой вариант выбрал?
Пока, чтобы избавиться от задвоения [Associations] вместо твоих мельканий использую свои:
Код: Выделить всё
WSH.Exec("%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ef tcm(494)")
WScript.Sleep 60
WSH.SendKeys "+{TAB 5} {TAB 5}{ENTER}+{TAB 5} {ENTER}{TAB 2}"
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Пт июн 17, 2011 14:43
sa писал(а): Код: Выделить всё
WSH.SendKeys "+{TAB 5} {TAB 5}{ENTER}+{TAB 5} {ENTER}{TAB 2}"Спасибо, посмешил.
Тогда уж
sa
Сообщения: 2758 Зарегистрирован: Ср апр 29, 2009 18:56
Сообщение
sa » Пт июн 17, 2011 15:07
Flasher писал(а): Тогда уж
Нет, надо вернуть прежнее состояние цветов для типов файлов.
А вот последние {TAB 2} действительно для данного случая избыточны.
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Пт июн 17, 2011 15:08
sa писал(а): Нет, надо вернуть прежнее состояние цветов для типов файлов.
Не нет, а да, там два пробела. Избыточно там вообще всё, начиная с вызова настроек, которые из-за громоздкого файла конфигурации долго открываются (тут 60 мс явно мало), заканчивая набором ненужных переходов и применений.