Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.04;
Скачать: CL | DM;

Вниз

Как найти локальное имя по имени сетевого диска?   Найти похожие ветки 

 
EternalWonderer   (2002-08-13 14:52) [0]

Имеем: путь типа \\NTserver\install.
Задача: проверить, подключен (maped) ли он уже на клиенте?
GetVolumeInformation не катит, поскольку возвращает только вторую часть пути - "install" ...


 
EternalWonderer   (2002-08-14 09:07) [1]

Господа мастера, неужели никто не решал подобную задачу?
В Explorer"е эти имена появляются (в виде "INSTALL на "NTServer" (G:)"), значит, их можно как-то "добыть"!

Function GetLocalNameAssignedDrive(NetName: String): String;
Var c : Array[1..26] of Char;
n : Integer;
begin
Result := "";
c:="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
For n := 1 to 26 do
If (GetDriveType(PChar(c[n]+":\")) = DRIVE_REMOTE)

And // здесь надо получить VolumeName в виде
// "\\NTServer\install" или хотя бы как-то иначе

And (NetName = VolumeName) Then Begin
Result := c[n] + ":";
Exit;
End;
End;

Заранее признателен за подсказку.


 
EternalWonderer   (2002-08-15 13:36) [2]

Для интересующихся сообщаю решение:
Function GetLocalNameAssigned(NetName: String): String;
Var c : Array[1..26] of Char;
n : Integer;
VolumeName: array [0..MAX_PATH-1] of Char;
BufferLength: Cardinal;
begin
Result := "";
c:="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
BufferLength := MAX_PATH;
For n := 1 to 26 do
If (GetDriveType(PChar(c[n]+":\")) = DRIVE_REMOTE)
And (WNetGetConnection(PChar(String(c[n]+":")),VolumeName,BufferLength) = NO_ERROR)
And (ANSIUpperCase(NetName) = ANSIUpperCase(VolumeName)) Then Begin
Result := c[n] + ":";
Exit;
End;
End;


Удачи!


 
Filat ©   (2002-09-04 12:36) [3]

Спасибо !
Будем иметь ввиду на будушщее :)))))



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

Текущий архив: 2002.11.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
1-11288
Luke
2002-10-23 14:45
2002.11.04
Почему такие маленькие exe-шники?


1-11277
Valeris
2002-10-23 10:31
2002.11.04
Имя TComponent в качестве переменной?


3-11071
malax
2002-10-15 12:59
2002.11.04
Как занести в SQL.Text символ


7-11520
NetBreaker666
2002-09-03 00:10
2002.11.04
---|Ветка была без названия|---


1-11331
ultrasuper_asd
2002-10-24 01:57
2002.11.04
где найти архиватор под дельфи 6?