Autorun
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3 ... 131, 132, 133, 134, 135  Next  :| |:
Total Commander -> Плагины Total Commander

#1966:  Author: jentoso PostPosted: Thu Mar 21, 2024 18:28
    —
Orion9
С учётом нового ключа тоже ошибка
Code:
---------------------------
Autorun plugin error
---------------------------
Error in file: D:\TOTALCMD\plugins\WDX\Autorun\Autorun.aucfg

[58] ProcessExecGetOutput hl %uwdx% "/I NTLinks.wdx ""%f%"" HLNK_Count"

#1967:  Author: Loopback PostPosted: Thu Mar 21, 2024 19:52
    —
jentoso
Такая ошибка выдается, когда CreateProcess не удалось создать процесс. В данном случае не вижу никаких препятствий, кроме несуществующего пути в переменной %uwdx%, нужно проверять его. Во всяком случае мне для достижения работоспособности пришлось только её исправить.

Orion9 wrote:
Вот тут uwdx выдает "Test file does not exists.", если под курсором не файл/каталог.


Я бы просто предварительно проверил наличие файла средствами Autorun:
Code:
If FileExists(%f%) Then
  ProcessExecGetOutput hl %uwdx% "/I NTLinks.wdx ""%f%"" HLNK_Count"
Else
 ...
Endif

#1968:  Author: jentoso PostPosted: Thu Mar 21, 2024 20:23
    —
Orion9
Loopback
С путями к uwdx у меня был "косяк", поправил и заработало.

#1969:  Author: Orion9 PostPosted: Thu Mar 21, 2024 20:38
    —
Loopback
Пример из справки:
Code:
MyFunc(123, 456, 789)
 
Func MyFunc(...)
    For i = 1 To Args()
        MsgBox(Args(i), i)
    Next
EndFunc

Приводит к ошибке
Code:
---------------------------
Ошибка плагина Autorun
---------------------------
Ошибка в файле: C:\Portable\T 11 03\Ini\Autorun\Autorun.cfg

[115] MyFunc(123, 456, 789)

Слишком много актуальных параметров в вызове "MyFunc".
---------------------------
ОК   
---------------------------

Хотя потом отрабатывает как и должен, т.е. показывает MsgBox три раза.

jentoso
Я просто пример делал на скорую руку. Конечно, там должны быть проверки, как и писал выше автор плагина, плюс:
Code:
Local uwdx = %COMMANDER_PATH% & "\Plugins\uwdx\uwdx.exe"
   If Not FileExist(uwdx) Then   
      MsgBox("Не найден " & uwdx)
      Return
   Endif

#1970:  Author: jentoso PostPosted: Thu Mar 21, 2024 20:56
    —
Orion9
А что означают HLNK_Count и HLNK_Paths?

#1971:  Author: Orion9 PostPosted: Fri Mar 22, 2024 00:20
    —
Доработал немного пример. Все это сыро еще, конечно, но уже поинтереснее. Теперь инфу об NTFS-потоках еще тянет.

Code:
Func ShowFileInfo
Local f, p, hl, links, linkout
Local uwdx = %COMMANDER_PATH% & "\Plugins\uwdx\uwdx.exe"
   If Not FileExist(uwdx) Then   
      MsgBox("Не найден " & uwdx)
      Return
   Endif
   f = StrPart(ItemAtCursor('text'), auTAB, 1)
   p = SendMessage(RequestInfo(ItemAtCursor('panel') + 8), 13, 500, "" , 2)
   p = StrLeft(p, StrPos(p, "\", -1))
   f = p & f   
   ProcessExecGetOutput hl %uwdx% "/I NTLinks.wdx ""%f%"" HLNK_Count"
   if (hl+0) = 0 then
       MsgBox(hl)
      Return
   endif   
   ProcessExecGetOutput links %uwdx% "/I /C:1251 NTLinks.wdx ""%f%"" HLNK_Paths 0"
   linkout = "Hard Links: "  & hl & auCRLF
   linkout = linkout & auCRLF
   for i=1 to hl
      linkout = linkout & StrTrim(StrPart(links, ',', i)) & auCRLF
      i = i + 1
   next
   ProcessExecGetOutput stream %uwdx% "/I NTFSFileStreams.wdx ""%f%"" ""Streams Count"""
   if stream > 0 then
      linkout = linkout & auCRLF & auCRLF & "NTFS Streams: "  & stream & auCRLF
      linkout = linkout & auCRLF
      ProcessExecGetOutput streams %uwdx% "/I /C:1251 NTFSFileStreams.wdx ""%f%"" ""All Streams One Line"""
      for i=1 to stream
         linkout = linkout & StrTrim(StrPart(streams, ';', i)) & auCRLF
         i = i + 1
      next
      ProcessExecGetOutput size %uwdx% "/I /C:1251 NTFSFileStreams.wdx ""%f%"" ""All Streams Size"""
      linkout = linkout & auCRLF & "Streams Size " & size
   endif
   MsgBox(linkout)
EndFunc

jentoso
В плагине NTLinks есть некое описание, но его действительно маловато. Лучше все же почитать теорию где-нибудь, например, в справке к утилите от CaptainFlint
https://flint-inc.ru/rus/info/ntfslinks.html
Именно этой утилитой я и пользуюсь, в основном, для создания NTFS ссылок.

#1972:  Author: sa PostPosted: Fri Mar 22, 2024 10:27
    —
Orion9
Quote:
Теперь скрипт просто добавляет полезную информацию к заголовку ТС, не трогая оригинального текста.

Попробовал. В целом работает. Заметил, что при перезапуске TC (cm_exit 9), в заголовке почему-то исчезает номер копии.

#1973:  Author: Loopback PostPosted: Fri Mar 22, 2024 13:12
    —
Orion9 wrote:
Приводит к ошибке

К сожалению, пока просто не пользоваться открытым списком. Проблема исправлена, но версия еще не готова к выкладыванию.

#1974:  Author: Orion9 PostPosted: Fri Mar 22, 2024 14:20
    —
sa
Да, неприятная проблема.

Если в aucfg-файле сразу вслед за строчкой объявления переменных добавить MsgBox:

Code:
Global JustTitle = WinGetText(), VarTitle = JustTitle
MsgBox(JustTitle)

То при перезагрузке командой cm_Exit 9 (в новых окнах ТС) можно увидеть, что текст сообщения в MsgBox не соответствует тексту заголовка. Похоже, функция WinGetText() где-то не так срабатывает, т.е. проблема не в скрипте (его можно совсем отключить, закомментировав вызов TitleLaunch в конфиге Autorun) а на более низком уровне.

Кстати, заметил, что при таком вызове MsgBox, она действительно не всегда показывается в 64-х битном Тотале.

#1975:  Author: sa PostPosted: Fri Mar 22, 2024 14:47
    —
Orion9
Добавил Sleep(250) в начало autorun.cfg – помогло.

#1976:  Author: Orion9 PostPosted: Fri Mar 22, 2024 18:40
    —
sa
Отличное решение!
Еще не успел опробовать, но ради корректной работы можно даже и пол(!)секундой пожертвовать Smile

#1977:  Author: Orion9 PostPosted: Sun Mar 24, 2024 00:38
    —
sa
Решение действительно рабочее, спасибо за вашу смекалку - избавили от лишней головной боли Very Happy Видимо, Autorun получает текст заголовка раньше, чем Тотал его окончательно выстраивает, поэтому небольшое ожидание здесь как никогда уместно.

#1978:  Author: yozhik PostPosted: Wed Apr 03, 2024 11:59
    —
Сердечно рады свершившемуся возобновлению хотелки о всплывающих подсказках! И мы когда-то с этой же скромной просьбой здесь стучались Smile Но тогда время ещё не пришло. Так быть может сейчас оно поспело? На всякий случай: мой большой плюс к данному начинанию всегда наготове. А я всё так пока и пользуюсь своим au3-скриптом для этих целей. Таким образом, у нас назрели уже две насущные области применения tooltip'ов: 1) для функц-х клавиш подсказок куда-чего повесил; 2) описанный Orion9. Плюс ещё то, что было в мыслях у Loopback, когда tooltip'ы появились в «списке с приоритетом "подумать когда-нибудь"». В общем, если что-то получится, то будет, мне кажется, вполне востребовано.

#1979:  Author: Orion9 PostPosted: Thu Apr 04, 2024 00:50
    —
yozhik
Спасибо за отсылку к старым постам. Я давно хотел почитать страниц 10 последних, но так и не добрались руки. Отвлекся тут на новый скрипт Autorun + AutoHotKey Very Happy Если все получится как надо, скину в скором времени.

#1980:  Author: Loopback PostPosted: Sun Apr 07, 2024 23:24
    —
yozhik
Тултип или что-то похожее скорее всего будет, но вот со способами показа пока не до конца ясно. С помощью кликов или горячих клавиш вроде проблем быть не должно, но с наведением всё несколько сложнее. В функционал ControlSetMouseAction оно не укладывается. Но посмотрим.



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


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

Goto page Previous  1, 2, 3 ... 131, 132, 133, 134, 135  Next  :| |:
Page 132 of 135

Powered by phpBB © 2001, 2005 phpBB Group