选择一个网路邻居

类别:Delphi 点击:0 评论:0 推荐:

=================   选择一个网路邻居   =====================
function SelectComputerName(handle: hwnd; var ComputerName: string): boolean;
var
  BrowseInfo: TBrowseInfo;
  ItemIDList: PItemIDList;
  cName: array[0..MAX_PATH] of Char;
  Title: string;
  WindowList: Pointer;
begin
  if Failed(SHGetSpecialFolderLocation(Handle, CSIDL_NETWORK, ItemIDList)) then
    raise Exception.CreateRes(@SComputerNameDialogNotSupported);
  FillChar(BrowseInfo, SizeOf(BrowseInfo), 0);
  BrowseInfo.hwndOwner := Handle;
  BrowseInfo.pidlRoot := ItemIDList;
  BrowseInfo.pszDisplayName := cName;
  Title := '选择计算机名(Remote Server):';
  BrowseInfo.lpszTitle := PChar(Pointer(Title));
  BrowseInfo.ulFlags := BIF_BROWSEFORCOMPUTER;
  WindowList := DisableTaskWindows(0);
  try
    Result := SHBrowseForFolder(BrowseInfo) <> nil;
  finally
    EnableTaskWindows(WindowList);
  end;
  ComputerName := cName;
end;

procedure Tfrm_Login.bt_ComputerSetClick(Sender: TObject);
var A_Computer:string;
begin
  if SelectComputerName(handle,A_Computer) then begin
    showMessage( 'the computer's name is :'+ A_Computer ) ;
end;

本文地址:http://com.8s8s.com/it/it4821.htm