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

📄 opc.idl

📁 OPC Client 源代码
💻 IDL
📖 第 1 页 / 共 2 页
字号:
        [out, retval] IDispatch ** ppDisp 
        );


      HRESULT RemoveGroup(
        [in] long    ServerGroupHandle,
        [in] boolean Force
        );

      HRESULT SaveConfig( 
        [in] BSTR FileName
        );

      HRESULT LoadConfig(
        [in] BSTR FileName
        );

      HRESULT SetEnumeratorType(
        [in] long  Scope,
		[in] short Type
        );
     }
     

     [
       uuid(39c13a58-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCServerPublicGroupsDisp : IDispatch 
     {
      //
      // Methods
      //


      HRESULT GetPublicGroupByName(
        [in]          BSTR         Name,
        [out, retval] IDispatch ** ppDisp
        );

      HRESULT RemovePublicGroup(
        [in] long    ServerGroupHandle,
        [in] boolean Force
        );
     }
 
     
     [
       uuid(39c13a59-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCBrowseServerAddressSpaceDisp : IDispatch 
     {
      // 
      // Properties
      //
  
      [ propget, 
        restricted, 
        id( DISPID_NEWENUM )
      ]
      HRESULT _NewEnum(    
        [out, retval] IUnknown ** ppUnk
        );

      [ propget ]
      HRESULT Organization(
        [out, retval] long * pNameSpaceType
        );

      //
      // Methods
      //

      HRESULT ChangeBrowsePosition(
        [in] long BrowseDirection,  
        [in] BSTR Position
        );

      HRESULT SetItemIDEnumerator(
        [in]          long         BrowseFilterType,
        [in]          BSTR         FilterCriteria,  
        [in]          VARIANT      DataTypeFilter,	 
        [in]          long         AccessRightsFilter
        );        

      HRESULT GetItemIDString(
        [in]          BSTR   ItemDataID,
        [out, retval] BSTR * ItemID
        );

      HRESULT SetAccessPathEnumerator(
        [in]          BSTR         ItemID  
        );
     }

     
     [
       uuid(39c13a5a-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCItemMgtDisp : IDispatch 
     {
      //
      // Properties
      //
  
      [ propget ]
      HRESULT Count(
        [out, retval] long * pCount 
        );

      [ propget, 
        restricted, 
        id( DISPID_NEWENUM )
      ]
      HRESULT _NewEnum(    
        [out, retval] IUnknown ** ppUnk
        );

      //
      // Methods
      //

      HRESULT Item(
        [in]          VARIANT      ItemSpecifier, 
        [out, retval] IDispatch ** ppDisp 
        );

      HRESULT AddItems(
        [in]                long      NumItems,
        [in]                VARIANT   ItemIDs,
        [in]                VARIANT   ActiveStates,
        [in]                VARIANT   ClientHandles,
        [out]               VARIANT * pServerHandles,
        [out]               VARIANT * pErrors,
        [out]               VARIANT * pItemObjects,
        [in, optional]      VARIANT   AccessPaths,
        [in, optional]      VARIANT   RequestedDataTypes,
        [in, out, optional] VARIANT * pBlobs,
        [out, optional]     VARIANT * pCanonicalDataTypes,
        [out, optional]     VARIANT * pAccessRights
        );

      HRESULT ValidateItems(
        [in]                long      NumItems,
        [in]                VARIANT   ItemIDs,
        [out]               VARIANT * pErrors,
        [in, optional]      VARIANT   AccessPaths,
        [in, optional]      VARIANT   RequestedDataTypes,
        [in, optional]      VARIANT BlobUpdate,
        [in, out, optional] VARIANT * pBlobs,
        [out, optional]     VARIANT * pCanonicalDataTypes,
        [out, optional]     VARIANT * pAccessRights
        );

      HRESULT RemoveItems( 
        [in]  long      NumItems,
        [in]  VARIANT   ServerHandles,
        [out] VARIANT * pErrors,
        [in]  boolean   Force
        );

      HRESULT SetActiveState(
        [in]  long      NumItems,
        [in]  VARIANT   ServerHandles,
        [in]  boolean   ActiveState,
        [out] VARIANT * pErrors
        );

      HRESULT SetClientHandles(
        [in]  long      NumItems,
        [in]  VARIANT   ServerHandles,
        [in]  VARIANT   ClientHandles,
        [out] VARIANT * pErrors
        );

      HRESULT SetDatatypes(
        [in]  long      NumItems,
        [in]  VARIANT   ServerHandles,
        [in]  VARIANT   RequestedDataTypes,    
        [out] VARIANT * pErrors
        );
     }
     
     
     [
       uuid(39c13a5b-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCGroupStateMgtDisp : IDispatch 
     {
      //
      // Properties
      //

      [ propget ]
      HRESULT ActiveStatus(
        [out, retval] boolean * pActiveStatus
        ); 
        
      [ propput ]
      HRESULT ActiveStatus(
        [in] boolean ActiveStatus
        ); 

      [ propget ]
      HRESULT ClientGroupHandle(
        [out, retval] long * phClientGroupHandle
        );

      [ propput ]
      HRESULT ClientGroupHandle(
        [in] long ClientGroupHandle
        );

      [ propget ]
      HRESULT ServerGroupHandle(
        [out, retval] long * phServerGroupHandle
        );

      [ propget ]
      HRESULT Name(
        [out, retval] BSTR * pName 
        );

      [ propput ]
      HRESULT Name(
        [in] BSTR Name 
        );        
        
      [ propget ]
      HRESULT UpdateRate(
        [out, retval] long * pUpdateRate
        );

      [ propput ]
      HRESULT UpdateRate(
        [in] long UpdateRate
        );

      [ propget ]
      HRESULT TimeBias(
        [out, retval] long * pTimeBias
        );

      [ propput ]
      HRESULT TimeBias(
        [in] long TimeBias
        );

      [ propget ]
      HRESULT PercentDeadBand(
        [out, retval] float * pPercentDeadBand
        );

      [ propput ]
      HRESULT PercentDeadBand(
        [in] float PercentDeadBand
        );

      [ propget ]
      HRESULT LCID(
        [out, retval] long * pLCID
        );

      [ propput ]
      HRESULT LCID(
        [in] long LCID
        );

      //
      // Methods
      //
      HRESULT CloneGroup(
        [in, optional] VARIANT      Name,
        [out, retval]  IDispatch ** ppDisp
        );
     }
     
     
     [
       uuid(39c13a5c-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCSyncIODisp : IDispatch 
     {
      //
      // Properties
      //

      //
      // Methods
      //

      HRESULT OPCRead(
        [in]            short     Source,
        [in]            long      NumItems,
        [in]            VARIANT   ServerHandles,
        [out]           VARIANT * pValues,
        [out, optional] VARIANT * pQualities,
        [out, optional] VARIANT * pTimeStamps,
        [out, optional] VARIANT * pErrors
        );

      HRESULT OPCWrite(
        [in]            long      NumItems,
        [in]            VARIANT   ServerHandles,
        [in]            VARIANT   Values,        
        [out, optional] VARIANT * pErrors
        );
     }
     
     
     [
       uuid(39c13a5d-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCAsyncIODisp : IDispatch 
     {
      //
      // Properties
      //

      //
      // Methods
      //

      HRESULT AddCallbackReference(
        [in]          long        Context,
        [in]          IDispatch * pCallback,
        [out, retval] long      * pConnection
        );

      HRESULT DropCallbackReference(
        [in] long Connection
        );

      HRESULT OPCRead(
        [in]            short     Source,
        [in]            long      NumItems,
        [in]            VARIANT   ServerHandles,
        [out, optional] VARIANT * pErrors,
        [out, retval]   long    * pTransactionID
        );

      HRESULT OPCWrite(
        [in]            long      NumItems,
        [in]            VARIANT   ServerHandles,
        [in]            VARIANT   Values,        
        [out, optional] VARIANT * pErrors,
        [out, retval]   long    * pTransactionID
        );

      HRESULT Cancel(
        [in] long TransactionID
        );

      HRESULT Refresh(
        [in]          short   Source,
        [out, retval] long  * pTransactionID
        );
     }
     
     
     [
       uuid(39c13a5e-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCPublicGroupStateMgtDisp : IDispatch 
     {
      //
      // Properties
      //

      [ propget ]
      HRESULT State(
        [out, retval] boolean * pPublic
        );

      //
      // Methods
      //

      HRESULT MoveToPublic(
      void
      );

     }


     [
       uuid(39c13a5f-011e-11d0-9675-0020afd8adb3),
       dual,
       oleautomation
     ]
     interface IOPCItemDisp : IDispatch 
     {
      //
      // Properties
      //

      [ propget ]
      HRESULT AccessPath(
        [out, retval] BSTR * pAccessPath
        );

      [ propget ]
      HRESULT AccessRights(
        [out, retval] long * pAccessRights
        );

      [ propget ]
      HRESULT ActiveStatus(
        [out, retval] boolean * pActiveStatus
        );

      [ propput ]
      HRESULT ActiveStatus(
        [in] boolean ActiveStatus
        );

      [ propget ]
      HRESULT Blob(
        [out, retval] VARIANT * pBlob
        );

      [ propget ]
      HRESULT ClientHandle(
        [out, retval] long * phClient
        );

      [ propput ]
      HRESULT ClientHandle(
        [in] long Client
        );

      [ propget ]
      HRESULT ItemID(
        [out, retval] BSTR * pItemID
        );

      [ propget ]
      HRESULT ServerHandle(
        [out, retval] long * pServer
        );

      [ propget ]
      HRESULT RequestedDataType(
        [out, retval] short * pRequestedDataType
        );

      [ propput ]
      HRESULT RequestedDataType(
        [in] short RequestedDataType
        );

      [ propget ]
      HRESULT Value(
        [out, retval] VARIANT * pValue
        );

      [ propput ]
      HRESULT Value(
        [in] VARIANT NewValue
        );

      [ propget ]
      HRESULT Quality(
        [out, retval] short * pQuality
        );

      [ propget ]
      HRESULT Timestamp(
        [out, retval] DATE * pTimeStamp
        );

      [ propget ]
      HRESULT ReadError(
        [out, retval] long * pError
        );

      [ propget ]
      HRESULT WriteError(
        [out, retval] long * pError
        );

      [ propget ]
      HRESULT EUType(
        [out, retval] short * pError
        );

      [ propget ]
      HRESULT EUInfo(
        [out, retval] VARIANT * pError
        );

      //
      // Methods
      //

      HRESULT OPCRead(
        [in]            short     Source,
        [out]           VARIANT * pValue,
        [out, optional] VARIANT * pQuality,
        [out, optional] VARIANT * pTimestamp
        );

      HRESULT OPCWrite(
        [in] VARIANT NewValue
        );
     }


     [
       uuid(39c13a60-011e-11d0-9675-0020afd8adb3),
       helpstring("OPC Group Class")
     ]
     coclass Group
     {
      [default] interface IOPCItemMgtDisp;
                interface IOPCGroupStateMgtDisp;
                interface IOPCSyncIODisp;
                interface IOPCAsyncIODisp;
                interface IOPCPublicGroupStateMgtDisp;
     }


     [
       uuid(39c13a61-011e-11d0-9675-0020afd8adb3),
       helpstring("OPC Item Class")
     ]
     coclass Item
     {
      [default] interface IOPCItemDisp;
     }

};

⌨️ 快捷键说明

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