Описание команды


close

Завершает процесс(ы) или закрывает окно(а).

close=NameProcess или ##ListName или ??CLASS или $$NameProcess или ^^CLASS или **Path или &&RegExpProcess или ++RegExpCLASS, ||Flag

Параметры:

NameProcess
или
##ListName
или
??CLASS
или
$$NameProcess
или
^^CLASS
или
**Path
или
&&RegExpProcess
или
++RegExpCLASS
Имя. NameProcess - имя процесса. Возможные варианты:
  • имя (AkelPad.exe)
  • PID процесса
  • дескриптор окна
  • clpget - имя берётся из буфера обмена.
  • GLOBALNAME<> - имя, PID или дескриптор переданный глобальными переменными см. Дополнение №23.
  • [info] или <info> - имя, PID или дескриптор переданный параметром см. Дополнение №10.
Завершение нескольких процессов.
  После символов ## прописываются:
  • имена или дескрипторы через разделитель !!
  • имя ключа из секции [CloseList] в TCIMG.ini , в котором прописаны имена или дескрипторы через разделитель !!
Завершение подобных окон, кроме активного.
  После символов ?? прописывается класс окна (TTOTAL_CMD)
Завершение подобных процессов, кроме активного.
  После символов $$ прописывается имя процесса (TOTALCMD.EXE)
Завершение всех подобных окон.
  После символов ^^ прописывается класс окна (CabinetWClass)
Завершение всех подобных процессов указанного пути.
  После символов ** прописывается полный путь к программе, процессы которой необходимо закрыть.
  Если есть запущенные процессы той же программы из другой папки, то они закрыты не будут.
Завершение всех подобных процессов.
  После символов && прописывается регулярное выражение по которому ищутся имена процессов
  &&(Skype.*)
Завершение всех подобных окон.
  После символов ++ прописывается регулярное выражение по которому ищутся классы окон
  ++((Explore|Cabinet)WClass|IEFrame)
Дополнительные параметры:
FlagОжидание.
  0 - не ожидать закрытия процесса (по умолчанию)
  1 - ожидать.

Примечания:

Чтобы узнать информацию о классах, идентификаторах, заголовках окон, можно воспользоваться командами captxt или wntxt или утилитами Au3Info или Control Viewer. см. Дополнение №25

Для получения точного окна см. Заголовки и текст окон

См. также:

closp, dumpp, freez, logpr, openf, openn, opens, openz, prior, procw, resrt, runch, runhp, start, storc, cmdbt, scrpt

Примеры:
 Как создать кнопку?

<IF> [info=x60] = 32 <THEN> close=ACTIVE start=%%COMMANDER_PATH%%\TOTALCMD64.EXE <ELSE> close=ACTIVE start=%%COMMANDER_PATH%%\TOTALCMD.EXE <ENDIF> ;; запускать поочерёдно Total Commander 32/64

<IF> [info=x60] = 32 <THEN> close=ACTIVE start=%%COMMANDER_PATH%%\TOTALCMD64.EXE||/i=%%COMMANDER_PATH%%\WinCmd64.ini <ELSE> close=ACTIVE start=%%COMMANDER_PATH%%\TOTALCMD.EXE||/i=%%COMMANDER_INI%% <ENDIF> ;; запускать поочерёдно Total Commander 32/64 с соответствующим файлом настроек Wincmd.ini

<TIME=h#-1:h#+1:s15> <IF> [info=s70*9060] = 1 <THEN> sndps=1 <ELSE> close=&#58PID: <ENDIF> ;; посылает звуковой сигнал каждые 15 секунд, пока не будет закрыт процесс PID=9060

close=##LIST1 ;; закрыть процессы, прописанные в ключе LIST1 в секции [CloseList] в TCIMG.ini

close=##RegExp.exe!!Viewer.exe ;; закрыть процессы RegExp.exe и Viewer.exe

close=$$TOTALCMD.EXE ;; закрыть все окна Total Commander (запущенных через TOTALCMD.EXE), кроме активного

close=&&(Dropbox.*) ;; закрыть все процессы программы Dropbox

close=&&(Skype.*) ;; закрыть все процессы программы Skype

close=**%P%N ;; закрыть все процессы программы под курсором (только с этим путём)

close=**D:\Test\TCIMG.exe ;; закрыть все процессы программы с заданным путём

close=??TTOTAL_CMD ;; закрыть все окна Total Commander, кроме активного

close=^^CabinetWClass ;; закрыть все окна Проводника (Мой компьютер, папки, и т.д.) класс CabinetWClass

close=++((Explore|Cabinet)WClass|IEFrame) ;; закрыть все окна проводника и Eplorer

close=ACTIVE exect=Run(_PathFull('%%COMMANDER_PATH%%\TOTALCMD.EXE'),'''',@SW_MAXIMIZE) ;; закрыть активное окно TC и запустить

close=ACTIVE inidd=%%COMMANDER_PATH%%\History.ini start=%%COMMANDER_PATH%%\TOTALCMD.EXE ;; закрыть Total Commander, очистить все секции в History.ini, запустить Total Commander x32

close=ACTIVE inidd=%%COMMANDER_PATH%%\History.ini start=%%COMMANDER_PATH%%\TOTALCMD64.EXE ;; закрыть Total Commander, очистить все секции в History.ini, запустить Total Commander x64

close=ACTIVE inidl=%%COMMANDER_PATH%%\WinHistory.ini||SearchText,RenameTemplates,SearchName,Left,Right,MkDirHistory,Selection ;; закрыть Total Commander и очистить перечисленные секции

close=ACTIVE ;; закрыть активное окно

close=AkelPad.exe ;; завершить процесс AkelPad.exe

close=AkelPad.exe||1 ;; завершить процесс AkelPad.exe, ожидая закрытия

close=clpget ;; завершить процесс - имя процесса из буфера обмена

close=clpget.exe ;; завершить процесс - имя (без расширения) процесса из буфера обмена

close=clpget||1 ;; завершить процесс, ожидая закрытия - имя процесса из буфера обмена

close=wscript.exe ;; завершить процесс wscript.exe

exect=$var_ii=##[input=BOX68]||$var_im=$var_ii&'n'||$var_pid=@AutoItPID pause=$var_im <TIME=h#-1:h#+1:s5> <IF> [info=s70*$var_pid] = 1 <THEN> sndps=1 <ELSE> close=&#58PID: <ENDIF> <TIMEEND> exect=MsgBox(262144+64,'Напоминаю','Прошло~~$var_ii~~минут~~!'&@CR&'Пора~~на~~кухню!') ;; через заданное количество минут выдать сообщение (количество вводится в диалоге) + в течении отображения диалога издавать звуковое уведомление $var_ii через каждые 5 секунд

global forpgs slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> start=C:\2\AkelPadConv.exe||/C-||/B-||/L+||/OpenFile('GLOBALSLIST<:INDEX:>')||/SaveFile('GLOBALSLIST<:INDEX:>',65001,1)||/Command(4324)||&&hide|| <NEXT> close=AkelPadConv.exe ;; конвертировать выделенные текстовые файлы с помощью AkelPadConv.exe в UTF-8

global start=%P%N||&&procwait||&&max scren="%t"//1||$fname|png||sclas<GLOBALPROGR<2>>||upd<3> close=GLOBALPROGR<2> ;; запустить программу под курсором, развернуть во весь экран, сделать скриншот и закрыть (не у всех программ это получится сделать,т.к. не прямые классы, к примеру портабельные, у которых запускающий файл один, а имя процесса совершенно другое)

slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> start=%%WINDIR%%\hh.exe||GLOBALSLIST<:INDEX:> pause=200 mxmnz=0||HH~~Parent scren="%p"//1||$fname|png||sclas<ACTIVE>||upd<1> close=ACTIVE <NEXT> ;; создать в текущей папке скриншоты выделенных chm (html) - каждый файл поочередно открывается и закрывается

slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> start=%%WINDIR%%\hh.exe||GLOBALSLIST<:INDEX:> pause=200 mxmnz=0||HH~~Parent scren="%p"//1||<info=f12GLOBALSLIST<:INDEX:>//>|png||sclas<ACTIVE>||upd<1> close=ACTIVE <NEXT> ;; создать в текущей папке именные скриншоты выделенных chm (html) - каждый файл поочередно открывается и закрывается

start=%%WINDIR%%\hh.exe||%P%N pause=200 mxmnz=0||HH~~Parent scren="%p"//1||$fname|png||sclas<ACTIVE>||upd<1> close=ACTIVE ;; запустить справку chm под курсором, сделать скриншот и закрыть

start=%P%N||&&procwait mxmnz=0||ACTIVE scren="%p"//1||$fname|png||sclas<ACTIVE>||upd<1> close=ACTIVE ;; запустить программу под курсором, сделать скриншот и закрыть

tcimg=$cm3008 focusp tcimg=$cm3008 close=ACTIVE ;; закрыть все незаблокированные вкладки и закрыть TC

xends=<info=x65> delss=PS<$f02\Microsoft\Windows\Recent//1//0//*.lnk|*.txt>||1 delss=PS<$f02\Microsoft\Windows\\Cookies//1//0//*.lnk|*.txt>||1 close=GLOBALXENDS<1> inidd=%%COMMANDER_PATH%%\History.ini sends=<info=x60> inidd=%%COMMANDER_PATH%%\History.ini <IF> <info=t51$GLOBALSENDS[1]|32> = 1 <THEN> start=%%COMMANDER_PATH%%\TOTALCMD.EXE <ELSE> start=%%COMMANDER_PATH%%\TOTALCMD64.EXE <ENDIF> ;; удалить указанные файлы в папках Recent и Cookies, закрыть Total Commander, очистить все секции в History.ini, запустить Total Commander


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru