Страница 25 из 44
Добавлено: Ср авг 29, 2018 17:32
Kot_Matraskin
MVV писал(а):...и опять же, нужен анализ списка.
MVV писал(а):...однако для этого придётся предварительно проанализировать список, и мне кажется, ценность блокировки пары полей не стоит таких усилий.
Удивительно такое слышать от программиста. "Проанализировать список" (из нескольких пунктов) - усилия просто неимоверные...
MVV писал(а):Не сказал бы, что параметров слишком много, чтобы было трудно найти нужный
Ну у каждого может быть своё видение. Я вот, как пользователь такой проги, ощущаю путаницу и неудобство. Когда перед глазами мельтешат лишние активные контролы (пусть даже их немного), то всегда взгляд цепляется за них, и в голове возникают мысли, а не забыл ли я что-то поменять в них.
MVV писал(а):Как было сказано выше, поле ввода базового пути не имеет отношения к относительным ссылкам (и было бы странно, если бы имела, т.к. возможен лишь один канонический относительный путь между расположением ссылки и расположением целевого объекта).
Не очень понял вас. В этом поле сказано именно про относительные пути. Как оно может не иметь отношения?
Если задан уровень дублирования =1, то создаются относительные ссылки первого уровня (относительно указанного пути). Если=2, то ссылки второго уровня и т.д. Почему при уровне=0 не создаётся ссылка
нулевого уровня относительно указанного пути?
Добавлено: Ср авг 29, 2018 17:39
Flasher
Kot_Matraskin писал(а): "Проанализировать список" (из нескольких пунктов) - усилия просто неимоверные...
Ключевая тут не сложность, а:
Хотя тут по сути достаточно проверять на наличие \ в конце первой и предпоследней строки ( .seekg(3, ios_base::end); ) списка. Может, это ощутимо и не замедлит вывод окна.
Kot_Matraskin писал(а):Не очень понял вас. В этом поле сказано именно про относительные пути. Как оно может не иметь отношения?
И меня вы не поняли, зато поспешили обозвать кэпом. Ещё раз:
Flasher писал(а):Относительные пути с ключом /r касаются создания структуры папок для режима без подкаталогов, о чём не раз писалось в топике. К нововведению относительных путей у символьных ссылок они никакого отношения не имеют.
В предыдущих версиях эта опция была и добавлялась давно по моей просьбе, когда мыслей об относительных ссылках ещё в помине не было.
Добавлено: Ср авг 29, 2018 17:45
MVV
Flasher писал(а):Поэтому я и предлагал заменить пункт.
Заменять не хочется. Подумаю, что можно сделать.
Kot_Matraskin писал(а):Удивительно такое слышать от программиста. "Проанализировать список" (из нескольких пунктов) - усилия просто неимоверные...
Я могу выделить тысячу файлов и нажать кнопку, и анализировать понадобится их все. И помимо усилий программы есть ещё мои усилия на добавление этого функционала, который повысит удобство пользования на полпроцента.
Не очень понял вас. В этом поле сказано именно про относительные пути. Как оно может не иметь отношения?
То есть, не смущает, что это поле есть не один год, а относительные ссылки появились лишь вчера? Это поле про взаимные относительные пути нескольких выделенных объектов, для которых создаются ссылки, оно позволяет сохранять иерархию каталогов, в которых они находятся, и в справке об этом написано.
Если задан уровень дублирования =1, то создаются относительные ссылки первого (относительно указанного пути). Если=2, то ссылки второго уровня и т.д. Почему при уровне=0 не создаётся ссылка нулевого уровня относительно указанного пути?
Что есть ссылка нулевого уровня? И что есть ссылка первого уровня? Это о чем вообще? Опция имеет конкретный смысл, который, опять же, описан в справке, и к относительным путям она тоже отношения не имеет.
Добавлено: Ср авг 29, 2018 17:57
Flasher
MVV писал(а):Заменять не хочется. Подумаю, что можно сделать.
А тут вроде как третьего не дано. Либо добавлять либо заменять.
MVV писал(а):и анализировать понадобится их все
Зачем? >>>
Flasher писал(а):достаточно проверять на наличие \ в конце первой и предпоследней строки ( .seekg(3, ios_base::end); ) списка.
Добавлено: Ср авг 29, 2018 18:57
MVV
Flasher писал(а):Зачем? >>>
Flasher писал(а):достаточно проверять на наличие \ в конце первой и предпоследней строки ( .seekg(3, ios_base::end); ) списка.
Поясни популярно, как анализ на наличие слэшей в первой и предпоследней строках поможет понять, все ли пути растут из правильного места. Чтобы проверить, что все ссылки можно сделать относительными, надо проверить буквы диска всех элементов списка, и то наперёд неизвестно, какую папку назначения пользователь выберет в окне. Я бы при невозможности сделать все пути относительными добавил запрос разрешения сделать их абсолютными и опцию в конфиге для подавления этого диалога, по аналогии с запросом повышения.
И что есть оффсет 3 с конца?

Добавлено: Ср авг 29, 2018 19:03
Flasher
Я имел в виду в отношении затенения одного из комбобоксов при выборе только папок или файлов.
А смещение в конец файла (встать перед последним символом, кареткой и переводом строки) дал для примера, чтобы не читать весь список.
Добавлено: Ср авг 29, 2018 20:12
Kot_Matraskin
MVV писал(а):Я могу выделить тысячу файлов и нажать кнопку, и анализировать понадобится их все
А, ну значит выражаться надо яснее. Вы ж не уточняли, что за список имеете ввиду. В контексте разговора речь шла про элементы в комбо-боксе, я про их список и подумал.
Это поле про взаимные относительные пути нескольких выделенных объектов, для которых создаются ссылки, оно позволяет сохранять иерархию каталогов, в которых они находятся, и в справке об этом написано.
Справка - это файл readme? Я не увидел, где там сказано про "выделенных объектов"? А коль этого не сказано, то естественно я воспринимаю это как все те объекты, для которых создаются ссылки (а значит это всё увязано с параметром Уровень).
Так что не стоит обвинять меня в том, что я чего-то не понимаю, если вы недостаточно внятно объяснили суть работы вашей программы.
А перелопачивать тонны здешних постов за много лет, чтобы докопаться до "истины" - нет уж, увольте.
Добавлено: Чт авг 30, 2018 07:39
MVV
Kot_Matraskin писал(а):Справка - это файл readme? Я не увидел, где там сказано про "выделенных объектов"? А коль этого не сказано, то естественно я воспринимаю это как все те объекты, для которых создаются ссылки (а значит это всё увязано с параметром Уровень).
По-моему, внимательный читатель понял бы. В справке описан синтаксис, также есть примеры использования программы со списком объектов, для которых надо создать ссылки, плюс специально приведён пример синтаксиса для интеграции с тоталом, где используется параметр
%WL, который передаёт программе список выделенных объектов:
Readme писал(а):После списка параметров указывается путь к исходному файлу или каталогу (или же путь к файлу-списку в кодировке UTF-16 с префиксом @) и путь к каталогу назначения.
...
Создать символические ссылки для объектов из файла-списка D:\list.txt в папке C:\TEST (в тихом режиме, нужны права администратора):
NTLinksMaker.exe /q /s "@D:\list.txt" "C:\TEST"
...
В поле параметров рекомендуется указывать следующее: /q- /b /r="%P" "@%WL" "%T".
Но, пожалуй, я добавлю в Readme пару строк для тех, кто совсем не в теме.
Добавлено: Пт авг 31, 2018 08:44
MVV
Исправил в NTLinks отображение цели в случае относительной ссылки (теперь показывается относительная ссылка без вычисления) и вычисление реального пути (теперь совпадает с тем, куда ведёт система, если один из родителей папки является ссылкой).
NTLinks 1.6.0.252
Добавлено: Сб сен 01, 2018 12:36
Flasher
MVV писал(а):отображение цели в случае относительной ссылки
А зачем там \\?\ спереди при разных дисках?
Что по мэйкеру?
Добавлено: Сб сен 01, 2018 21:30
MVV
Спасибо, вижу, с удалением префиксов в симлинках проблема.
С мейкером пока ничего нового.
Добавлено: Сб сен 01, 2018 22:03
Flasher
MVV писал(а):С мейкером пока ничего нового.
MVV писал(а):Подумаю, что можно сделать.
Совсем ничего не надумал?

Добавлено: Сб сен 01, 2018 23:39
MVV
Некогда было думать:)
Исправил префиксы симлинков в NTLinks, заодно нашёл старую ошибку, из-за которой при настройке двух колонок с разными целевыми путями (символьным и естественным) во второй UNC-префикс криво удалялся.
NTLinks 1.6.0.254
Добавлено: Пт сен 07, 2018 16:36
CaptainFlint
Нарвался тут на странность. Взял NTLinks Maker 1.2.0.340, в свойствах 64-битного исполняемого файла указал обязательный запуск от админа. Создал пользовательскую команду с параметрами:
Повесил на Alt+Shift+F6. Запустил для единичного файла, вывелся диалог, нажал ОК. Диалог закрылся, ссылка создалась, но окно Тотала осталось заблокированным, весь ввод игнорируется, в Alt+Tab окно отсутствует. Пришлось отдельную копию запускать, и там через плагин procfs принудительно флажок Enabled обратно выправлять.
Если снять опцию принудительного админского запуска, а пользоваться встроенным механизмом повышения прав, то проблема не проявляется.
Тотал 9.21a x64, Windows 7 x64 Enterprise.
Добавлено: Пт сен 07, 2018 16:47
Flasher
CaptainFlint писал(а):Взял NTLinks Maker 1.2.0.340
Вроде бы у нас сообщество не приучено проводить тесты на прежних версиях.

Хотя в истории версий данный фикс в отношении /b и не значится.