'==================== VBS ====================
' Сравнение одноимённых каталогов в панелях ТС
' Условие: Путь запуска — пустой
' Параметры: %Z%N %X"%P" "%T"
'=============================================
Set A = WSH.Arguments : If A.Count < 3 Then WSH.Quit
If A(1) = A(2) Then WSH.Quit
With CreateObject("Scripting.FileSystemObject")
If StrComp(.GetAbsolutePathName("") & "\", A(1)) Then _
AP = 2 : NP = 1 Else AP = 1 : NP = 2
If Not .FolderExists("\\?\" & A(AP) & A(0)) Then WSH.Quit
Check = Not .FolderExists("\\?\" & A(NP) & A(0))
End With
With CreateObject("WScript.Shell")
If Check Then .Popup "В другой панели нет одноимённого каталога!",_
1.7, " Сравнение/синхронизация одноимённых каталогов ", 4144 : WSH.Quit
.Run """%COMMANDER_EXE%"" /S=S:= """ & A(1) & A(0) & """ """ & A(2) & A(0) & """"
End With
Скрипт лучше обычной кнопки, т.к. как не будет выводить окно синхронизации в ложных ситуациях: курсор на файле, [..] или папке без наличия одноимённой в другой панели.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Здравствуйте.
Необходим скрипт, распаковывающий определённый архив из списка в активную панель. Список (архивы 7z с полными путями, желательно внутри самого скрипта и с возможностью добавления/удаления позиций) пронумерован, номер необходимого архива передаётся как параметр. Или, если со списком не получится, то распаковка определённого архива в активную панель.
Спасибо.
krmit
Тут принято начинать с поиска. Ищите темы: Рекурсивная распаковка Кнопки для 7-Zip
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
krmit
Эти темы прежде всего соответствуют профилю вопроса.
Выделенные файлы там формируются из временного списка. Ничего не мешает заменить параметр путём к списку с соотв. кодировкой.
Зачем нумеровать список, куда и для чего передавать параметр с номером и удалять какие-то позиции, вы можете объяснить там.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Структура такая:
...
D:\Folder_1\result\
D:\Folder_2\result\
D:\Folder_3\result\
D:\Folder_4\result\
...
При выделении Folder_1, Folder_2 и т.д. и запуске скрипта, папки result должны паковаться в result.zip, архивы должны находиться в том же каталоге что и папка result. Если архив существует он должен заменяться новым.
Версия TC 9.50
'================================ VBS ================================
' Упаковать подкаталоги в одноимённые zip-архивы в выбранных каталогах
' Параметры: %WL "<имя подкаталога>"
'=====================================================================
Option Explicit : Dim A, Mask, FSO, ShA, List, Str, Arch
Set A = WSH.Arguments : If A.Count Then Mask = A(1) Else WSH.Quit
Set FSO = CreateObject("Scripting.FileSystemObject")
Set ShA = GetObject("new:{9BA05972-F6A8-11CF-A442-00A0C90A8F39}").Item.document.Application
Set List = FSO.OpenTextFile(A(0),,,-1)
Do: Str = List.ReadLine
If Right(Str, 1) = "\" Then
If FSO.FolderExists(Str & Mask) Then
Arch = Str & Mask & ".zip"
With FSO.CreateTextFile(Arch, 1) .Write "PK" & String(17, Chr(0)) :.Close: End With
ShA.NameSpace(Arch).CopyHere Str & Mask, 13332
End If
End If
Loop Until List.AtEndOfStream : List.Close
Set List = Nothing : Set FSO = Nothing : Set ShA = Nothing
Последний раз редактировалось Flasher Вт янв 14, 2020 01:01, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
'=================== VBS ====================
' Поиск подкурсорного объекта в другой панели
' Параметры: %Z%N "%T" [/a]
' /a — ключ добавляет поиск в архивах.
'============================================
Set A = WSH.Arguments
If A.UnNamed.Count = 2 Then T = A(1) Else WSH.Quit
Set FSO = CreateObject("Scripting.FileSystemObject")
If Not FSO.FolderExists(T) Then WSH.Quit
Set WSS = CreateObject("WScript.Shell")
If A.Named.Exists("a") - ((Split(Split(FSO.OpenTextFile(WSS.Environment("Process")("COMMANDER_INI"))._
ReadAll, "LastSearchOptions=")(1), vbCr)(0) And 1024) = 0) = 0 Then Keys = "{TAB 6} "
WSS.Run "mshta ""javascript:close(clipboardData.setData('text','" & A(0) & "'))""", 7, 1
WSS.SendKeys "{TAB}" : PID = WSS.Exec("%COMMANDER_EXE% /O /S=F """ & T & """").ProcessID
Do : W = WSS.AppActivate(PID) : Loop Until W : WSS.SendKeys "^v" & Keys & "~%-"
Set WSS = Nothing : Set FSO = Nothing
Последний раз редактировалось Flasher Пн июн 01, 2020 21:44, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
В разделе много чего есть, что туда имеет ещё больший смысл добавить, просто с обновлениями движка там возник ряд нерешённых проблем (подсветка синтасиса, заливка файлов и т. д.), из-за этого планы по массовому заливанию скриптов и правки нек. страниц лениво зависли.
Кстати, о птицах, если этот пункт проделан, найденное на панель вываливается?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.