Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PRN и другие специальные "файлы" DOS [Delphi, KOL, Windows]


Vladimir Kladov ©   (2005-10-26 08:58:00) 

...натолкнулся вот на какую штуку. Надо было сохранить файлы, и один из них имел (точнее должен был иметь) имя PRN.$C. Предварительно шла проверка, что not FileExists по заданному пути и выдавалось сообщение. Так вот сообщение о необходимости перезаписи файла появилось, хотя никакого файла на том месте не было. Убедился, что так работает с файлом PRN.* (неважно, какое расширение). Более того, попытка создания такого файла приводит к полному зависанию Win32-приложения.

В итоге я сделал альтернативный вариант для FileExists (будет работать при включении символа условной компиляции FILE_EXISTS_EX - со следующей версии), но предотвращать создание таких файлов я не собираюсь, конечно. Это - на усмотрение программиста (у себя я просто добавил перед именем подчерк, специально для PRN). Возможно, такой же эффект будет с файлами CON.*, TT?.*, еще какими-то. Тяжелое наследие DOS довлеет даже над XP и по сей день...

Кстати, тут что-то проскакивало насчет размера какой-то структуры (в диалоге то ли открытия файла, то ли директории) - не показывалось в итоге что-то в системной части диалога - я исправил или нет? А то что-то забыл.


ECM   (2005-10-26 10:21:00) [1]

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1127915292&n=10


Наверх

Титульная страница Поиск, карта сайта Написать письмо