Delphi World - Показать диалог выбора компьютера
Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Показать диалог выбора компьютера

- Дорогой, ты кого больше любишь? Меня или эту дурацкую штуку, за которой ты проводить целый, св#лочь!!!
- Ну, киса, как ты можешь сравнивать неодушевленный предмет с компьютером?!


{ 
  The "Choose Computer" is a dialog provided by network services 
  (NTLANMAN.DLL) for Windows 2k/NT/XP 
  to display the servers and their computers. 
} 

type 
  TServerBrowseDialogA0 = function(hwnd: HWND; pchBuffer: Pointer; cchBufSize: DWORD): bool;  
  stdcall; 


function ShowServerDialog(AHandle: THandle): string; 
var 
  ServerBrowseDialogA0: TServerBrowseDialogA0; 
  LANMAN_DLL: DWORD; 
  buffer: array[0..1024] of char; 
  bLoadLib: Boolean; 
begin 
  LANMAN_DLL := GetModuleHandle('NTLANMAN.DLL'); 
  if LANMAN_DLL = 0 then 
  begin 
    LANMAN_DLL := LoadLibrary('NTLANMAN.DLL'); 
    bLoadLib := True; 
  end; 
  if LANMAN_DLL <> 0 then 
  begin @ServerBrowseDialogA0 := GetProcAddress(LANMAN_DLL, 'ServerBrowseDialogA0'); 
    DialogBox(HInstance, MAKEINTRESOURCE(101), AHandle, nil); 
    ServerBrowseDialogA0(AHandle, @buffer, 1024); 
    if buffer[0] = '\' then 
    begin 
      Result := buffer; 
    end; 
    if bLoadLib then 
      FreeLibrary(LANMAN_DLL); 
  end; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
  label1.Caption := ShowServerDialog(Form1.Handle); 
end;

Проект Delphi World © Выпуск 2002 - 2017
Автор проекта: Эксклюзивные курсы программирования