Рестарт/перезапуск TC
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
- LonerD
- Сообщения: 1174
- Зарегистрирован: Вт янв 04, 2011 03:56
- Откуда: Макеевка
- Контактная информация:
Поправка - через cm_Exit (ибо Alt+F4 не при всяких настройках закрывает ТС).[s]в отличии от закрытия ТС через посыл Alt+F4.[/s]
У меня сохраняет.не сохраняться открытые перед "смертью" директории
Самое плохое - этот вариант не закрывает и не убивает процесс 32-х битного ТС под 64-битной Windows.KopBuH
Ваш вариант не закрывает ТС, а убивает его процесс.
Непонятный нюанс. В предложенном варианте процесс не убивается (не найден PID) и новая копия Тотала не запускается. А вот если добавить вначале перед comspec скрытие консольных окон hidcon - запускается новая версия Тотала, но старая не убивается. Почему? Ещё не сталкивался чтобы скрыватель консоли так влиял на консольную команду.
И почему PID не находится? Taskill ведь может убивать 32-х битные процессы.
Последний раз редактировалось LonerD Чт мар 07, 2013 16:29, всего редактировалось 1 раз.
Windows 11 | TC DreamLair eternal pre-α
- LonerD
- Сообщения: 1174
- Зарегистрирован: Вт янв 04, 2011 03:56
- Откуда: Макеевка
- Контактная информация:
Avada
А мне наоборот - вариан реализации кажется весьма интересным, но пока не полностью работоспособным.
Flasher
Если ещё актуально по скрипту.
Погонял под Win8x64, Тотал 32-х и 64-х битный, с последним TwinKey (курсор в неактивной панели в TwinKey отключен, в Тотале - включен).
Положение курсора сохраняется только на файлах, но не на каталогах. Внутри архивов положение курсора не сохраняется.
Если файлов в панели много и курсор находится не на первых файлах - то после перезапуска положение его сохраняется, но на экране он не виден, нужно крутнуть чуток вниз список файлов.
Если добавить в авторан активацию Virtual Panel
то при при положении курсора на правой панели после запуска открывается совсем не то, что ожидалось; при положении курсора на левой панели - положение курсора сохраняется через раз.
В целом даже без этих строк после нескольких десятков перезапусков было
А мне наоборот - вариан реализации кажется весьма интересным, но пока не полностью работоспособным.
Flasher
Если ещё актуально по скрипту.
Погонял под Win8x64, Тотал 32-х и 64-х битный, с последним TwinKey (курсор в неактивной панели в TwinKey отключен, в Тотале - включен).
Положение курсора сохраняется только на файлах, но не на каталогах. Внутри архивов положение курсора не сохраняется.
Если файлов в панели много и курсор находится не на первых файлах - то после перезапуска положение его сохраняется, но на экране он не виден, нужно крутнуть чуток вниз список файлов.
Если добавить в авторан активацию Virtual Panel
Код: Выделить всё
# Activate Virtual Panel Plugin
CommandExec /CD "\\\Virtual Panel"
Sleep 50
SendCommand cm_GotoPreviousDirВ целом даже без этих строк после нескольких десятков перезапусков было
Windows 11 | TC DreamLair eternal pre-α
А где я отменял актуальность?LonerD писал(а):Если ещё актуально по скрипту.
Единственное, что можно делать, чтобы оставлять курсор на папках, это входить и выходить из них (причём менять фокус, если папки в обеих панелях). Сомневаюсь, что тебе такое понравится, да и остальным тоже.LonerD писал(а):Положение курсора сохраняется только на файлах, но не на каталогах.
Знаю, не предусмотрено ТС. Только фокус активности сохраняется (это тоже в какой-то мере положение).LonerD писал(а):Внутри архивов положение курсора не сохраняется.
Крутить ничего не надо, достаточно воспользоваться одинарным нажатием вверх/вниз.LonerD писал(а):но на экране он не виден, нужно крутнуть чуток вниз список файлов.
Ещё бы. Кто последний, тот и водит. Либо скрипт, либо Autorun.LonerD писал(а):Если добавить в авторан активацию...
на левой панели - положение курсора сохраняется через раз
Как вариант - ставить решётку в autorun.cfg перед указанной командой. Но это уже для твоего частного случая.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Подробный анализ требует времени, которого у меня пока в достаточном количестве нет. Кое-что, впрочем, сообщить могу.Flasher писал(а):Это Avada написал, что погоняет на других машинах, но так, по всей видимости, и не погонял..
Упоминавшаяся уже утилита ReloadTC, да, не работает в 64-битном TC, но зато обладает одним весьма ценным качеством, которого я у конкурентов не наблюдаю. Поясню на примере.
Допустим, у нас есть TC, который в норме запускается без всяких специальных параметров, с подхватыванием INI-файла, лежащего в папке TC. Допустим также, что предусмотрен вызов (в том числе через ярлык) того же самого TC с минимальными настройками, близкими у умолчальным. Для такого тестового запуска значениями параметров /I и /F указаны другие INI-файлы.
Итак, ярлыком запускается (с параметрами) тестовая версия TC. Создадим там кнопку для перезапуска. Если в ней используется ReloadTC, он именно этот самый TC с этими самыми параметрами опять и перезапустит. Если используются средства, где указана переменная %Commander_EXE%, после закрытия окна тестового TC запущен будет другой, полнофункциональный вариант той же копии TC (тот же экзешник, но без параметров и, следовательно, с другими INI-файлами). И скрипт, и Tinny TC Restarter работают именно так.
Интересно, можно ли тут совместить обе полезности?
На форуме проблема анализа командной строки поднималась, к примеру, здесь, но это было очень давно. Что с тех пор изменилось? Что можно сделать сейчас при запуске утилиты/скрипта из текущей копии TC? Для основного файла настроек есть переменная %COMMANDER_INI%. Для настроек FTP аналога нет, но этим в первом приближении пока что можно пренебречь.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
"Этот самый" он запустить никак не может, он аналогично создаёт новый процесс, ибо старый уже был захлопнут.Avada писал(а):ReloadTC, он именно этот самый TC с этими самыми параметрами опять и перезапустит.
В моём случае не без параметров, а с параметрами, но не теми, с какими был запущен Тотал через ярлык.Avada писал(а):%Commander_EXE%, после закрытия окна тестового TC запущен будет другой, полнофункциональный вариант той же копии TC (тот же экзешник, но без параметров и, следовательно, с другими INI-файлами). И скрипт, и Tinny TC Restarter работают именно так.
Совмещение противоречит сути возврата, т.к. ТС запускается с определёнными параметрами /L= /R= /P=L/R, которые также могут фигурировать в активном ТС.Avada писал(а):можно ли тут совместить обе полезности?
Если речь идёт только об /I и /F, то, в принципе, их вытащить и подставить в комстроку можно, только в данном случае PID из Auotorun точно потребуется.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
- LonerD
- Сообщения: 1174
- Зарегистрирован: Вт янв 04, 2011 03:56
- Откуда: Макеевка
- Контактная информация:
Flasher
Желаемый результат с ним получается не всегда - не будешь же каждый раз следить где находится курсор (на файле или на каталоге) при перезапуске.
Нигде.А где я отменял актуальность?
Тоже сомневаюсь. Тогда для себя не вижу смысла в использовании скрипта.Сомневаюсь, что тебе такое понравится, да и остальным тоже.
Windows 11 | TC DreamLair eternal pre-α
Avada
Ясно. Сделать - сделаю, но вот только не знаю, как быть - править старый пост или запостить MIME?
LonerD
Весьма странная попытка увидеть смысл использования только там, где всё без исключения работает. Может, и от ТС откажешься?
Любой иной перезапуск тебе такого возврата не сделает. Утеривать текущие позиции (в архивах, в системных плагинах, в виртуальных папках, в заблокированных вкладках) лично мне никакого удовольствия после перезапуска, которым я частенько пользуюсь, не доставляет. Если тебе доставляет, не вопрос, юзай простейшие варианты (уже давно мне неинтересные). Суть скрипта прежде всего в запоминании открытых псевдо/папок, мысль о позиции курсора на файлах возникла сравнительно недавно.
Ясно. Сделать - сделаю, но вот только не знаю, как быть - править старый пост или запостить MIME?
LonerD
Весьма странная попытка увидеть смысл использования только там, где всё без исключения работает. Может, и от ТС откажешься?
Любой иной перезапуск тебе такого возврата не сделает. Утеривать текущие позиции (в архивах, в системных плагинах, в виртуальных папках, в заблокированных вкладках) лично мне никакого удовольствия после перезапуска, которым я частенько пользуюсь, не доставляет. Если тебе доставляет, не вопрос, юзай простейшие варианты (уже давно мне неинтересные). Суть скрипта прежде всего в запоминании открытых псевдо/папок, мысль о позиции курсора на файлах возникла сравнительно недавно.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
- LonerD
- Сообщения: 1174
- Зарегистрирован: Вт янв 04, 2011 03:56
- Откуда: Макеевка
- Контактная информация:
Flasher
Я ведь твоим скриптом перехода к закладкам (в том числе если закладка стоит на папке) пользуюсь - нравится
Нет.Может, и от ТС откажешься?
У меня Тотал иногда сутки и более не закрывается и не перезапускается.перезапуска, которым я частенько пользуюсь
Мне до твоего скрипта ни одна ни вторая мысль даже не приходили, потому пока не осознал все удобства этого метода.Суть скрипта прежде всего в запоминании открытых псевдо/папок, мысль о позиции курсора на файлах возникла сравнительно недавно.
PS. Уже не так сомневаюсь.Единственное, что можно делать, чтобы оставлять курсор на папках, это входить и выходить из них (причём менять фокус, если папки в обеих панелях). Сомневаюсь, что тебе такое понравится, да и остальным тоже....
Тоже сомневаюсь.
Я ведь твоим скриптом перехода к закладкам (в том числе если закладка стоит на папке) пользуюсь - нравится
Windows 11 | TC DreamLair eternal pre-α
Наверно, частично заблокированными вкладками вообще не пользуешься и в архивы почти не заходишь. Если бы пользовался, сразу понял бы всю соль, ибо перезапускать при перенастройках ТС (автозагрузки, плагинов) просто необходимо. Перезапуски также требуются при перезаполнении памяти, багах и висах.LonerD писал(а):Мне до твоего скрипта ни одна ни вторая мысль даже не приходили, потому пока не осознал все удобства этого метода.
Я не думаю, что поведение будет аналогичное, как и при активном окне ТС. Не пробовал ещё блокировать окно только при его появлении. Могут быть артефакты, и некоторая задержка добавится. Ладно, посмотрю, как можно грамотней реализовать. Если получится криво, то выкладывать не буду.LonerD писал(а):Я ведь твоим скриптом перехода к закладкам (в том числе если закладка стоит на папке) пользуюсь - нравится
Avada
Собственно, обойдусь без Autorun-a, так что можно и обновить.
Такой вопрос. На данный момент мы задаём ini в отдельной переменной. А что если в ini-файле, задаваемым через ключ, нет редиректа, или он ведёт на другой ini-файл с историей?
И как ведёт себя ReloadTC, если писать к файлам конфигурации не путь целиком, а только имя файла?
P.S. И не пора бы уже тему, прямо касаемую автоматизации, перенести в нужный подфорум?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
В моём случае — именно что нет. Да, такие варианты надо учесть.Flasher писал(а):На данный момент мы задаём ini в отдельной переменной. А что если в ini-файле, задаваемым через ключ, нет редиректа, или он ведёт на другой ini-файл с историей?
Я, конечно, могу проверить специально, но у меня в параметрах TC указывается не только другое имя, но и другой путь (вообще на другом диске).Flasher писал(а):И как ведёт себя ReloadTC, если писать к файлам конфигурации не путь целиком, а только имя файла?
Кстати, у ReloadTC могут быть собственные параметры, в том числе и для INI-файлов. Если они используются (у меня — нет), то подменяют стандартные (это есть в документации утилиты).
Безусловно, пора, и я это делаю. Общая тема по перезапуску TC необходима, но её действительно логично и правильно держать в "Автоматизации".Flasher писал(а):И не пора бы уже тему, прямо касаемую автоматизации, перенести в нужный подфорум?
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
У меня exe-шка на AutoIt, с таким кодом:
Источник AutoIt-Script.Ru
Код: Выделить всё
Global $title
if processexists("TOTALCMD64.EXE") then
$title = _Process2Win("TOTALCMD64.EXE")
WinClose($title)
Run("Путь к папке\TOTALCMD.exe")
elseIf processexists("TOTALCMD.EXE") then
$title = _Process2Win("TOTALCMD.EXE")
WinClose($title)
Run("Путь к папке\TOTALCMD64.exe /i="Путь к папке\WinCmd64.ini")
endif
func _Process2Win($pid)
if isstring($pid) then $pid = processexists($pid)
if $pid = 0 then return -1
$list = WinList()
for $i = 1 to $list[0][0]
if $list[$i][0] <> "" AND BitAnd(WinGetState($list[$i][1]),2) then
$wpid = WinGetProcess($list[$i][0])
if $wpid = $pid then return $list[$i][0]
EndIf
next
return -1
endfunc