unit Apollo_TLB;

// ************************************************************************ //
//  警告                                                                      
// ------                                                                     
// このファイルで定義されている型宣言はタイプライブラリから読み出した       //
// 値を元に作成されています。タイプライブラリエディタで作業中に [ソー       //
// スコードの更新] ボタンを押したときや，ほかのタイプライブラリが直接       //
// または間接にこのタイプライブラリを参照している場合に，このファイル       //
// はタイプライブラリの値を元に再生成されます。                             //
// この場合，このファイル自身に対する変更は失われてしまいます。             //
// ************************************************************************ //

// PASTLWTR : $Revision: 1.1.1.1 $
// このファイルは以下のタイプライブラリから 2000/12/26 2:20:53 に生成されました。

// ************************************************************************ //
// Type Lib: C:\usr\src\apollo\ole\ole.tlb (1)
// IID\LCID: {E150B1D1-4FF9-11D4-8C85-00004CA719CD}\0
// Helpfile: 
// DepndLst: 
//   (1) v2.0 stdole, (C:\WINDOWS\SYSTEM\stdole2.tlb)
//   (2) v4.0 StdVCL, (C:\WINDOWS\SYSTEM\STDVCL40.DLL)
// ************************************************************************ //
{$TYPEDADDRESS OFF} // 型付き @ 演算子の指定を外す必要があります。
interface

uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL;

// *********************************************************************//
// タイプライブラリ中の GUID の定義。以下の規則が使われます。             
//   Type Libraries     : LIBID_xxxx                                      
//   CoClasses          : CLASS_xxxx                                      
//   DISPInterfaces     : DIID_xxxx                                       
//   Non-DISP interfaces: IID_xxxx                                        
// *********************************************************************//
const
  // タイプライブラリのメジャー/マイナーバージョン番号
  ApolloMajorVersion = 1;
  ApolloMinorVersion = 0;

  LIBID_Apollo: TGUID = '{E150B1D1-4FF9-11D4-8C85-00004CA719CD}';

  IID_IPhi: TGUID = '{E150B1D2-4FF9-11D4-8C85-00004CA719CD}';
  CLASS_Phi: TGUID = '{E150B1D4-4FF9-11D4-8C85-00004CA719CD}';
type

// *********************************************************************//
// タイプライブラリの型宣言のための forward 宣言                          
// *********************************************************************//
  IPhi = interface;
  IPhiDisp = dispinterface;

// *********************************************************************//
// Declaration of CoClasses defined in Type Library                       
// (NOTE: Here we map each CoClass to its Default Interface)              
// *********************************************************************//
  Phi = IPhi;


// *********************************************************************//
// Interface: IPhi
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {E150B1D2-4FF9-11D4-8C85-00004CA719CD}
// *********************************************************************//
  IPhi = interface(IDispatch)
    ['{E150B1D2-4FF9-11D4-8C85-00004CA719CD}']
    procedure Load(const script: WideString); safecall;
    function  Alive: OleVariant; safecall;
  end;

// *********************************************************************//
// DispIntf:  IPhiDisp
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {E150B1D2-4FF9-11D4-8C85-00004CA719CD}
// *********************************************************************//
  IPhiDisp = dispinterface
    ['{E150B1D2-4FF9-11D4-8C85-00004CA719CD}']
    procedure Load(const script: WideString); dispid 1;
    function  Alive: OleVariant; dispid 2;
  end;

// *********************************************************************//
// The Class CoPhi provides a Create and CreateRemote method to          
// create instances of the default interface IPhi exposed by              
// the CoClass Phi. The functions are intended to be used by             
// clients wishing to automate the CoClass objects exposed by the         
// server of This typelibrary.                                            
// *********************************************************************//
  CoPhi = class
    class function Create: IPhi;
    class function CreateRemote(const MachineName: string): IPhi;
  end;

implementation

uses ComObj;

class function CoPhi.Create: IPhi;
begin
  Result := CreateComObject(CLASS_Phi) as IPhi;
end;

class function CoPhi.CreateRemote(const MachineName: string): IPhi;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Phi) as IPhi;
end;

end.
