delphi+ado+mssqlserver程序。我在adoconnection里服务器设为固定的如sfa,这个程序在本机上运行没事。
但移到别的机以后,别的机上(机2)的sqlserver的服务器名是edward, 这样我在别的机上设置别名sfa, 可以运行,
但当以机2为服务器(即只有此机装mssqlserver数据库)连上几部电脑后,其它电脑上的程序就运行不了。何解?
有何解决方法

解决方案 »

  1.   

    用ado不需要别名,你如果要你的程序能够在其他电脑上运行,那么你就得提供配置文件,用来输入服务器名、数据库名、数据库密码等,用这些信息来动态更新你的adoconnection的connectstring;
      

  2.   

    suosuoyyy(羊羊) 你说得好对。有没有类似的代码?
      

  3.   

    程序里动态设置ado的连接参数
      

  4.   

    suosuoyyy(羊羊),“那么你就得提供配置文件,用来输入服务器名、数据库名、数据库密码等” 如果数据库密码在这里输入,那用这个程序的人不就知道进入mssqlserver的密码了?他用这个密码进入mysqlserver数据库搞破坏点算?
      

  5.   

    用database组件能直接设置密码
    我是个新手,请大家多多指教
      

  6.   

    1、设置这样几个变量(不管是读注册表给变量赋值,还是定死变量的值都行)
    服务器名:    GlServerName
    数据库名:    GlServerDBName
    用户名:      GlServerUserName
    用户密码:    GlServerUserPass2、然后使用ADOConnection连接数据库
          if Trim(GlServerUserPass) = '' then
            myTmpStr := 'Provider=SQLOLEDB.1;' +
            'Persist Security Info=False;' +
            'User ID=' + GlServerUserName  + ';' +
            'Initial Catalog='+GlServerDBName+';' +
            'Data Source=' + GlServerName  + ';' +
            'Connect Timeout=15;Use Procedure for Prepare=1;' +
            'Auto Translate=True;Packet Size=4096;'      else
            myTmpStr := 'Provider=SQLOLEDB.1;' +
            'Password=' +GlServerUserPass  + ';' +
            'Persist Security Info=False;' +
            'User ID=' + GlServerUserName  + ';' +
            'Initial Catalog='+GlServerDBName+';' +
            'Data Source=' + GlServerName  + ';' +
            'Connect Timeout=15;Use Procedure for Prepare=1;' +
            'Auto Translate=True;Packet Size=4096;'         ;    if ADOConnection.connected = true then
           ADOConnection.Close;
        ADOConnection.ConnectionString := myTmpStr;
        ADOConnection.Open;
      

  7.   

    使用*.UDL文件 可帮你解决这个问题。
     如下:
    1:  新建一个connection.udl文件
    2:  把adoconnection的连接参数指向这个connection.udl文件
    3: 双击connection.udl 选择数据库,并激活
     4:把adoconnection激活。即可
    这样生成 .exe程序时不用改代码 可实现选择不同机器上的不同的数据库。
      

  8.   

    hot3000() , 能不能给出详细代码?
      

  9.   

    如何创建CHM文件,有CHM的文件格式资料吗?先说声谢谢了!!
      

  10.   

    楼上, 有个专门制CHM文件的软件, 好多网站上有下。
      

  11.   

    使用IP地址连接好些,另外SQLServer设置有问题也会导致这样的
      

  12.   

    ly_liuyang(Liu Yang) ,可不可说细点?  多谢先.
      

  13.   

    你要先排除SQL的问题,可用ADOTest或SQL带的查询分析器测试连接,
    运行一些SQL语句试试。
      

  14.   

    LKJ99(阳江in深圳,路在何方...)  的方法你没有试验么?这种方法就可以,而且是比较常用的方法。
      

  15.   

    LKJ99(阳江in深圳,路在何方...) 的方法可行
      

  16.   

    新建一个空的文本文件如 a.txt 把扩展名改成udl 即:a.udl;
      双击a.udl文件。会弹出一个窗体。 这个窗体就是用来连接数据库用的。
    设置好a.udl文件后。接着设置adoconnection.connectionstring属性。
      单击adoconnection.connectionstring这个属性。在弹出的窗体中 选择 
      "use data link file "单选框, 接着单在右边的"browse" 按钮。
       自已指定a.udl文件。 这样,a.udl 文件里面的设置就和 adoconnection控件挂钩了。
      生成.exe 后只要重新配置a.udl就行了。  当然。a.udl最好与.exe放在一起比较好.