Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.19;
Скачать: CL | DM;

Вниз

Определить путь до файла, имея его 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 вся ветка

Текущий архив: 2008.10.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
15-1220089316
Kostafey
2008-08-30 13:41
2008.10.19
С днем рождения ! 30 августа


2-1221236761
New_ser
2008-09-12 20:26
2008.10.19
Как настроить ADOConnection для работы в сети?


15-1219982177
Slider007
2008-08-29 07:56
2008.10.19
С днем рождения ! 29 августа 2008 пятница


15-1219762713
ChaosAD
2008-08-26 18:58
2008.10.19
Что почитать по Хранимым Процедурам для MSSQL


15-1219927083
md10
2008-08-28 16:38
2008.10.19
не видится ntfs диск