小弟有上2个问题:
1、如何设置服务器,使得我编译后的可执行文件可以在任何机器上不需要再进行数据库的设置就可以访问服务器上的数据库。
2、为何我在建立数据库连接的时候已经设置了用户名和密码,执行程序后还是要求输入密码?请问如何才能在执行的时候就可以显示数据表的记录?

解决方案 »

  1.   

    1
    //AServerName, ADataName, AUser, Apass分别可以为服务器的IP地址\数据库名\用户名\密码
    function getDataConnection(AServerName, ADataName, AUser, Apass:string);
    begin
      Result := 'Provider=SQLOLEDB.1;Password=' + Apass 
                + ';Persist Security Info=True;User ID=' + AUser 
                + ';Initial Catalog=' + ADataName 
                + ';Data Source=' + AServerName;
    end;
    调用如下:
    ADOConnection1.ConnectionString := getDataConnection(ServerName, DataName, User, pass);
    ADOQuery1.connection := ADOConnection1;
      

  2.   

    2
    ADOConnection1.LoginPrompt := true;
      

  3.   

    第二个问题说错了:应该是 ADOConnection1.LoginPrompt := False;
      

  4.   

    1 设置好 ADOConnection 的 ConnectionString 属性,这样在可以访问服务器的机器大部分都不需要再进行数据库的设置就可以访问服务器上的数据库,部分98,win me 可能需要配置一下
    不可能做到任何机器都能访问,比如我家那部没上网的机子
    2 ADOConnection 属性 loginprompt 设置 为 false