Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Windows Script Host 
Author Message
Victor_Dobrov



PostPosted: Wed Jul 23, 2008 05:46    Post subject: Reply with quote

Сделал скрипт, переключающий фильтры или показывающий в тек. панели файлы того же типа, который перетащили на кнопку.

Code:
[Buttonbar]
button=Wcmicons.dll,47
cmd=SwitchFilter.vbs
param=Исполняемые
menu=SwitchFilter


Code:
'SwitchFilter.vbs   (требуется установленный Script Helper ActiveX for TC)
'Параметры: шаблон поиска или фильтр. Если шаблон поиска содержит пробелы, заключите его в кавычки.
'Обычный клик по кнопке скрипта установит/выключит фильтр/шаблон в текущей панели.
'Если на кнопку перетащить файл, в панели остануться только объекты того же типа.

Set TCS = CreateObject("TCSCRIPT.Helper")

[sFilter]="имитация ключа ini-файла"
   sFilter="*.exe"
   sFilter = Replace(sFilter, Chr(34),"")

If WScript.Arguments.Count > 0 Then    'запуск без параметров переключает последний фильтр
   sFilter = WScript.Arguments(0)
   If CreateObject("Scripting.FileSystemObject").FileExists(sFilter) Then sFilter = "*." + LCase(Left(Split(sFilter, ".")(Ubound(Split(sFilter, "."))), Sgn(Ubound(Split(sFilter, "."))) * Len(Split(sFilter, ".")(Ubound(Split(sFilter, "."))))))
   TCS.INIWrite WScript.ScriptFullName, "sFilter", "sFilter", Chr(34) + sFilter + Chr(34)    'запомнить фильтр
End If

   If InStr(sFilter,"*") = 0 Then sFilter = Chr(62) & sFilter

If TCS.GetFilter(TCS.GetSrcPath) <> sFilter Then
   TCS.SendCommand "cm_SrcUserDef"
   TCS.SendKeystroke sFilter & "{ENTER}"
Else
   TCS.SendCommand "cm_SrcAllFiles"
End If
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group