Диалог подключения сетевого диска
Материал из DRKB
Диалог подключения сетевого диска[править | править код]
procedure TStartForm.NetBtnClick(Sender: TObject);
var
OldDrives: TStringList;
i: Integer;
begin
OldDrives := TStringList.Create;
// Запоминаем список дисков
OldDrives.Assign(Drivebox.Items);
// Показываем диалог подключения
if WNetConnectionDialog(Handle, RESOURCETYPE_DISK) = NO_ERROR then
begin
// Обновляем список дисков
DriveBox.TextCase := tcLowerCase;
for i := 0 to DriveBox.Items.Count - 1 do
begin
// Ищем свободный логический диск
if Olddrives.IndexOf(Drivebox.Items[i]) = -1 then
begin
// Показываем первый найденный логический диск
DriveBox.ItemIndex := i;
// Каскадируем обновление на список подключенных каталогов и др.
DriveBox.Drive := DriveBox.Text[1];
end;
end;
DriveBox.SetFocus;
end;
OldDrives.Free;
end;
Source: Взято с http://delphiworld.narod.ru
ID: 01213
{ **** UBPFD *********** by kladovka.net.ru ****
>> Открытие диалогового окна «Подключение сетевого диска»
Зависимости: Windows
Copyright: Dimka Maslov
Дата: 21 мая 2002 г.
********************************************** }
function MapNetworkDrive(Wnd: HWND = 0): DWORD;
begin
if Wnd = 0 then
Wnd := FindWindow('Shell_TrayWnd', '');
Result := WNetConnectionDialog(Wnd, RESOURCETYPE_DISK);
end;
Пример использования:
MapNetworkDrive(Application.Handle);
Source: kladovka.net.ru
ID: 01214