最近看李维的Delphi_5.x_分布式多层应用系统篇,有几个问题
1.我在d6下用new-multitier-remote data module建立应用服务器的数据模块,但报错
Error creating form: Ancestor for 'TRemoteDataModule' not found.但用同样方法在d7却没问题。2.clientdataset.packetrecord属性设置没效果?不管设为多少,都把所有数据都取到客户端了3.三层的接口方法safecall是什么作用

解决方案 »

  1.   

    1,第一个问题是TRemoteDataModule没有找到,你是不是需要引用这个类阿
    ------------------------------------
    体验速度,体验CSDN论坛助手:http://community.csdn.net/Expert/TopicView.asp?id=4700683
      

  2.   

    TRemoteDataModule的父类
    ------------------------------------
    体验速度,体验CSDN论坛助手:http://community.csdn.net/Expert/TopicView.asp?id=4700683
      

  3.   

    packetrecord属性设置以后,如果是通过dbgrid显示,则dbgrid的高度也就是显示的行数不能超过packetrecord设置的数值,不然dbgrid还是会得到所有的纪录。
      

  4.   

    safecall调用方法有特殊的作用,编译器在后台会产生返回hresult类型的值
      

  5.   

    type
      TForm1 = class(TForm)
      procedure WMPowerBroadcast(var message: TMessage); message WM_POWERBROADCAST;
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}
    procedure TForm1.WMPowerBroadcast(var message: TMessage);
    //截获系统信息
    var
      SkipNextPowerMsg:boolean;
    begin
      if SkipNextPowerMsg then
        begin
          SetForegroundWindow(Self.Handle);
          if Application.MessageBox('是否关闭系统?','警告',MB_OKCANCEL + MB_DEFBUTTON2)<>IDOK then
          begin
            message.Result := BROADCAST_QUERY_DENY;
            SkipNextPowerMsg:=not SkipNextPowerMsg;
          end
          else
            Close;
        end
      else
        SkipNextPowerMsg:=not SkipNextPowerMsg;
    end;