我建的webservice调用没问题,但我在服务端的webmodule上加了一个TCPClient控件,(因为我想实现在调用此webservice时,通过服务器向第三台机器发socket消息,第一台客户端和第三台之间有防火墙,不能直接通信)。经过反复试验后发现:只要在service中对tcpClient控件有操作(如给它的一个属性赋值),则客户端调用时必然会报错,只要去掉对该控件操作的代码,则调用成功。请问如何解决此问题?我暂还不想用普通的socket编程,因为不如用控件方便。

解决方案 »

  1.   

    webservice的接口里面定义一个tcpClient对象就是
      Tgg = class(TSoapDataModule, Igg, IAppServer,IAppServersoap)
        ADOConnection1: TADOConnection;
        ADOQuery1: TADOQuery;
        DataSetProvider1: TDataSetProvider;
        ADOQuery2: TADOQuery;
        TcpClient1: TTcpClient;//这里定义,然后操作
      private
      
      public
      
      end;
      

  2.   

    好像你用Socket应该也会出错的.
      

  3.   

    theone_jxm的意思好象是增加一个soapDataModule,在上面使用tcpclient控件。我试了该方法,结果一样会报错。请高手指点。