e4t

来源:百度文库 编辑:神马文学网 时间:2024/04/29 22:06:40
必须要知道IP地址的  
  sqlserver服务器-->开始菜单-->SQLserver-->服务器网络实用工具-->启用     WinSock代理-->代理地址:(sqlserver服务器IP)-->代理端口-->1433-->利用ADOConnection组件,通过IP连接就可以了  
   
  或者建立.udl文件,给adoconnection.ConnectionString赋值可以动态连接。     
  如      
  Provider=SQLOLEDB.1;Persist   Security   Info=False;User   ID=sa;Initial   Catalog=databasename;Data   Source=10.12.111.33连接主机不固定IP:自己输入IP
可以真正的实现远程登陆,和不同局域网内的登陆,远程主机要有指定的公网ip就的了。  
  我的远程登陆是这样,没问题的:  
   
   
  procedure   TForm_server.Button2Click(Sender:   TObject);  
  var  
  servername,databasename,ad,password:string;  
  connect:string;  
  begin  
   
          check;  
          servername:=combobox1.Text;   //对方IP
          databasename:=combobox2.Text;  //数据库名称
          ad:=edit1.Text;       //user id=SA
          password:=edit2.Text;  
   
          form1.ADOConnection1.Close;  
   
          connect:=‘Provider=SQLOLEDB.1;Password=‘+password+‘;Persist   Security   Info=false;User   ID=‘+ad+‘;Initial   Catalog=‘+databasename+‘;Data   Source=‘+servername;  
   
          form1.ADOConnection1.ConnectionString:=connect;  
   
          form1.ADOConnection1.CommandTimeout   :=10;  
   
          try  
              form1.ADOConnection1.Open;  
              form1.ADOConnection1.Connected:=true;  
              form_server.login:=true;  
              //showmessage(‘服务器连接成功!‘);  
              form_server.Close;  
          except  
              messagedlg(‘服务器连接失败,请检查网络设备是否正常工作,或输入信息是否有误!‘+#13+#13+‘系统将在2秒后自动关闭。‘,mtWarning,[mbOk],0);  
              sleep(2000);  
              //form_server.login:=true;  
              //form_server.Hide;  
              //application.Terminate;  
              //application.run;  
              form1.Close;  
          end;  
   
   
  end;
e4t