Re[9]: либо GetFullPathName тормозит, либо я :)
> То есть в принципе с пом. GetCurrentDir можно обойтись и без
> GetFullPathName?
Ну да.
std::basic_string<TCHAR>(GetCurrentDirectory()) + TEXT(\\..\\FAR\\Far.exe)
/* на самом деле первый "\\", который перед "..", будет избыточен, если
текущим каталогом является корень тома */
и получим что-то вроде "d:\\Program
Files\\MyCoolProject\\..\\FAR\\Far.exe", а потом ищем все ".." и удаляем
предшествующие элементы маршрута. Алгоритм несложен. Но зачем он нужен, если
есть GetFullPathName()? Вот мне как-то понадобилась обратная функция (чтобы
сравнить с полным маршрутом и выбрать более короткий вариант), так пришлось
самому писать.
> Но если все
> файлы разбросаны по папкам, которые никак не связаны с текущим каталогом,
> то
> как быть?
Ну так хоть относительные маршруты к ним должны же быть? Иначе как ты и
без полных, и без коротких путей доступаться к ним собрался??
Кстати, вот это - "C:SYSTEM32\\win32k.sys" при текущем каталоге на C:
"C:\WINDOWS" и текущем томе "E:" - тоже относительный маршрут. Так что нужно
ещё и текущий том учитывать.
--
С уважением, boroda
Номер выпуска : 5094
Возраст листа : 817 (дней)
Количество подписчиков : 542
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/490671
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru