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


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 секунд

exect=$var_pid=##<info=x62> <TIME=n00> exect=ProcessExists($var_pid)?0:_CmdCm('close=&#58PID:') tcimg=$cm582 ;; каждый час сохранить историю каталогов в Total Commander, если окно TC нет, то процесс при проверке отключается.

global runcm=15||3 close=GLOBALRUNCM<1> ;; в активной панели в Total Commander перейти в каталог полученный из активного окна проводника с выделением объектов и закрыть окно проводника

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

imgpr=1 close=**%%COMMANDER_PATH%%\USER\USER_SOFT\TCIMG\TCIMG.exe sends=#http://wincmd.ru/plugring/TCIMG.html??-1||formt<6!!.*TCIMG.\d+\.\d+\.zip> downh=%%COMMANDER_PATH%%\USER\USER_SOFT\TCIMG\Files\TCIMG_Update\//2||GLOBALSENDS<1> zunpf=GLOBALDOWNH1<1>||%%COMMANDER_PATH%%\USER\USER_SOFT\TCIMG\//1 delsm=GLOBALZUNPF0<1> ;; скачать, обновить TCIMG в заданной папке

sends=%WL??-1||&?(?mi)^.+\.gif$ forpgs <FOR> 1 <TO> GLOBALSENDS<0> bends=@GLOBALSENDS<:INDEX:>??-1||&?(.+\\)([^\\]+) start=SGIFPRO||param<GLOBALSENDS<:INDEX:>>||&&hide await=1||0||GLOBALBENDS<1>||1,3||GLOBALBENDS<2>.BAK close=SGIFPRO.exe <NEXT> ;; передать поочерёдно список выделенных gif файлов в программу SGIFPRO, отслеживать создание файла BAK, после чего процесс программы закрывается

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 ;; запустить программу под курсором, сделать скриншот и закрыть

start=C:\Tor\tor.exe||-f||torrc||workdir<C:\Tor\>||&&procwait||&&min pause=1s global await=5||0||C:\Tor\notice.log||1t!!100%%~~(done) GLOBALAWAIT<a> close=tor.exe delsm=C:\Tor\notice.log||1 ;; запустить программу tor.exe, приостановить дальнейшее действие команд, пока в файле notice.log не появится фраза "100%~~(done)", после появления, закрыть процесс и удалить лог

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