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: Autorun 
Author Message
Orion9



PostPosted: Mon Jan 20, 2025 14:04    Post subject: Reply with quote

AkulaBig wrote:
А я ей никогда не пользовался Very Happy

А зачем же она у вас в сборке тогда? Laughing

Шутки шутками, а внутренние ассоциации вполне могут пригодиться. Это классный функционал, но у него есть недостатки: не очень удобный интерфейс и необходимость "прокачки" секции [Associations] для комфортного использования. Мало кто станет делать индивидуальное сопоставление расширений, но только так можно извлечь хоть какую-то пользу.

Вот и у вас в сборке полноценно расставлена только SumatraPDF, а на IrfanView, как я понимаю, вы уже поленились ))

А ведь могли бы сделать что-то вроде:
Code:
Filter10=*.b3d
Filter10.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,036
Filter10_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter11=*.bmp
Filter11.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,000
Filter11_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter12=*.cam
Filter12.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,001
Filter12_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter13=*.clp
Filter13.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,002
Filter13_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""

Или перспектива "возиться " руками с десятками расширений вас напугала? ) А как вы хотели? По-другому ведь красиво не бывает - иногда нужно и руками поработать.) Главное не забывать про мудрый совет Николая Степановича "Глаза больших дел боятся, но руки-то делают" Mr. Green Выпил кружку кофе и вперёд - что там сотни расширений Mr. Green

Но попробуем пойти другим путём. В IrfanView есть библиотека Icons.dll в папке плагинов, я попробовал сделать на неё "map-файл" для дальнейшего удобства:
 Hidden text

Тут пока без "фокусов": просто руками сопоставил выгруженные .ico, что заняло буквально несколько минут. Но теперь подключаем Autorun:
Code:
# Alt + "["
SetHotkeyAction /K:A /V:219 IconMapTest 0

Func IconMapTest(lParam)
   Local map = %COMMANDER_PATH% & "\Icons\IrfanView.map", _
         lib = '%COMMANDER_PATH%\Icons\IrfanView.dll', _
         cmd = '""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""', _
         idx = 10
   AssocIconsMap(map, idx, lib, cmd)
EndFunc

Func AssocIconsMap(MapFile, StartIdx, IconLib, CmdOpen)
   Local out, ext, idx
   If Not FileExist(MapFile) Then   
      ShowHint("Не найден " & MapFile)
      Return
   Endif
   ProcessExecGetOutput out %COMSPEC% '/c type "%MapFile%"' 
   Local aMap = List(), j
   aMap.Text = out
   out = ""
   For j = 0 To aMap.Count - 1
       ext = StrPart(aMap[j], "=", 1)
       idx = StrPart(aMap[j], "=", 2)
       out &= auCRLF & "Filter" & StartIdx + j & "=*." & ext
       out &= auCRLF & "Filter" & StartIdx + j & ".icon=" & IconLib & ","& idx
       out &= auCRLF & "Filter" & StartIdx + j & "_open=" & CmdOpen             
   Next
   ClipPut(out)
   ShowHint("Скопировано в буфер.")
EndFunc

Запускаем скрипт, и получаем в буфере:
 Hidden text

Вот это другое дело. Индекс фильтра можно менять, как и команду открытия и путь к библиотеке.

 P.S.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group