Показать сообщение отдельно
  #4  
Старый 23.03.2011, 16:45
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Код:
// *********************************************************************//
// Interface: IS7ProSim
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {83CC0D81-FEDA-11D1-BE76-0060B06816CF}
// *********************************************************************//
  IS7ProSim = interface(IDispatch)
    ['{83CC0D81-FEDA-11D1-BE76-0060B06816CF}']
    procedure ReadOutputImage(StartIndex: Integer; ElementsToRead: Integer; 
                              DataType: ImageDataTypeConstants; var pData: OleVariant); safecall;
    procedure WriteInputImage(StartIndex: Integer; var pData: OleVariant); safecall;
    procedure ReadOutputPoint(ByteIndex: Integer; BitIndex: Integer; 
                              DataType: PointDataTypeConstants; var pData: OleVariant); safecall;
    procedure WriteInputPoint(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); safecall;
    procedure ExecuteSingleScan; safecall;
    procedure Connect; safecall;
    procedure Disconnect; safecall;
    procedure BeginScanNotify; safecall;
    procedure EndScanNotify; safecall;
    procedure ExecuteNmsScan(MsNumber: Integer); safecall;
    procedure ExecuteNScans(NScanNumber: Integer); safecall;
    function GetScanMode: ScanModeConstants; safecall;
    procedure SetScanMode(newVal: ScanModeConstants); safecall;
    procedure Pause; safecall;
    procedure Continue; safecall;
    function GetPauseState: PauseStateConstants; safecall;
    procedure SavePLC(const FileName: WideString); safecall;
    procedure HotStartWithSavedValues(val: Integer); safecall;
    function GetState: WideString; safecall;
    procedure SetState(const newVal: WideString); safecall;
    procedure StartPLCSim(const plcFile: WideString); safecall;
    procedure SetStartUpSwitch(postion: RestartSwitchPositionConstants); safecall;
    function GetStartUpSwitch: RestartSwitchPositionConstants; safecall;
    procedure ReadDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer; 
                                 DataType: PointDataTypeConstants; var pData: OleVariant); safecall;
    procedure WriteDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer; 
                                  var pData: OleVariant); safecall;
    procedure ReadFlagValue(ByteIndex: Integer; BitIndex: Integer; 
                            DataType: PointDataTypeConstants; var pData: OleVariant); safecall;
    procedure WriteFlagValue(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); safecall;
    procedure ConnectExt(InstanceNumber: Integer); safecall;
    procedure StartPLCSimExt(const plcFile: WideString); safecall;
  end;

// *********************************************************************//
// DispIntf:  IS7ProSimDisp
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {83CC0D81-FEDA-11D1-BE76-0060B06816CF}
// *********************************************************************//
  IS7ProSimDisp = dispinterface
    ['{83CC0D81-FEDA-11D1-BE76-0060B06816CF}']
    procedure ReadOutputImage(StartIndex: Integer; ElementsToRead: Integer; 
                              DataType: ImageDataTypeConstants; var pData: OleVariant); dispid 1;
    procedure WriteInputImage(StartIndex: Integer; var pData: OleVariant); dispid 2;
    procedure ReadOutputPoint(ByteIndex: Integer; BitIndex: Integer; 
                              DataType: PointDataTypeConstants; var pData: OleVariant); dispid 3;
    procedure WriteInputPoint(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); dispid 4;
    procedure ExecuteSingleScan; dispid 5;
    procedure Connect; dispid 6;
    procedure Disconnect; dispid 7;
    procedure BeginScanNotify; dispid 8;
    procedure EndScanNotify; dispid 9;
    procedure ExecuteNmsScan(MsNumber: Integer); dispid 10;
    procedure ExecuteNScans(NScanNumber: Integer); dispid 11;
    function GetScanMode: ScanModeConstants; dispid 12;
    procedure SetScanMode(newVal: ScanModeConstants); dispid 13;
    procedure Pause; dispid 14;
    procedure Continue; dispid 15;
    function GetPauseState: PauseStateConstants; dispid 16;
    procedure SavePLC(const FileName: WideString); dispid 17;
    procedure HotStartWithSavedValues(val: Integer); dispid 18;
    function GetState: WideString; dispid 19;
    procedure SetState(const newVal: WideString); dispid 20;
    procedure StartPLCSim(const plcFile: WideString); dispid 21;
    procedure SetStartUpSwitch(postion: RestartSwitchPositionConstants); dispid 22;
    function GetStartUpSwitch: RestartSwitchPositionConstants; dispid 23;
    procedure ReadDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer; 
                                 DataType: PointDataTypeConstants; var pData: OleVariant); dispid 24;
    procedure WriteDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer; 
                                  var pData: OleVariant); dispid 25;
    procedure ReadFlagValue(ByteIndex: Integer; BitIndex: Integer; 
                            DataType: PointDataTypeConstants; var pData: OleVariant); dispid 26;
    procedure WriteFlagValue(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); dispid 27;
    procedure ConnectExt(InstanceNumber: Integer); dispid 29;
    procedure StartPLCSimExt(const plcFile: WideString); dispid 30;
  end;

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

  TS7ProSimScanFinished = procedure(ASender: TObject; ScanInfo: OleVariant) of object;
  TS7ProSimConnectionError = procedure(ASender: TObject; const ControlEngine: WideString; 
                                                         Error: Integer) of object;
  TS7ProSimPLCSimStateChanged = procedure(ASender: TObject; const NewState: WideString) of object;
  TS7ProSimPauseStateChanged = procedure(ASender: TObject; const NewState: WideString) of object;
  TS7ProSimScanModeChanged = procedure(ASender: TObject; const NewState: WideString) of object;

Ответить с цитированием