怎么得到当前机子的sql server 服务器名,请具体点!谢谢
还有系统用户名,系统口令

解决方案 »

  1.   

    SQLServer数据库服务器名称的获取  摘 要:SQLServer数据库服务器名称的获取
    关键字:SQL 服务器名称
    类 别:数据库
     
     
    在窗口上放置一个listbox控件,命名为:listbox1,原代码如下所示:
    procedure TForm1.FormCreate(Sender: TObject);
    var
      SQLServer:Variant;
      ServerList:Variant;
      i,nServers:integer;
    begin
     SQLServer := CreateOleObject('SQLDMO.Application');
     ServerList:= SQLServer.ListAvailableSQLServers;
     if serverlist.count<1 then
      begin //如果服务器不存在,则退出系统
         showmessage('服务器不存在,请检测服务器是否已经开机或者服务是否打开了');
         application.Terminate;
      end
     else
      begin
       for i:=1 to serverlist.count do
       listbox1.Items.Add(serverlist.item(i)) ;
       showmessage(serverlist.item(1)+'服务器已经打开,可以正常使用本系统');
       adoconnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security info=False;UserID=sa;InitialCatalog=ideal_db;DataSource='+ServerList.Item(1);
      end;
     SQLServer:=NULL;
     serverList:=NULL;
    end;
      

  2.   

    一般情况下,当前机器的sql server的服务名一般就是计算机名(也有特殊情况的,但很少),所以认为只要取得了当前计算机名就可以了取得计算机名。
        function tform1.get_name:string;
        var  ComputerName: PChar;  size: DWord;
        begin
            GetMem(ComputerName,255);
            size:=255;
            if GetComputerName(ComputerName,size)=False then
               result:=''
            else
               result:=ComputerName;
            FreeMem(ComputerName);
        end;
      

  3.   

    solonet(赤岭雄鹰)说的正确,但是在单元中要引用:ComObj
      

  4.   

    还有SQL SERVER 的系统用户名,系统口令呢?