Вниз
Скачать: 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.048 c
15-1165225520
Piter
2006-12-04 12:45
2006.12.24
А сколько стоит бензин в США?


3-1160652534
REA
2006-10-12 15:28
2006.12.24
Rollback Retaining


15-1164923196
Германн
2006-12-01 00:46
2006.12.24
Программа для тестирования CD/DVD приводов


9-1140511827
SDV
2006-02-21 11:50
2006.12.24
Рендер текстуры в текстуру


15-1164872828
zdm
2006-11-30 10:47
2006.12.24
Delphi or C




   Наверх