请问在三层架构中,客户端如何执行服务器端的方法?
最好能给个简单的例子,先谢了!!!

解决方案 »

  1.   

    procedure TForm5.Action2Execute(Sender: TObject);
    var
      ID,UID:OLEVariant;
    begin
      PasswordDlg.Edit1.Text:='';
      PasswordDlg.Password.Text:='';
      if PasswordDlg.ShowModal=mrOK then
      begin
        try
          DCOMConnection1.Connected:=True;
          with IEMISServer20Disp(DCOMConnection1.GetServer) do
          begin
            Login(PasswordDlg.Edit1.Text,PasswordDlg.Password.Text,ID,UID);
          end;
          UserID:=ID;
          TrueID:=UID;
        except
          DCOMConnection1.Connected:=False;
          ShowMessage(Exception(AcquireExceptionObject).Message);
        end;
      end;
    end;以上片断摘录自我的一个程序,用于执行登录操作,login方法是服务器端的Com的一个方法,我使用了静态链接,所以要包含服务器Com的一个XXX_TLB.pas的Com结构声明文件。
      

  2.   

    请问:BlueTrees:
    客户端我用的是SocketConnection,和DCOMConnection一样吗?
      

  3.   

    我的这个正是根据客户端是SocketConnection的情况设计的。不要看那个名字,我把SocketConnection的名字弄成了DCOMConnection,只是为了修改原来程序的方便。
      

  4.   

    SocketConnection和DCOMConnection有不一样的地方:比如SocketConnection
    需要socket服务器才能连接,如scktsrvr.exe