⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 server_tlb.pas

📁 以多个信息系统为例
💻 PAS
字号:
unit Server_TLB;// ************************************************************************ //// WARNING                                                                    // -------                                                                    // The types declared in this file were generated from data read from a       // Type Library. If this type library is explicitly or indirectly (via        // another type library referring to this type library) re-imported, or the   // 'Refresh' command of the Type Library Editor activated while editing the   // Type Library, the contents of this file will be regenerated and all        // manual modifications will be lost.                                         // ************************************************************************ //// PASTLWTR : $Revision:   1.88  $// File generated on 2002-1-8 23:33:02 from Type Library described below.// *************************************************************************//// NOTE:                                                                      // Items guarded by $IFDEF_LIVE_SERVER_AT_DESIGN_TIME are used by properties  // which return objects that may need to be explicitly created via a function // call prior to any access via the property. These items have been disabled  // in order to prevent accidental use from within the object inspector. You   // may enable them by defining LIVE_SERVER_AT_DESIGN_TIME or by selectively   // removing them from the $IFDEF blocks. However, such items must still be    // programmatically created via a method of the appropriate CoClass before    // they can be used.                                                          // ************************************************************************ //// Type Lib: F:\文档\work\book\CHAPA\source_code\MIDAS\Server.tlb (1)// IID\LCID: {1AD933A3-0A85-44CC-AF1E-02B8262E9828}\0// Helpfile: // DepndLst: //   (1) v1.0 Midas, (E:\WINNT\System32\midas.dll)//   (2) v4.0 StdVCL, (E:\WINNT\System32\STDVCL40.DLL)//   (3) v2.0 stdole, (E:\WINNT\System32\stdole2.tlb)// ************************************************************************ //{$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers. interfaceuses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL,   MIDAS;// *********************************************************************//// GUIDS declared in the TypeLibrary. Following prefixes are used:        //   Type Libraries     : LIBID_xxxx                                      //   CoClasses          : CLASS_xxxx                                      //   DISPInterfaces     : DIID_xxxx                                       //   Non-DISP interfaces: IID_xxxx                                        // *********************************************************************//const  // TypeLibrary Major and minor versions  ServerMajorVersion = 1;  ServerMinorVersion = 0;  LIBID_Server: TGUID = '{1AD933A3-0A85-44CC-AF1E-02B8262E9828}';  IID_IRDM_server: TGUID = '{2F460E89-0E0D-42F8-8513-BB88C8DE4A24}';  CLASS_RDM_server: TGUID = '{5EECD4F3-42AF-44E8-B412-EDAA09CDD174}';type// *********************************************************************//// Forward declaration of types defined in TypeLibrary                    // *********************************************************************//  IRDM_server = interface;  IRDM_serverDisp = dispinterface;// *********************************************************************//// Declaration of CoClasses defined in Type Library                       // (NOTE: Here we map each CoClass to its Default Interface)              // *********************************************************************//  RDM_server = IRDM_server;// *********************************************************************//// Interface: IRDM_server// Flags:     (4416) Dual OleAutomation Dispatchable// GUID:      {2F460E89-0E0D-42F8-8513-BB88C8DE4A24}// *********************************************************************//  IRDM_server = interface(IAppServer)    ['{2F460E89-0E0D-42F8-8513-BB88C8DE4A24}']    procedure FilterOnCity(const CityStr: WideString; out Data: OleVariant); safecall;    procedure FilterOnProv(const ProvStr: WideString; out Data: OleVariant); safecall;    procedure FilterOnCoun(const CounStr: WideString; out Data: OleVariant); safecall;    procedure NoFilter(out Data: OleVariant); safecall;  end;// *********************************************************************//// DispIntf:  IRDM_serverDisp// Flags:     (4416) Dual OleAutomation Dispatchable// GUID:      {2F460E89-0E0D-42F8-8513-BB88C8DE4A24}// *********************************************************************//  IRDM_serverDisp = dispinterface    ['{2F460E89-0E0D-42F8-8513-BB88C8DE4A24}']    procedure FilterOnCity(const CityStr: WideString; out Data: OleVariant); dispid 1;    procedure FilterOnProv(const ProvStr: WideString; out Data: OleVariant); dispid 2;    procedure FilterOnCoun(const CounStr: WideString; out Data: OleVariant); dispid 3;    procedure NoFilter(out Data: OleVariant); dispid 4;    function  AS_ApplyUpdates(const ProviderName: WideString; Delta: OleVariant;                               MaxErrors: Integer; out ErrorCount: Integer; var OwnerData: OleVariant): OleVariant; dispid 20000000;    function  AS_GetRecords(const ProviderName: WideString; Count: Integer; out RecsOut: Integer;                             Options: Integer; const CommandText: WideString;                             var Params: OleVariant; var OwnerData: OleVariant): OleVariant; dispid 20000001;    function  AS_DataRequest(const ProviderName: WideString; Data: OleVariant): OleVariant; dispid 20000002;    function  AS_GetProviderNames: OleVariant; dispid 20000003;    function  AS_GetParams(const ProviderName: WideString; var OwnerData: OleVariant): OleVariant; dispid 20000004;    function  AS_RowRequest(const ProviderName: WideString; Row: OleVariant; RequestType: Integer;                             var OwnerData: OleVariant): OleVariant; dispid 20000005;    procedure AS_Execute(const ProviderName: WideString; const CommandText: WideString;                          var Params: OleVariant; var OwnerData: OleVariant); dispid 20000006;  end;// *********************************************************************//// The Class CoRDM_server provides a Create and CreateRemote method to          // create instances of the default interface IRDM_server exposed by              // the CoClass RDM_server. The functions are intended to be used by             // clients wishing to automate the CoClass objects exposed by the         // server of this typelibrary.                                            // *********************************************************************//  CoRDM_server = class    class function Create: IRDM_server;    class function CreateRemote(const MachineName: string): IRDM_server;  end;// *********************************************************************//// OLE Server Proxy class declaration// Server Object    : TRDM_server// Help String      : RDM_main Object// Default Interface: IRDM_server// Def. Intf. DISP? : No// Event   Interface: // TypeFlags        : (2) CanCreate// *********************************************************************//{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}  TRDM_serverProperties= class;{$ENDIF}  TRDM_server = class(TOleServer)  private    FIntf:        IRDM_server;{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}    FProps:       TRDM_serverProperties;    function      GetServerProperties: TRDM_serverProperties;{$ENDIF}    function      GetDefaultInterface: IRDM_server;  protected    procedure InitServerData; override;  public    constructor Create(AOwner: TComponent); override;    destructor  Destroy; override;    procedure Connect; override;    procedure ConnectTo(svrIntf: IRDM_server);    procedure Disconnect; override;    function  AS_ApplyUpdates(const ProviderName: WideString; Delta: OleVariant;                               MaxErrors: Integer; out ErrorCount: Integer; var OwnerData: OleVariant): OleVariant;    function  AS_GetRecords(const ProviderName: WideString; Count: Integer; out RecsOut: Integer;                             Options: Integer; const CommandText: WideString;                             var Params: OleVariant; var OwnerData: OleVariant): OleVariant;    function  AS_DataRequest(const ProviderName: WideString; Data: OleVariant): OleVariant;    function  AS_GetProviderNames: OleVariant;    function  AS_GetParams(const ProviderName: WideString; var OwnerData: OleVariant): OleVariant;    function  AS_RowRequest(const ProviderName: WideString; Row: OleVariant; RequestType: Integer;                             var OwnerData: OleVariant): OleVariant;    procedure AS_Execute(const ProviderName: WideString; const CommandText: WideString;                          var Params: OleVariant; var OwnerData: OleVariant);    procedure FilterOnCity(const CityStr: WideString; out Data: OleVariant);    procedure FilterOnProv(const ProvStr: WideString; out Data: OleVariant);    procedure FilterOnCoun(const CounStr: WideString; out Data: OleVariant);    procedure NoFilter(out Data: OleVariant);    property  DefaultInterface: IRDM_server read GetDefaultInterface;  published{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}    property Server: TRDM_serverProperties read GetServerProperties;{$ENDIF}  end;{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}// *********************************************************************//// OLE Server Properties Proxy Class// Server Object    : TRDM_server// (This object is used by the IDE's Property Inspector to allow editing//  of the properties of this server)// *********************************************************************// TRDM_serverProperties = class(TPersistent)  private    FServer:    TRDM_server;    function    GetDefaultInterface: IRDM_server;    constructor Create(AServer: TRDM_server);  protected  public    property DefaultInterface: IRDM_server read GetDefaultInterface;  published  end;{$ENDIF}procedure Register;implementationuses ComObj;class function CoRDM_server.Create: IRDM_server;begin  Result := CreateComObject(CLASS_RDM_server) as IRDM_server;end;class function CoRDM_server.CreateRemote(const MachineName: string): IRDM_server;begin  Result := CreateRemoteComObject(MachineName, CLASS_RDM_server) as IRDM_server;end;procedure TRDM_server.InitServerData;const  CServerData: TServerData = (    ClassID:   '{5EECD4F3-42AF-44E8-B412-EDAA09CDD174}';    IntfIID:   '{2F460E89-0E0D-42F8-8513-BB88C8DE4A24}';    EventIID:  '';    LicenseKey: nil;    Version: 500);begin  ServerData := @CServerData;end;procedure TRDM_server.Connect;var  punk: IUnknown;begin  if FIntf = nil then  begin    punk := GetServer;    Fintf:= punk as IRDM_server;  end;end;procedure TRDM_server.ConnectTo(svrIntf: IRDM_server);begin  Disconnect;  FIntf := svrIntf;end;procedure TRDM_server.DisConnect;begin  if Fintf <> nil then  begin    FIntf := nil;  end;end;function TRDM_server.GetDefaultInterface: IRDM_server;begin  if FIntf = nil then    Connect;  Assert(FIntf <> nil, 'DefaultInterface is NULL. Component is not connected to Server. You must call ''Connect'' or ''ConnectTo'' before this operation');  Result := FIntf;end;constructor TRDM_server.Create(AOwner: TComponent);begin  inherited Create(AOwner);{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}  FProps := TRDM_serverProperties.Create(Self);{$ENDIF}end;destructor TRDM_server.Destroy;begin{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}  FProps.Free;{$ENDIF}  inherited Destroy;end;{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}function TRDM_server.GetServerProperties: TRDM_serverProperties;begin  Result := FProps;end;{$ENDIF}function  TRDM_server.AS_ApplyUpdates(const ProviderName: WideString; Delta: OleVariant;                                       MaxErrors: Integer; out ErrorCount: Integer;                                       var OwnerData: OleVariant): OleVariant;begin  Result := DefaultInterface.AS_ApplyUpdates(ProviderName, Delta, MaxErrors, ErrorCount, OwnerData);end;function  TRDM_server.AS_GetRecords(const ProviderName: WideString; Count: Integer;                                     out RecsOut: Integer; Options: Integer;                                     const CommandText: WideString; var Params: OleVariant;                                     var OwnerData: OleVariant): OleVariant;begin  Result := DefaultInterface.AS_GetRecords(ProviderName, Count, RecsOut, Options, CommandText,                                            Params, OwnerData);end;function  TRDM_server.AS_DataRequest(const ProviderName: WideString; Data: OleVariant): OleVariant;begin  Result := DefaultInterface.AS_DataRequest(ProviderName, Data);end;function  TRDM_server.AS_GetProviderNames: OleVariant;begin  Result := DefaultInterface.AS_GetProviderNames;end;function  TRDM_server.AS_GetParams(const ProviderName: WideString; var OwnerData: OleVariant): OleVariant;begin  Result := DefaultInterface.AS_GetParams(ProviderName, OwnerData);end;function  TRDM_server.AS_RowRequest(const ProviderName: WideString; Row: OleVariant;                                     RequestType: Integer; var OwnerData: OleVariant): OleVariant;begin  Result := DefaultInterface.AS_RowRequest(ProviderName, Row, RequestType, OwnerData);end;procedure TRDM_server.AS_Execute(const ProviderName: WideString; const CommandText: WideString;                                  var Params: OleVariant; var OwnerData: OleVariant);begin  DefaultInterface.AS_Execute(ProviderName, CommandText, Params, OwnerData);end;procedure TRDM_server.FilterOnCity(const CityStr: WideString; out Data: OleVariant);begin  DefaultInterface.FilterOnCity(CityStr, Data);end;procedure TRDM_server.FilterOnProv(const ProvStr: WideString; out Data: OleVariant);begin  DefaultInterface.FilterOnProv(ProvStr, Data);end;procedure TRDM_server.FilterOnCoun(const CounStr: WideString; out Data: OleVariant);begin  DefaultInterface.FilterOnCoun(CounStr, Data);end;procedure TRDM_server.NoFilter(out Data: OleVariant);begin  DefaultInterface.NoFilter(Data);end;{$IFDEF LIVE_SERVER_AT_DESIGN_TIME}constructor TRDM_serverProperties.Create(AServer: TRDM_server);begin  inherited Create;  FServer := AServer;end;function TRDM_serverProperties.GetDefaultInterface: IRDM_server;begin  Result := FServer.DefaultInterface;end;{$ENDIF}procedure Register;begin  RegisterComponents('Servers',[TRDM_server]);end;end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -