ClientDataSet1.Data :=
    (DCOMConnection1.AppServer as IAISMDevice).GetBuildRoomList(ps_BuildID);*
  ClientDataSet1.Active := true;
*这行出现[Error] Unit1.pas(42): Operator not applicable to this operand type这样的错误;
这个中间件在本机,已经能够在通过中间件访问数据库。现在就是不知道如何使用中间件的接口。书上说对于DCOM方式来说,要使用静态联编方式调用远程数据模块的接口,它的类型库必须在客户端注册,要注册类型库,可以调用DELPHI4\BIN目录中的TREGSVR.EXE。
我中间件用的是remotedatamodule实现远程数据模块的。顺便在问一个问题,如果中间件不在本机,书上说要连接数据库只有两个途径,一是安装中间件,二是注册中间件。安装中间件,我不可能为每一台开发用机安装中间件吧,这样显然不好。第二中注册中间件,那该怎么注册啊。我在用TDCOMConnection连接中间件,把IP地址那个属性设置成中间件所在机器IP地址,可是提示拒绝访问,应该是没有注册的缘故吧!

解决方案 »

  1.   

    你用TDCOMConnection,需要配置DCOM的
      

  2.   

    不至于吧,用三层开发的人都应该会我上面所说的问题啊!
    不管用TDCOMConnection还是TSharedConnection连接,如果要用到应用服务器上远程数据模块的接口,就要涉及到上面的问题。兄弟门帮忙
      

  3.   

    配置DCOM很麻烦,建议你还是用TSocketConnection吧,只是中间件的机器需要运行SCKTSRVR.EXE,在\Program Files\Borland\Delphi6\Source\Vcl路径下找到SCKTSRVR.EXE,也可以把它做到你的中间件里,delphi提供源马的
      

  4.   

    to : houlong(houlong)
    要配置DCOM的,怎么配置啊,不是设置她的参数吗?
      

  5.   

    to : houlong(houlong)
    配置DCOM很麻烦,能说说怎么配置吗?需要如此麻烦,如果用TSocketConnection连接的话,还不是需要用到注册应用服务器上远程数据模块的接口。
      

  6.   

    配置DCOM很麻烦,用TSocketConnection
      

  7.   

    好的既然大伙都这么说,就用TSocketConnection吧
    那应用服务器上远程数据模块的接口的问题还是没有解决啊
      

  8.   

    试试这样。
        (IUnknown(DCOMConnection1.AppServer) as IAISMDevice).GetBuildRoomList(ps_BuildID);
      

  9.   

    TSocketConnection不支持刚才说的这种方式。