CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  网络及通讯开发

如何搜索局域网内装有SQL Server的计算机并将其计算机名和IP地址列表出来?

楼主iamnojesus(流星)2003-11-03 10:59:49 在 C++ Builder / 网络及通讯开发 提问

望高手多帮忙!多谢! 问题点数:50、回复次数:5Top

1 楼hongliqiu(在火中)回复于 2003-11-03 11:18:32 得分 18

1、参看:CSDN_文档中心_如何获取局域网中的所有   SQL   Server   服务器  
   
  2、回复人:   52vc(方旭)   的回答  
     
     
      ComboBox1->Items->Clear();  
  Variant   <span   style="background-color:   #00FF00">SQL</span>Server;  
      Variant   ServerList;  
      int   i,nServers;  
      String   sRetValue;  
      <span   style="background-color:   #00FF00">SQL</span>Server   =CreateOleObject("<span   style="background-color:   #00FF00">SQL</span>DMO.Application");  
      ServerList=<span   style="background-color:   #00FF00">SQL</span>Server.OleFunction("ListAvailable<span   style="background-color:   #00FF00">SQL</span>Servers");  
      nServers=ServerList.OlePropertyGet("Count");  
      for   (int   i=1;   i<nServers;i++   )  
    {  
      if(AnsiString(ServerList.OleFunction("Item",   i))!="(local)")  
      ComboBox1->Items->Add(ServerList.OleFunction("Item",   i)   );  
      }  
      ComboBox1->ItemIndex=0;  
      <span   style="background-color:   #00FF00">SQL</span>Server=NULL;  
      ServerList=NULL;  
     
     
      上面为寻找所有<span   style="background-color:   #00FFFF">服务器</span>  
  以下为测试边通性  
  AnsiString   cnstr="Provider=<span   style="background-color:   #00FF00">SQL</span>OLEDB.1;                 \  
  Password=你的密码;Persist   Security   Info=True;     \  
  User   ID=你的用户;Initial   Catalog=master;Data   Source='"+ComboBox1->Text.Trim()+"';\  
  Use   Procedure   for   Prepare=1;Auto   Translate=True;   \  
  Packet   Size=4096;Workstation   ID=HE;           \  
  Use   Encryption   for   Data=False;                         \  
  Tag   with   column   collation   when   possible=False     ";  
  ADOConnection1->Connected=false;  
  ADOConnection1->ConnectionString=cnstr;  
  ADOConnection1->Connected=true;  
     
           
  Top

2 楼duduwolf(嘟嘟狼)回复于 2003-11-03 11:18:51 得分 6

给你一个delphi版的!修改成bcb很简单的,几乎不用动脑子的  
  procedure   TForm1.Button1Click(Sender:   TObject);  
  var  
        SQLServer:Variant;  
        ServerList:Variant;  
        i,nServers:integer;  
        sRetValue:String;  
  begin  
      SQLServer   :=   CreateOleObject('SQLDMO.Application');  
      ServerList:=   SQLServer.ListAvailableSQLServers;  
      nServers:=ServerList.Count;  
      for   i   :=   1   to   nservers   do  
              ListBox1.Items.Add(ServerList.Item(i));  
      SQLServer:=NULL;  
      serverList:=NULL;  
  end;  
  Top

3 楼52vc(方旭)回复于 2003-11-03 11:26:59 得分 18

早有人回答了!呵呵!   ^_^Top

4 楼iamnojesus(流星)回复于 2003-11-03 15:49:17 得分 0

……,只能在注册了SQLDMO.DLL的机器上作用,否则出现“字符串类未注册”的提示。也就是说,必须将有SQL   Server至少应该有MSDE才行,非得安装这些东西吗?有没有更好的办法,比如将SQLDMO.DLL打包编译进去……,请各位朋友指点。Top

5 楼youlooklook(你看你看)回复于 2003-12-05 11:13:10 得分 8

ChinaBCB上有,搜索一下看看。:)Top

相关问题

  • 局域网内知道IP
  • 局域网IP问题
  • 请问如何让SQL Server只接受局域网ip的连接 不接受公网ip的连接
  • 跨局域网SQL Server的访问
  • SQL Server 的局域网问题
  • 在局域网中的SQL SERVER连接
  • 局域网内的SQL Server问题
  • 局域网SQL连接字符串
  • 在局域网中连接VB与SQL
  • 在局域网中连接VB与SQL

关键词

  • sqlserver
  • sql
  • null
  • server
  • serverlist
  • nservers
  • adoconnection
  • combobox
  • variant
  • sql server

得分解答快速导航

  • 帖主:iamnojesus
  • hongliqiu
  • duduwolf
  • 52vc
  • youlooklook

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo