我采用两层时习惯的在TADOConnection的BeforeConnect事件和RemoteDataModule的 OnCreate事件中均不行,似乎根本就不会触发这两个事件,该如何处理呢?

解决方案 »

  1.   

    设计时TADOConnection.connected==false;
    BeforeConnect事件可以发生
      

  2.   

    同样在你的客户程序启动的时候,remotedatamodule的oncreate会触发
      

  3.   

    缺省应该设置TADOConnection.connected := false
     在remotedatamodule的oncreate 中设置TADOConnection 属性后
     设置TADOConnection.connected := true;
      

  4.   

    你的客户短连接的时候,RemoteDatamodule的Oncreate会触发
      

  5.   

    试试将你的TADOConnection控件放到FORM上!
    好象是服务器端执行顺序为:form.create、RemoteDatamodule.create、ADOConnection.create
    因为你若将它放在RemoteDatamodule上,此时TADOConnection还没出生呢
    如:initialization
        TComponentFactory.Create(ComServer, TRemoteDatamodule,
        Class_FZTC_WuLi, ciMultiInstance, tmApartment);
      

  6.   

    try
     adoconnection1.Connected:=true;
    finally
     adoconnection1.Connected:=false;
    end;
      

  7.   

    uses adocned;在一个时间里写上如下代码:
       Adoconnect1.connection:=False;
       Editconnectionstring(adoconnect1); //调出ado的设置窗口
       adoconnect1.connection:=True;
      

  8.   

    事件是一定会触发的,只是你没有发现而已
    我一般是事oncreate事件中只是得到连接符,当用用户上线时,在根据用户来做是否connection的。
      

  9.   

    xiaoyan21(明月心) ,我觉的你这样做不是很好;
    --------------------------------
    www.nxit.net/bbs 欢迎您