一般在做CS程序,都存在一个连接的问题 ,连接参数怎样设置, 安全性最好.

解决方案 »

  1.   

    放一个adoconnection,用adoquery or 其它ado控件连接到adoconnectio上。参数怎样设置, 如用户名,口令, 服务你可以写入注册表或者.ini文件里连接的时候再通过 +号 串起来 给 adoconnection.connstrings属性。
      

  2.   

    加密写入ini文件或注册表就可以了
    真的高手想挖你,你也没则
      

  3.   

    (1)先做一个界面,输入服务器名和SA密码,存到注册表中。
        var Reg:TRegistry;
    begin
       Reg:=TRegistry.Create;
       try
          Reg.RootKey:=HKEY_LOCAL_MACHINE;
          Reg.OpenKey('Software\MYProject',True);
          Reg.WriteString('SERVER',edit1.text);         //当然要加密了
          Reg.WriteString('PASSWORD',edit2.text);
          Reg.CloseKey;
       finally
          Reg.Free;
       end;
    end;
    (2) 运行应用程序,先读取注册表的信息。作为参数保留。
       mserser:=Reg.ReadString('SERVER');
    (3) adoconnection1.connectstring:='.....data source='+mserver+'....
       ok!
      

  4.   

    把用户名和密码加密存进ini文件或者是注册表里。这样还是会被sniffer到,要破还是比较简单的。
      

  5.   

    能不能不通过ADO或ODBC 连接,自己定义呢?
      

  6.   

    FileName := ExtractFilePath(application.ExeName)+'\Sys.ini';
        GetPrivateProfileString('DBMS','username','',username,20,pchar(filename));
        GetPrivateProfileString('DBMS','servername','',servername,20,pchar(filename));
        GetPrivateProfileString('ver','ver','',version1,20,pchar(filename));
        ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False'+
                          ';User ID='+username+';Password=123456'+';Initial Catalog=manage'+
                          ';Data Source='+servername+';';
        ADOConnection1.ConnectionString:=ConnectionString;