我用sqldmo获取本地服务器列表,如果数据库都为sql2000没问题。现在遇到的困难是,如果本地有机器安装sql2005,怎么获取呀,我只能得到机器名,sql2005的服务器都是 机器名\sqlexpress.
不知道怎么解决,望各位大虾们帮帮小弟,谢谢。。

解决方案 »

  1.   

    sqlserver2005安装默认服务器名就是机器名,如果装了的话。sqlexpress是另一回事,只要装了vs2005,不装sqlserver2005也有sqlexpress
      

  2.   

    /// <summary>
        /// 获取网络内所有可用的服务器
        /// </summary>
        /// <returns></returns>
        public static string[] ListAvailableSQLServers()
        {
          SQLDMO.NameList servers = new SQLDMO.ApplicationClass().ListAvailableSQLServers();
          if (servers.Count <= 0) return new string[0];      ArrayList list = new ArrayList(servers.Count);
          foreach (object o in servers) list.Add(o);
          return (string[])list.ToArray(typeof(string));
        }ps:SQLDMO是windows的com。
      

  3.   

    看错题目了我有个API的类不知道行不行,给我邮箱,我给你发一个。
      

  4.   

    下一个petshop看一下,里面有这种功能的.