设为首页 加入收藏

TOP

DELPHI 小结(七)
2017-10-10 12:04:56 】 浏览:2931
Tags:DELPHI 小结
t.create;
  list.clear;
  //获取整个网络中的文件资源的句柄,lphenum为返回名柄
  res := wnetopenenum( resource_globalnet, resourcetype_disk,
                       resourceusage_container, nil,lphenum);
  if res <> no_error then exit;//raise exception(res);//执行失败
  //获取整个网络中的网络类型信息
  count := $ffffffff;//不限资源数目
  bufsize := 8192;//缓冲区大小设置为8k
  getmem(buf, bufsize);//申请内存,用于获取工作组信息
  res := wnetenumresource(lphenum, count, pointer(buf), bufsize);
     //资源列举完毕                    //执行失败
  if ( res = error_no_more_items ) or (res <> no_error ) then exit;
  p := tnetresourcearray(buf);
  for i := 0 to count - 1 do//记录各个网络类型的信息
  begin
    networktypelist.add(p);
    inc(p);
  end;
  res := wnetcloseenum(lphenum);//关闭一次列举
  if res <> no_error then exit;
  for j := 0 to networktypelist.count-1 do //列出各个网络类型中的所有工作组名称
  begin//列出一个网络类型中的所有工作组名称
    netresource := tnetresource(networktypelist.items[j]^);//网络类型信息
    //获取某个网络类型的文件资源的句柄,netresource为网络类型信息,lphenum为返回名柄
    res := wnetopenenum(resource_globalnet, resourcetype_disk,
                        resourceusage_container, @netresource,lphenum);
    if res <> no_error then break;//执行失败
    while true do//列举一个网络类型的所有工作组的信息
    begin
      count := $ffffffff;//不限资源数目
      bufsize := 8192;//缓冲区大小设置为8k
      getmem(buf, bufsize);//申请内存,用于获取工作组信息
      //获取一个网络类型的文件资源信息,
      res := wnetenumresource(lphenum, count, pointer(buf), bufsize);
          //资源列举完毕                   //执行失败
      if ( res = error_no_more_items ) or (res <> no_error)  then break;
      p := tnetresourcearray(buf);
      for i := 0 to count - 1 do//列举各个工作组的信息
      begin
        list.add( strpas( p^.lpremotename ));//取得一个工作组的名称
        inc(p);
      end;
    end;
    res := wnetcloseenum(lphenum);//关闭一次列举
    if res <> no_error then break;//执行失败
  end;
  result := true;
  freemem(buf);
  networktypelist.destroy;
end;

{=================================================================
  功  能: 列举工作组中所有的计算机
  参  数:
          list: 需要填充的list
  返回值: 成功:  true,并填充list 失败: false;
  备  注:
  版  本:
   
首页 上一页 4 5 6 7 8 9 10 下一页 尾页 7/13/13
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Delphi的Socket编程步骤 下一篇【Spine】Spine Runtime for Delp..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目