Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как получить унифицированное имя файла?


Страницы:   1 2

тимохов ©   (2008-04-14 19:02:00) 

Здравствуйте.

СИТУАЦИЯ
Допустим, есть 2 полных пути к файлам "E:\abc.pas" и "\\mainserver\dev\abc.pas", которые указывают на один и тот же файл (здесь диск E: подключен к ресурсу "\\mainserver\dev").

ЗАДАЧА
Я хочу, имея 2 строки, которые представляют полные имена файлов, иметь возможность определить, указывают ли они на один и тот же файл или нет, вне зависимостиот того, какой формат представления имени файла используется - UNC или с буквой диска.

ВОПРОС
Можно ли как-то выполнить мою задачу легко и красиво?

Заранее спасибо.

ЗЫ. В принципе я умею с помощью WNetOpenEnum получать ассоциативный массив: <имя диска> - <удаленный путь>. Потом по идее могу попытаться преобразовать полные имена файлов к единому формату. Вопрос в том, если ли что-то готовое в WinAPI на этот счет?


тимохов   (2008-04-15 15:16:00) [21]

Вопрос возник.

СИТУАЦИЯ
Когда я выполняю функцию ExpandUNCFileName из обычного приложения, то все работает - drive-based имя переводится в формат UNC.
Если же запускаю из под сервиса, то как было drive-based имя, так оно и осталось.

ВОПРОС
В чем может быть причина?

ТТХ
1. Win2000.
2. Сервис писан на основе дельфового TService.
3. Сервис запускается из под LocalSystem.


тимохов   (2008-04-14 20:03:00) [22]

Вот еще какая функция есть в sysutils ExpandUNCFileName.
Она, собсно, и использует указанную фуницию WNetGetUniversalName в конечном итоге.


тимохов   (2008-04-14 19:55:00) [23]


> Leonid Troyanovsky ©   (14.04.08 19:23) [1]

да, видимо, это оно.
спасибо.


Leonid Troyanovsky   (2008-04-14 19:23:00) [24]


> тимохов   (14.04.08 19:02)  

>  Вопрос в том, если ли что-то готовое в WinAPI на этот счет?

WNetGetUniversalName ?

--
Regards, LVT.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо