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 

Показ файлов, не имеющих совпадений по базовому имени

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Ostap Fender



Joined: 19 Jun 2017
Posts: 35

Post (Separately) Posted: Tue Dec 12, 2017 16:58    Post subject: Показ файлов, не имеющих совпадений по базовому имени Reply with quote

Прошу Уважаемых модераторов дать теме более подходящее название.
(Вывод на панель файлов, не имеющих одноименного аналога, без учета расширения) -у меня просто обрезалось.
Пояснение:
Имеется папка. В ней находятся 100 файлов .png, и 75 файлов .txt, имеющих одинаковые имена с файлами .png. (Форматы файлов приведены образно).
1.Нажатие на кнопку должно вывести на панель 25 файлов .png, не совпадающих по имени ни с одним файлом .txt.
2.Кнопка должна работать как с выделенными файлами, так и с содержимым выделенных папок, выводя на панель только файлы.
Условие 2 не принципиально для выполнения, если это существенно затруднит создание кнопки, (можно предварительно показать папки без подкаталогов), но по возможности - желательно.
Понимаю, что эта возможность реализована в ТС в поиске с помощью плагина [=tc.Имя]. Но решение данной задачи, подразумевает несколько действий. А я хотел бы выполнить всё это за одно нажатие.
Данная кнопка предусматривает узконаправленную область применения, и не найдет массового спроса, но был бы очень признателен за её создание.
С уважением.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 12, 2017 19:40    Post subject: Reply with quote

Code:
'=============================== VBS ===============================
' Показать в активной панели файлы без наличия однобазовых спутников
' Условие: требуется компонент TCScript.dll
'===================================================================
Set Dict = CreateObject("Scripting.Dictionary")
Set FSO  = CreateObject("Scripting.FileSystemObject")
With CreateObject("TCScript.Helper")
  .Pause = 0 : .Wait = True
  Clip = .GetTextFromClip : P = .GetSrcPath
  Set Items = CreateObject("Shell.Application").NameSpace(P).Items
  For Each F in FSO.GetFolder(P).Files
    BN = FSO.GetBaseName(F)
    If Not Dict.Exists(BN) Then
      Dict.Add BN, "" : Items.Filter 73920, BN & ".*"
      If Items.Count = 1 Then List = List & vbLf & F
    End If
  Next : Set Dict = Nothing : Set FSO = Nothing
  .SetTextToClip List : .LockTC True : .SendCommand 2033, True
  .SendCommand 2023, True : .SendCommand 524, True
  .LockTC False : .SetTextToClip Clip
End With
Это именно показ, не фильтрация.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Wed Dec 13, 2017 01:42; edited 1 time in total
Back to top
View user's profile Send private message
Ostap Fender



Joined: 19 Jun 2017
Posts: 35

Post (Separately) Posted: Tue Dec 12, 2017 21:26    Post subject: Reply with quote

Как всегда Flasher безукоризнен. А иначе и быть не могёт. Спасибо. Не знал я ТС как хотелось бы, а скоро вообще разучусь.
Доводим задачу до логического конца.
После вывода файлов на панель, кнопка должна создать в противоположной панели, в папке с названием @ которую она создаст сама, спутники для выведенных файлов формата .png и .tga (только для этих форматов, для других спутнике не нужны по сути),в формате .txt с таким содержимым: (в содержимом обязательно наличие пустой десятой строки)
Has Alpha Channel: yes
Number of Animations: 0
Horizontal Animation: no
Vertical Resizable: no
Horizontal Resizable: no
Fixed Top: 0
Fixed Bottom: 0
Fixed Left: 0
Fixed Right: 0
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Dec 13, 2017 02:38    Post subject: Reply with quote

На доброе здоровье.
Все, что идёт далее, к сабжу не относится и реализуется иначе. Нет смысла что-то вообще показывать в панели, когда можно пройтись рекурсивно (т. е. по всей глубине, если это требуется по 2 условию) по папке, сопоставить имена и создать txt для подходящих.
Тема скорее новая (Создание отсутствующих описаний для файлов по маске) или вот эта.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group