[wdx] WinScript Advanced Content Plugin (x86\x64) (new)
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3 ... 11, 12, 13, 14, 15  Next  :| |:
Total Commander -> Плагины Total Commander

#166:  Author: Mailk PostPosted: Wed Sep 27, 2017 00:41
    —
Flasher wrote:
yozhik
Проще взять shelldetails.

Не взять ,если в вин 64х использую ТС 32х , так как не все плагины есть в ТС Х64. А shelldetails., не работает в такой связке. Есть аналог ? Или скрипт с перекрывающий возможности shelldetails.

#167:  Author: Aquila PostPosted: Wed Sep 27, 2017 07:53
    —
Mailk wrote:
Не взять ,если в вин 64х использую ТС 32х , так как не все плагины есть в ТС Х64. А shelldetails., не работает в такой связке.

У меня работет, что я делаю не так?

#168:  Author: Pr8da21r PostPosted: Wed Sep 27, 2017 13:53
    —
Flasher, ваш скрипт просто супер, пользуюсь им каждый день, но есть одна проблема.
Он не ищет каталоги, только файлы.
Вы не подскажите, как можно это исправить?

#169:  Author: AvadaLocation: Россия, Саратов PostPosted: Wed Sep 27, 2017 14:04
    —
Pr8da21r
Оверквотинг на форуме (включая цитирование скриптов) запрещён. Цитата заменена ссылкой.

#170:  Author: Zmy PostPosted: Fri Sep 29, 2017 21:41
    —
Pr8da21r, так этот скрипт работает и с каталогами.

Вам нужно настроить правильно файл конфигурации.
Находите в файле options.ini свою секцию.
Смотрите сначала эту секцию ActiveScripts. Дальше находите в этих ячейках свой скрипт (секцию).
Отправляетесь к ней, и устанавливаете для параметра FoldersPaths значение равное единице.
У меня вот так.

Code:
ActiveScripts=FindO

[FindO]
Script=FindO.vbs
content=FindO
extensions=*
FoldersPaths=1



И в файле-списке не должно быть завершающего слэша.
.

#171:  Author: Skif_off PostPosted: Sat Sep 30, 2017 01:19
    —
Gentoo69
В продолжение этой темы, что-то не так с работой с AutoIt, вне плагина скрипт работает нормально, с плагином - AutoIt жалуется на $aMediaInfo[0] и завершается.

Сделал с $CmdLine[1], чтобы проще было повесить на кнопку (проверять с любым видео-файлом), MediaInfo.dll нужно положить рядом или поправить путь в начале
Code:
#NoTrayIcon

Local $aMediaInfoGet, $content = '', $hDLL, $iHeight, $iWidth, $sRotation
Local $aMediaInfo

$hDLL = DllOpen(@ScriptDir & '\MediaInfo.dll')
$aMediaInfo = DllCall($hDLL, 'ptr', 'MediaInfo_New')
DllCall($hDLL, 'dword', 'MediaInfo_Open', 'ptr', $aMediaInfo[0], 'wstr', $CmdLine[1])
$aMediaInfoGet = DllCall($hDLL, 'wstr', 'MediaInfo_Get', 'ptr', $aMediaInfo[0], 'int', 1, 'int', 0, 'wstr', 'Rotation', 'int', 1, 'int', 0)
$sRotation = $aMediaInfoGet[0]
If ($sRotation = '0.000') Or ($sRotation = '') Then
    $aMediaInfoGet = DllCall($hDLL, 'wstr', 'MediaInfo_Get', 'ptr', $aMediaInfo[0], 'int', 1, 'int', 0, 'wstr', 'Width', 'int', 1, 'int', 0)
    $iWidth = $aMediaInfoGet[0]
    $aMediaInfoGet = DllCall($hDLL, 'wstr', 'MediaInfo_Get', 'ptr', $aMediaInfo[0], 'int', 1, 'int', 0, 'wstr', 'Height', 'int', 1, 'int', 0)
    $iHeight = $aMediaInfoGet[0]
    If $iWidth < $iHeight Then $content = 'Achtung!'
Else
    $content = 'Achtung!'
EndIf
DllCall($hDLL, 'none', 'MediaInfo_Close', 'ptr', $aMediaInfo[0])
DllClose($hDLL)
MsgBox(4096, '', $content)

Для плагина сделал так
Code:
#NoTrayIcon
Local $aMediaInfoGet, $content = '', $hDLL, $iHeight, $iWidth, $sRotation
Local $aMediaInfo

$hDLL = DllOpen(@ScriptDir & '\MediaInfo.dll')
$aMediaInfo = DllCall($hDLL, 'ptr', 'MediaInfo_New')
DllCall($hDLL, 'dword', 'MediaInfo_Open', 'ptr', $aMediaInfo[0], 'wstr', $filename)
$aMediaInfoGet = DllCall($hDLL, 'wstr', 'MediaInfo_Get', 'ptr', $aMediaInfo[0], 'int', 1, 'int', 0, 'wstr', 'Rotation', 'int', 1, 'int', 0)
$sRotation = $aMediaInfoGet[0]
If ($sRotation = '0.000') Or ($sRotation = '') Then
    $aMediaInfoGet = DllCall($hDLL, 'wstr', 'MediaInfo_Get', 'ptr', $aMediaInfo[0], 'int', 1, 'int', 0, 'wstr', 'Width', 'int', 1, 'int', 0)
    $iWidth = $aMediaInfoGet[0]
    $aMediaInfoGet = DllCall($hDLL, 'wstr', 'MediaInfo_Get', 'ptr', $aMediaInfo[0], 'int', 1, 'int', 0, 'wstr', 'Height', 'int', 1, 'int', 0)
    $iHeight = $aMediaInfoGet[0]
    If $iWidth < $iHeight Then $content = 'Achtung!'
Else
    $content = 'Achtung!'
EndIf
DllCall($hDLL, 'none', 'MediaInfo_Close', 'ptr', $aMediaInfo[0])
DllClose($hDLL)

в options.ini
Code:
...
au3=%COMMANDER_PATH%\Plugins\wdx\WinScriptsAdv_wdx\Scripts\AutoIt3.exe
...
[RotationAutoIt]
Script=MediaInfo.au3
content=Rotation
extensions=3gp|asf|avc|avi|d2v|dat|divx|flv|m4v|mkv|mov|mp4|mpe|mpeg|mpg|ts|vob|webm|wmv
FoldersPaths=0

всё остальное по умолчанию.

P.S. Проверяю с AutoIt 3.3.8.1

#172:  Author: Pr8da21r PostPosted: Mon Oct 02, 2017 18:43
    —
Zmy, большое спасибо за помощь.
Всё заработало.

#173:  Author: Zmy PostPosted: Mon Oct 02, 2017 19:56
    —
Пожалуйста.

#174:  Author: NtX PostPosted: Sat May 11, 2019 15:07
    —
Появилась задача вывести в колонку данные из имени файла, которые расположены между квадратными скобками. Т.е. если имя файла "xxx [1234].xxx", то нужно вывести 1234. Как сделать это через AutoIt я себе представляю. Но написано, что через exe парсер будет всё рабоать значительно медленнее. Насколько медленнее в рамках моей задачи? Стоит заморачиваться и делать через COM? Задача-то вроде несложная - взять имя фала/папки, перебрать до символа [, взять всё что за ним до символа ], ну и всё по сути) Просто я с VBS и не работал никогда - может кто поможет, если смысл есть делать именно через него?

#175:  Author: FlasherLocation: Москва PostPosted: Sat May 11, 2019 15:31
    —
NtX
Scripts\NumberInSquareBrackets.vbs:
Code:
Name = Mid(FileName, InStrRev(FileName, "\") + 1)
With New Regexp
  .Pattern = "\[(\d+)\]" : If .Test(Name) Then Content = .Execute(Name)(0).Submatches(0)
End With

options.ini wrote:
[Script]
ActiveScripts=...
|NumberInSquareBrackets

[NumberInSquareBrackets]
Script=NumberInSquareBrackets.vbs
content=Число в квадратных скобках
extensions=*

#176:  Author: NtX PostPosted: Sat May 11, 2019 15:40
    —
Ух ты, работает!
Спасибо большое!)

Пара моментов.
1) В TC кириллица "Число в квадратных скобках" выводится крякозяблями там, где колонки выбираешь. Заменил просто на латинницу.
2) Если добавить настройку FoldersPaths=1, то при настройке (выборе содержимого) новой колонки TC зависает. Выкрутился так: сначала настраиваем колонку без этой опции, потом добавляем опцию, перезагружаем TC - папки тоже начинают обрабатываться.

#177:  Author: FlasherLocation: Москва PostPosted: Sat May 11, 2019 16:43
    —
1) Никто с таким тут ещё не сталкивался. Кириллица отображается как надо. Вы, случаем, у options.ini кодировку не сменили?
2) Вместо перезапуска пользуйтесь cm_UnloadPlugins.
Кстати, можно смело vbs заменить на js:
Code:
arr=filename.match(/\[(\d+)][^\\]*$/);if(arr!=null)content=arr[1]


Last edited by Flasher on Sat May 11, 2019 20:11; edited 1 time in total

#178:  Author: NtX PostPosted: Sat May 11, 2019 19:24
    —
Плагин просто сам поставился и всё. Кодировка у options.ini UTF-8, конец строки CLRF.

#179:  Author: FlasherLocation: Москва PostPosted: Sat May 11, 2019 19:26
    —
Плагин-то поставился, только правку надо делать в исходной кодировке (ANSI), а не UTF-8.

#180:  Author: NtX PostPosted: Sat May 11, 2019 19:51
    —
Ваша правда. Правка в ANSI адекватна. Вопрос закрыт.

js парсит, но только имена файлов. Имена папок обрабатываться не хотят.



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3 ... 11, 12, 13, 14, 15  Next  :| |:
Page 12 of 15

Powered by phpBB © 2001, 2005 phpBB Group