NTLinks + NTLinksMaker: создание и инфо о ссылках NTFS

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):Конечно подводит, за 6 лет ни разу об этом не вспоминал.
Т.е. и про статью на TCKB (100500 раз обсуждаемую) не помнишь? 6 лет для нормальной памяти — это вообще семечки. Сам же некогда писал, что такое меню без заголовка будешь использовать.
MVV писал(а):Но что ты от плагина хочешь, если проблема в тотале, и её так никто не решил?
С чего ты взял, что Тотале? В других плагинах это решено. Значит, и в твоём можно.
+ Ты так и не объяснил, почему кириллица в путях и Да/Нет у Объект доступен выводится, а у Тип объекта нет.
MVV писал(а):Могу лишь повторить свой древний совет - перевести LNG-файл в UTF-16 LE без маркера
Читай ниже, что я тебе ответил. Нельзя переводить в любую другую кодировку кроме UTF-8 без ВОМ, иначе в полях будут ������ вместо нормального текста.
Последний раз редактировалось Flasher Пн авг 27, 2018 17:03, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Kot_Matraskin
Сообщения: 17
Зарегистрирован: Сб авг 25, 2018 12:54

Сообщение Kot_Matraskin »

CaptainFlint
А не пробовал задать в этом списке просто Пользователи? Чтоб Администраторы там вообще не фигурировали
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Kot_Matraskin
Только Пользователи? А смысл? Текущий-то аккаунт в группе Администраторы. Попробовал на всякий случай добавить его ещё и в группу Пользователи, указал её же в политике — результат тот же. Наличие/отсутствие группы Администраторы в этой политике на поведение не влияет, тоже проверил.
Почему же, ё-моё, ты нигде не пишешь "ё"?
Kot_Matraskin
Сообщения: 17
Зарегистрирован: Сб авг 25, 2018 12:54

Сообщение Kot_Matraskin »

MVV
Обнаружился баг в NTLinks на символьных ссылках с целевым объектом в виде ..\бла-бла-бла
Реальный путь к объекту у вас рассчитывается не относительно физического расположения данной ссылки на диске, а относительно текущего пути, который привёл вас к этой ссылке. А он может быть каким угодно, если были переходы по ссылкам. Поэтому данная ссылка у вас приводит совсем не туда, куда нужно, показывая неправильный абсолютный путь. Причём в разные места, в зависимости от источника )
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

CaptainFlint писал(а):Не вижу, почему это значение должно что-то поменять в поведении, ибо RunAsInvoker — это и есть поведение по умолчанию. Но на всякий случай проверил (в консоли, не в autorun), и ничего не поменялось, "you do not have sufficient privilege".
Вообще, по умолчанию в системе HighestAvailable, но это я не в тему предложил, это помогает подавлять UAC при запуске программ в случае, если повышение для работы программы не требуется.
Kot_Matraskin писал(а):Обнаружился баг в NTLinks на символьных ссылках с целевым объектом в виде ..\бла-бла-бла
По-моему, кто-то что-то путает. В NTLinks относительные пути строятся явно относительно папки, содержащей объект. Прошу привести подробный алгоритм воспроизведения ошибки.
Flasher писал(а):Т.е. и про статью на TCKB (100500 раз обсуждаемую) не помнишь?
Видимо, обсуждаемую не всеми, раз не все о ней помнят. :wink:
Flasher писал(а):Читай ниже, что я тебе ответил. Нельзя переводить в любую другую кодировку кроме UTF-8 без ВОМ, иначе в полях будут ������ вместо нормального текста.
Я не предлагал перекодировать MNU, я предлагал только перекодировать LNG-файл плагина. Попробовал UTF-8 в MNU/LNG тотала, получил обратный эффект: в колонках плагина всё правильно, а в колонке с tc.file type вижу белиберду (как если UTF-8 файл открыть в win-1251). При этом смена кодировки LNG-файла плагина никак не портит отображение кириллицы в полях плагина.

Добавлено спустя 21 минуту:

Хм, а щас пропадать стала русификация плагина, когда включаю MNU/LNG в тотале в UTF-8... Не кракозябры, а просто английские ключи в полях и значениях... Полтергейст.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):Видимо, обсуждаемую не всеми, раз не все о ней помнят.
Главное, что тобой обсуждалось не раз. :wink:
MVV писал(а):Я не предлагал перекодировать MNU, я предлагал только перекодировать LNG-файл плагина.
Я понимаю. И как раз это приводит к тому, о чём пишу.
MVV писал(а):Попробовал UTF-8 в MNU/LNG тотала, получил обратный эффект: в колонках плагина всё правильно
И тип объекта правильно показывает?
MVV писал(а):а в колонке с tc.file type вижу белиберду
А ты по второму пункту всё в точности выполнил?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Flasher писал(а):А ты по второму пункту всё в точности выполнил?
Нет, ты ни разу об этом не сказал, а в идеале вообще следует приводить точный алгоритм воспроизведения проблемы. А какое отношение юзеркоманды имеют к проблеме кракозябр в колонках контентных плагинов?
Кстати, у тебя два первых пункта)

Пробую на 10-ке, при переключении на MNU/LNG с UTF-8 тоже в колонках видны просто английские идентификаторы...

Добавлено спустя 15 минут:

А попробовал добавить колонку с типом объекта (tc.file type), так тотал вообще добавил вместо неё колонку tc.hidden! :shock: В контентных полях полная каша!
Но когда на английском добавил колонку tc.file type и переключился на язык с UTF-8, вижу в колонке tc.file type текст Декодированный.
Kot_Matraskin
Сообщения: 17
Зарегистрирован: Сб авг 25, 2018 12:54

Сообщение Kot_Matraskin »

MVV писал(а):По-моему, кто-то что-то путает. В NTLinks относительные пути строятся явно относительно папки, содержащей объект. Прошу привести подробный алгоритм воспроизведения ошибки.

Вот пример. Имеем такую древовидную структуру файлов:

Код: Выделить всё

C:\MainDir\ 
      DirA\ 
        DirB\ 
          MainDir_link = ..\.. 
      DirB_link = DirA\DirB 
Заходим в папку C:\MainDir\DirB_link, наводим на ссылку MainDir_link и смотрим, какие свойства для неё выдаёт ваша утилита:
Целевой объект символьный: ..\..
Целевой объект естественный: С:
Реальный объект символьный: C:\
Реальный объект естественный: C:\
Объект доступен: Нет

Совсем не то.
А при переходе по данной ссылке попадаем куда положено - в папку MainDir.
Последний раз редактировалось Kot_Matraskin Вт авг 28, 2018 10:37, всего редактировалось 2 раза.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):А какое отношение юзеркоманды имеют к проблеме кракозябр в колонках контентных плагинов?
Кстати, у тебя два первых пункта)
Я также могу спросить — а какое отношение проблемы tc-плагина имеют к проблеме твоего? Там даны точные рекомендации для полной локализации. И первый пункт к делу отношения не имеет, т.к. юникод в гл. меню — это отдельная история, хоть и корневая.
MVV писал(а):при переключении на MNU/LNG с UTF-8 тоже в колонках видны просто английские идентификаторы...
Значит, ты что-то упустил.
MVV писал(а):В контентных полях полная каша!
Ну, не полная, а частичная. Ты же на оффорум с этим обращался. Нет?
Впрочем, предлагаю вернутся к ntlinks и проблемной колонке Тип объекта.
Flasher писал(а):Ты так и не объяснил, почему кириллица в путях и Да/Нет у Объект доступен выводится, а у Тип объекта нет.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Kot_Matraskin
Сообщения: 17
Зарегистрирован: Сб авг 25, 2018 12:54

Сообщение Kot_Matraskin »

Вопрос к знатокам. Можно ли как-то в TC настроить, чтобы на панели отображался не только символьный путь к текущей папке, но и реальный путь её расположения на диске?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Kot_Matraskin
У плагина оба свойства имеются. Не судьба проверить?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Kot_Matraskin
Сообщения: 17
Зарегистрирован: Сб авг 25, 2018 12:54

Сообщение Kot_Matraskin »

Flasher
И как их вывести на панель? Повторюсь, речь идёт о пути к текущей открытой папке
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Kot_Matraskin
Т.е. как? Вы не знаете, как работать с контентными плагинами? Это справочный материал: 1, 2.

Вывод на панель в отношении текущей папки может подразумевать только быстрый просмотр при постановке курсора на [..] (имеющиеся wlx-плагины в плане информативности ограничены и для поставленной задачи не подходят), иначе к открытой папке доп. информацию из ТС стандартным способом не получить. Папка должна быть элементом списка в родителе.
[cut="Если нестандартным, то, например, так:"]

Код: Выделить всё

'================================== VBS ==================================
' Показать реальный и символьный пути каталога активной панели
' Условие: пустое поле "Путь запуска:" кнопки или пользовательской команды
'=========================================================================
Set WSS = CreateObject("WScript.Shell")
If LCase(Right(WSH.FullName, 11)) = "wscript.exe" Then WSS.Run "cscript.exe //NoLogo """ & WSH.ScriptFullName & """", 0 : WSH.Quit
With CreateObject("Scripting.FileSystemObject")
  CP = .GetAbsolutePathName("") : N = .GetFileName(CP) : PP = .BuildPath(.GetParentFolderName(CP), "\")
End With
SP = CreateObject("OlePrn.OleCvt.1").ToUnicode(WSS.Exec("cmd /c echo off&for /f ""tokens=2 delims=[]"" " &_
"%# in ('dir """ & PP & """ /al^|findstr /irc:""<[C-Y]*> *" & N & " \[""') do echo %#").StdOut.ReadLine, 866)
If Len(SP) Then SP = "Реальный:" & vbTab & SP & vbCr & "Символьный:" & vbTab
MsgBox SP & CP, 4160, " Путь каталога активной панели      "
[/cut]
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Flasher писал(а):Ты так и не объяснил, почему кириллица в путях и Да/Нет у Объект доступен выводится, а у Тип объекта нет.
А тут всё очень просто - я понятия не имею. :D
Kot_Matraskin писал(а): Заходим в папку C:\MainDir\DirB_link, наводим на ссылку MainDir_link и смотрим, какие свойства для неё выдаёт ваша утилита:
Во, вижу, и правда проблема. Весьма странно, что даже относительный путь не отображается...
Кстати, у Проводника тоже, хотя у него это далеко не единственная проблема с отображением относительных целевых путей в окне свойств символьных ссылок. :lol:

Добавлено:

Надо сказать, логика в данной ситуации непростая получается, её даже осознать непросто. Есть относительная ссылка, но резолвится она совершенно неожиданным образом, т.к. в цепочке каталогов от корня встречается ссылка, из-за которой очередной ".." уже берётся из совершенно другого каталога. Без полного разрешения пути тут никак не обойтись. Оставлю для относительных ссылок лишь отображение относительного пути, полный путь будет разрешаться полем Реальный путь (которое в этой ситуации сбоит, т.к. ему даётся неверный целевой путь ссылки).
Последний раз редактировалось MVV Вт авг 28, 2018 18:26, всего редактировалось 3 раза.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):А тут всё очень просто - я понятия не имею.
Ну, ты условия полностью воспроизвёл для такого поведения? Неужели отладку в плагине произвести не можешь? Раз проблема есть, то способы вывода этих данных разнятся. Да и в любом случае ты можешь конвертировать вывод этого поля в понятную ТС кодировку.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить