Форум: "WinAPI";
Текущий архив: 2008.10.19;
Скачать: [xml.tar.bz2];
ВнизОпределить путь до файла, имея его Handle Найти похожие ветки
← →
DevilDevil (2007-12-18 23:58) [0]возможен ли сабж?
← →
homm © (2007-12-19 00:05) [1]Дело в том, что у открытого дескриптора может уже не существовать файла в фаловой системе.
← →
homm © (2007-12-19 00:06) [2]Хотя не утверждаю все же, что узнать нельзя :)
← →
guav © (2007-12-19 00:13) [3]> [1] homm © (19.12.07 00:05)
> Дело в том, что у открытого дескриптора может уже не существовать
> файла в фаловой системе.
Это как ?
(ну кроме насильного размонтирования тома, например извлечением флешки).
> [0] DevilDevil (18.12.07 23:58)
может, посмотреть GetFileInformationByHandleEx ?
← →
Ins © (2007-12-19 00:21) [4]Возможно то - возможно - http://delphimaster.net/view/4-1188989858/ , но неужели вы не знаете какой файл вы открыли? Не проще ли при открытии запоминать вместе с хэндлом имя?
← →
DevilDevil (2007-12-19 00:33) [5]спасибо.
ну иногда есть только Stream...
почему бы из него не узнать имя используемого файла (в случае FileStream) ?
а начиная скакой версии Windows, такая чтука прокатит?
← →
homm © (2007-12-19 00:45) [6]> [3] guav © (19.12.07 00:13)
> Это как ?
Открой в BSPlayer любую киношку (за другие плеры не ручаюсь) а потом удали ее во время воспроизведения. Файл исчезнет, а с видео ничего не случится, даже перематывать можно. Я так сериалы смотрю, запускаю серию, удаляю файл сразу же :)
← →
guav © (2007-12-19 01:00) [7]> [6] homm © (19.12.07 00:45)
Интересная фича. Наблюдаю на другом плеере то же.
← →
Ins © (2007-12-19 01:05) [8]
> ну иногда есть только Stream...
> почему бы из него не узнать имя используемого файла (в случае
> FileStream) ?
На мой взгляд, лучшими вариантами будут:
1. Написать потомка TFileStream, в котором в конструкторе запоминать имя файла в каком-либо поле класса, и сделать свойство, которое позволяет его извлечь.
2. При создании экземпляра заносить в TStringList с помощью AddObject имя файла и ссылку на экземпляр TFileStream. Когда имя файла понадобится - по ссылке на экземпляр найти в списке имя соотв. файла.
← →
slow!alfamoon!com (2007-12-20 21:33) [9];Определить путь до файла, имея его Handle
;DevilDevil (18.12.07 23:58)
;возможен ли сабж?
Если хэндл валиден на момент проверки (т.е. объект не закрыт и это именно тот объект, который нужен) - да.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2008.10.19;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.005 c