Гость
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как получить реальный путь из subst пути? / 11 сообщений из 11, страница 1 из 1
04.10.2021, 09:19
    #40101686
hlopotun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
Всем доброго дня,

как в программе запущенной по пути из subst получить реальный путь?

Спасибо.
...
Рейтинг: 0 / 0
04.10.2021, 10:01
    #40101699
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
hlopotun,

а что такое subst-путь?
...
Рейтинг: 0 / 0
04.10.2021, 10:03
    #40101700
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
Кроик Семён
а что такое subst-путь?

Команда такая в досе была. Типа симлинк
...
Рейтинг: 0 / 0
04.10.2021, 10:03
    #40101701
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
P.S.
а ещё есть
Код: pascal
1.
   s := ExtractFilePath(Application.ExeName);
...
Рейтинг: 0 / 0
04.10.2021, 10:04
    #40101703
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
hlopotun,

чем GetCurrentDir не устраивает
...
Рейтинг: 0 / 0
04.10.2021, 10:08
    #40101705
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
...
Рейтинг: 0 / 0
04.10.2021, 10:09
    #40101706
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
wadman
Кроик Семён
а что такое subst-путь?

Команда такая в досе была. Типа симлинк


я понял

вот нагуглил две ссылки
(Delphi) http://www.delphigroups.info/2/fb/410601.html
(C#) https://stackoverflow.com/questions/2067075/how-do-i-determine-a-mapped-drives-actual-path
...
Рейтинг: 0 / 0
04.10.2021, 10:22
    #40101711
hlopotun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
да, эти ссылки я тоже видел,
в принципе вот так в первом приближении выглядит:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
function DecodeSubstPath(APath: string): string;
var lSubstDisk, lRealDisk: string;
begin
  var MaxLength := MAX_PATH + 1;
  lSubstDisk := ExtractFileDrive(APath);
  SetLength(lRealDisk, MaxLength);
  QueryDosDevice(PChar(lSubstDisk), PChar(lRealDisk), MaxLength);
  result := Trim(StringReplace(APath,lSubstDisk,lRealDisk,[rfIgnoreCase]));
  result := StringReplace(result,'\??\','',[]);
end;



но есть ощущение некоторой кривоватости ....
да, и заполнитель строки #0 в итоге надо ещё убрать.
...
Рейтинг: 0 / 0
04.10.2021, 10:25
    #40101713
hlopotun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
Gerasimenko
hlopotun,

чем GetCurrentDir не устраивает


тем что он возвращавет subst путь а не реальный.
...
Рейтинг: 0 / 0
04.10.2021, 11:04
    #40101726
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
Если юзер сделал subst диск, скорее всего, он так хочет и это не забота программы ковырять, где же она лежит на самом деле. Имхо
...
Рейтинг: 0 / 0
04.10.2021, 11:13
    #40101732
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить реальный путь из subst пути?
hlopotun
но есть ощущение некоторой кривоватости ....
Так и есть.
hlopotun
да, и заполнитель строки #0 в итоге надо ещё убрать.
Внезапно: QueryDosDevice - это функция , которая возвращает значение. А MAX_PATH здесь вообще не в тему
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как получить реальный путь из subst пути? / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]