3.57. 1265. Точка в конце имени файла

Нашли баг? Воспользуйтесь поиском чтобы убедиться что его не нашли до вас и если он не упоминается добавьте его описание (желательно пошаговое).
Обязательно прочитайте чем для автора программы отличаются баги, недоработки и фичи.

Модератор: motyara

Ответить
yosemity
Сообщения: 12
Зарегистрирован: Пт июн 27, 2008 5:08 pm

3.57. 1265. Точка в конце имени файла

Сообщение yosemity » Пт дек 15, 2017 3:24 am

Shift+F4. Пишем (assadasdasd.) что угодно с точкой в конце имени файла. Получаем фейл в виде неудаляемого/нередактируемого файла. Пробовал под виндой 7 на самом себе и на шаре с 2012R2. Оба, естессно на NTFS. На домашнем кампе и в разных конторах/доменах AD. На самбе 4 (xfs) вообще содает какую-то фигню, но хоть самба дает за собой удалить. Воспроизводимость - 100%.

Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3131
Зарегистрирован: Пт окт 12, 2007 9:00 pm
Контактная информация:

Сообщение Max Diesel » Пт дек 15, 2017 8:13 am

На самом деле это никак не является багом файлового менеджера, ведь как пользователь сказал ему делать, так он и сделал. Просто есть некоторые ограничения, которые налагает на имя файлов файловая система. К этим ограничениям относятся не только точки в конце имени, но и максимальная длина имени файла 260 символов, а также запрет на следующие имена у файлов и каталогов:

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

con, prn, aux, nul, lpt1, lpt2, lpt3, lpt4, lpt5, lpt6, lpt7, lpt8, lpt9, com1, com2, com3, com4, com5, com6, com7, com8, com9
Однако если пользователь скажет создать файл/каталог с одним из этих имен, Unreal Commander создаст его. И удалить он их тоже может, но удалять нужно не в в режиме "удаление в корзину", а в режиме "удаление с диска" (Shift+F8 или Shift+Del). Кстати именно "удаление с диска" желательно использовать для достижения максимальной скорости удаления.

yosemity
Сообщения: 12
Зарегистрирован: Пт июн 27, 2008 5:08 pm

Re: 3.57. 1265. Точка в конце имени файла

Сообщение yosemity » Пт дек 15, 2017 12:52 pm

Да, я в курсе про такие ограничения, но ранее не замечал, что UC дает создавать файлы с точкой на конце. Я почти всегда удаляю через шифт+дел в винде, но не прокатило.

Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3131
Зарегистрирован: Пт окт 12, 2007 9:00 pm
Контактная информация:

Сообщение Max Diesel » Пт дек 15, 2017 1:23 pm

Похоже по умолчанию режим не включен. Выполните в командной строке команду "useunc=1", после этого должно удаляться корректно.

yosemity
Сообщения: 12
Зарегистрирован: Пт июн 27, 2008 5:08 pm

Re: 3.57. 1265. Точка в конце имени файла

Сообщение yosemity » Пт дек 15, 2017 6:14 pm

Спасибо, помогло.

Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy » Чт янв 25, 2018 1:30 am

Версия 2.02 спокойно убирает точку в конце имени, как и пробелы.

А вот 3.57 одновременно выдаёт сообщение об ошибке (Не удается создать файл.) и создаёт файл с точкой в конце, который не может удалить.
С пробелом ситуация аналогичная.

Кроме того, при попытке удаления файла с пробелом в конце имени не отображается сообщение об ошибке - просто файл не удаляется.

Предлагаю всё-таки исправить.

Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3131
Зарегистрирован: Пт окт 12, 2007 9:00 pm
Контактная информация:

Сообщение Max Diesel » Сб янв 27, 2018 5:07 pm

Qwertiy писал(а):
Чт янв 25, 2018 1:30 am
Версия 2.02 спокойно убирает точку в конце имени, как и пробелы.
Код в этой функции вероятно остался без изменений, но возможно связано с тем что компилятор был другой.
Qwertiy писал(а):
Чт янв 25, 2018 1:30 am
Кроме того, при попытке удаления файла с пробелом в конце имени не отображается сообщение об ошибке - просто файл не удаляется.

Предлагаю всё-таки исправить.
Проблема исправляется включением unc-режима (команда "useunc=1"). По умолчанию он не включен лишь из идеи, что возможно при нем что-то работает хуже. Впрочем у меня этот режим включен всегда и ухудшений я не замечал (вероятно позже режим будет включен по умолчанию).

Ответить