请教,   
  如何在Delphi获取sql   server的服务器名?   
    
  adoconnection怎么和sql实现动态连接,   
  不同的机子sql   server   的连接不同,   
  有的在连接时,选择windows   身份验证,有的选择Sql   server身份验证   
  这样连接时,是不是要判断对方机子采用哪种连接?   
  能否写出代码?谢谢!!! 

解决方案 »

  1.   

    1.用adoconnection生成2种不同验证方式的连接字符串
    2.判断本地SQL的验证方式
    说明:,以下注册表键::
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
    的值决定了SQL Server将采取何种身份验证模式.
        1、表示使用"Windows 身份验证"模式
        2、表示使用混合模式(Windows 身份验证和 SQL Server 身份验证).
    没测试,楼主自已适当调整一下!
    Uses
     Registry
    Var
    myReg:TRegistry;
    sAdoConString:String;
    Begin
     If ADOConnection.Connected Then
      ADOConnection.Connected := False;
     myReg:=TRegistry.Create;
     Try
      myReg.RootKey:=HKEY_LOCAL_MACHINE;
      If myReg.OpenKey('上述键值',True) then
       If  myReg.ReadString('LoginMode')='1'     then
       sAdoConString:='Windows验证字符串';
       If  myReg.ReadString('LoginMode')='2'     Then
       sAdoConString:='混合验证字符串';
     Finally
      myReg.CloseKey;
      myReg.Free;
     End;
     Adoconnection.ConnectionString:=sAdoConString
     Try
     Adoconnection.connected:=true
     Except
      ShowMessage('连接失败');
     End;
      

  2.   

    如何在Delphi获取sql server的服务器名
    http://topic.csdn.net/t/20030810/23/2130991.html