Вниз
Скачать: CL | DM;

ExpandEnvironmentStrings для строк, которые не экспандяться :)   Найти похожие ветки 

← →
Riply ©   (2006-12-03 14:29) [0]

Здравствуйте !
Подскажите, пожалуйста, как получить полный путь
из строки типа:  "\Windows\bla_bla\bla_bla.bla" ?


← →
Palladin ©   (2006-12-03 14:31) [1]

никак, это относительный путь, а не абсолютный, и зависит от текущего диска


← →
Riply ©   (2006-12-03 14:54) [2]

Некоторые из строк, возвращаемых NtQuerySystemInformation(SystemModuleInformation, ...
именно такого типа.
Если "никак, это относительный путь, а не абсолютный, и зависит от текущего диска",
но очень хочеться :) определить путь к файлу, то что делать ?


← →
Palladin ©   (2006-12-03 15:08) [3]

узнать какой текущий диск

GetCurrentDirectory
ExtractFileDrive

к тому что получится прибавить "\Windows\bla_bla\bla_bla.bla"
что конечно же не будет означать существование файла, просто ты получишь полное имя файла к которому будет происходить обращение при попытке обратиться к нему


← →
Riply ©   (2006-12-03 15:53) [4]

К сожалению, текущий диск тот, где установлена программа, а не системный.
Но это полбеды.
Как я понимаю, может оказаться несколько файлов
("C:\Windows\bla_bla\bla_bla.bla", "D:\Windows\bla_bla\bla_bla.bla", и т. д.).
Как из них выбрать нужный ? Ведь он может быть на любом (не обязательно системном) диске :(
Что подразумевала NtQuerySystemInformation ? :)


← →
Palladin ©   (2006-12-03 16:11) [5]

а что конкретно ты хочешь получить? NtQuerySystemInformation устарела и MS не рекомендует ее использовать...


← →
Riply ©   (2006-12-03 17:40) [6]

Для начала, хочу получить список загруженных модулей
(без "двоякопонимаемой" информации :).
Уж очень интересно :)


← →
Anatoly Podgoretsky ©   (2006-12-03 17:53) [7]

Не одна из Expand функций не гарантирует правильности полученого пути.


← →
Leonid Troyanovsky ©   (2006-12-03 18:05) [8]


> Riply ©   (03.12.06 15:53) [4]

> Как из них выбрать нужный ? Ведь он может быть на любом
> (не обязательно системном) диске :(

Если в руках есть его handle, то с помощью GetFileInformationByHandle
with dwVolumeSerialNumber, nFileIndexHigh, nFileIndexLow.

--
Regards, LVT.


← →
Riply ©   (2006-12-03 19:27) [9]

> [8] Leonid Troyanovsky ©   (03.12.06 18:05)
>Если в руках есть его handle
А сами мы не местные. Где ж мы раздобудем такое сокровище как Handle ?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
4-1155908277
apic
2006-08-18 17:37
2006.12.24
Серийные номера


2-1164702053
Mishenka
2006-11-28 11:20
2006.12.24
Повторный запуск программы


15-1165202962
Slider007
2006-12-04 06:29
2006.12.24
С днем рождения ! 2 декабря


2-1165398712
Roman_ln
2006-12-06 12:51
2006.12.24
Работа с датами и временем в делфи


2-1165393606
Roman_ln
2006-12-06 11:26
2006.12.24
как вставить картинку с диска в форму




   Наверх