www.pudn.com > 200311301927570.rar > mqoa.tlh


// Created by Microsoft (R) C/C++ Compiler Version 12.00.8168.0 (42a9ca02). 
// 
// f:\sms\ftp\new sms\source code\app2\hwcmppapi10\release\mqoa.tlh 
// 
// C++ source equivalent of Win32 type library C:\WINNT\system32\mqoa.dll 
// compiler-generated file created 07/06/03 at 12:18:03 - DO NOT EDIT! 
 
#pragma once 
#pragma pack(push, 8) 
 
#include  
 
// 
// Forward references and typedefs 
// 
 
struct __declspec(uuid("d7d6e072-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQQuery; 
struct __declspec(uuid("d7d6e07d-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQQueueInfos; 
struct __declspec(uuid("d7d6e07b-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQQueueInfo; 
struct __declspec(uuid("d7d6e076-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQQueue; 
struct __declspec(uuid("d7d6e074-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQMessage; 
struct __declspec(uuid("d7d6e077-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQEvent; 
struct __declspec(uuid("fd174a80-89cf-11d2-b0f2-00e02c074f6b")) 
/* dual interface */ IMSMQQueueInfo2; 
struct __declspec(uuid("ef0574e0-06d8-11d3-b100-00e02c074f6b")) 
/* dual interface */ IMSMQQueue2; 
struct __declspec(uuid("eba96b12-2168-11d3-898c-00e02c074f6b")) 
/* dual interface */ IMSMQEvent2; 
struct __declspec(uuid("d9933be0-a567-11d2-b0f3-00e02c074f6b")) 
/* dual interface */ IMSMQMessage2; 
struct __declspec(uuid("eba96b0f-2168-11d3-898c-00e02c074f6b")) 
/* dual interface */ IMSMQQueueInfos2; 
struct __declspec(uuid("d7d6e07f-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQTransaction; 
struct __declspec(uuid("d7d6e081-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQCoordinatedTransactionDispenser; 
struct __declspec(uuid("d7d6e083-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQTransactionDispenser; 
struct __declspec(uuid("eba96b0e-2168-11d3-898c-00e02c074f6b")) 
/* dual interface */ IMSMQQuery2; 
struct /* coclass */ MSMQQuery; 
struct /* coclass */ MSMQMessage; 
struct /* coclass */ MSMQQueue; 
struct __declspec(uuid("d7ab3341-c9d3-11d1-bb47-0080c7c5a2c0")) 
/* dual interface */ IMSMQPrivateEvent; 
struct __declspec(uuid("d7d6e078-dccd-11d0-aa4b-0060970debae")) 
/* dispinterface */ _DMSMQEventEvents; 
struct /* coclass */ MSMQEvent; 
struct /* coclass */ MSMQQueueInfo; 
struct /* coclass */ MSMQQueueInfos; 
struct MQBOID; 
struct MQXACTTRANSINFO; 
struct __declspec(uuid("2ce0c5b0-6e67-11d2-b0e6-00e02c074f6b")) 
/* dual interface */ IMSMQTransaction2; 
struct /* coclass */ MSMQTransaction; 
struct __declspec(uuid("eba96b10-2168-11d3-898c-00e02c074f6b")) 
/* dual interface */ IMSMQCoordinatedTransactionDispenser2; 
struct /* coclass */ MSMQCoordinatedTransactionDispenser; 
struct __declspec(uuid("eba96b11-2168-11d3-898c-00e02c074f6b")) 
/* dual interface */ IMSMQTransactionDispenser2; 
struct /* coclass */ MSMQTransactionDispenser; 
struct __declspec(uuid("d7d6e085-dccd-11d0-aa4b-0060970debae")) 
/* dual interface */ IMSMQApplication; 
struct __declspec(uuid("12a30900-7300-11d2-b0e6-00e02c074f6b")) 
/* dual interface */ IMSMQApplication2; 
struct /* coclass */ MSMQApplication; 
 
// 
// Smart pointer typedef declarations 
// 
 
_COM_SMARTPTR_TYPEDEF(IMSMQQuery, __uuidof(IMSMQQuery)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQueueInfos, __uuidof(IMSMQQueueInfos)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQueueInfo, __uuidof(IMSMQQueueInfo)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQueue, __uuidof(IMSMQQueue)); 
_COM_SMARTPTR_TYPEDEF(IMSMQMessage, __uuidof(IMSMQMessage)); 
_COM_SMARTPTR_TYPEDEF(IMSMQEvent, __uuidof(IMSMQEvent)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQueueInfo2, __uuidof(IMSMQQueueInfo2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQueue2, __uuidof(IMSMQQueue2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQEvent2, __uuidof(IMSMQEvent2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQMessage2, __uuidof(IMSMQMessage2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQueueInfos2, __uuidof(IMSMQQueueInfos2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQTransaction, __uuidof(IMSMQTransaction)); 
_COM_SMARTPTR_TYPEDEF(IMSMQCoordinatedTransactionDispenser, __uuidof(IMSMQCoordinatedTransactionDispenser)); 
_COM_SMARTPTR_TYPEDEF(IMSMQTransactionDispenser, __uuidof(IMSMQTransactionDispenser)); 
_COM_SMARTPTR_TYPEDEF(IMSMQQuery2, __uuidof(IMSMQQuery2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQPrivateEvent, __uuidof(IMSMQPrivateEvent)); 
_COM_SMARTPTR_TYPEDEF(_DMSMQEventEvents, __uuidof(IDispatch)); 
_COM_SMARTPTR_TYPEDEF(IMSMQTransaction2, __uuidof(IMSMQTransaction2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQCoordinatedTransactionDispenser2, __uuidof(IMSMQCoordinatedTransactionDispenser2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQTransactionDispenser2, __uuidof(IMSMQTransactionDispenser2)); 
_COM_SMARTPTR_TYPEDEF(IMSMQApplication, __uuidof(IMSMQApplication)); 
_COM_SMARTPTR_TYPEDEF(IMSMQApplication2, __uuidof(IMSMQApplication2)); 
 
// 
// Type library items 
// 
 
struct __declspec(uuid("d7d6e072-dccd-11d0-aa4b-0060970debae")) 
IMSMQQuery : IDispatch 
{ 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IMSMQQueueInfosPtr LookupQueue ( 
        VARIANT * QueueGuid = &vtMissing, 
        VARIANT * ServiceTypeGuid = &vtMissing, 
        VARIANT * Label = &vtMissing, 
        VARIANT * CreateTime = &vtMissing, 
        VARIANT * ModifyTime = &vtMissing, 
        VARIANT * RelServiceType = &vtMissing, 
        VARIANT * RelLabel = &vtMissing, 
        VARIANT * RelCreateTime = &vtMissing, 
        VARIANT * RelModifyTime = &vtMissing ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_LookupQueue ( 
        VARIANT * QueueGuid, 
        VARIANT * ServiceTypeGuid, 
        VARIANT * Label, 
        VARIANT * CreateTime, 
        VARIANT * ModifyTime, 
        VARIANT * RelServiceType, 
        VARIANT * RelLabel, 
        VARIANT * RelCreateTime, 
        VARIANT * RelModifyTime, 
        struct IMSMQQueueInfos * * ppqinfos ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e07d-dccd-11d0-aa4b-0060970debae")) 
IMSMQQueueInfos : IDispatch 
{ 
    // 
    // Wrapper methods for error-handling 
    // 
 
    HRESULT Reset ( ); 
    IMSMQQueueInfoPtr Next ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_Reset ( ) = 0; 
    virtual HRESULT __stdcall raw_Next ( 
        struct IMSMQQueueInfo * * ppqinfoNext ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e07b-dccd-11d0-aa4b-0060970debae")) 
IMSMQQueueInfo : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetQueueGuid)) 
    _bstr_t QueueGuid; 
    __declspec(property(get=GetServiceTypeGuid,put=PutServiceTypeGuid)) 
    _bstr_t ServiceTypeGuid; 
    __declspec(property(get=GetLabel,put=PutLabel)) 
    _bstr_t Label; 
    __declspec(property(get=GetPathName,put=PutPathName)) 
    _bstr_t PathName; 
    __declspec(property(get=GetFormatName,put=PutFormatName)) 
    _bstr_t FormatName; 
    __declspec(property(get=GetIsTransactional)) 
    short IsTransactional; 
    __declspec(property(get=GetPrivLevel,put=PutPrivLevel)) 
    long PrivLevel; 
    __declspec(property(get=GetJournal,put=PutJournal)) 
    long Journal; 
    __declspec(property(get=GetBasePriority,put=PutBasePriority)) 
    long BasePriority; 
    __declspec(property(get=GetCreateTime)) 
    _variant_t CreateTime; 
    __declspec(property(get=GetModifyTime)) 
    _variant_t ModifyTime; 
    __declspec(property(get=GetAuthenticate,put=PutAuthenticate)) 
    long Authenticate; 
    __declspec(property(get=GetQuota,put=PutQuota)) 
    long Quota; 
    __declspec(property(get=GetJournalQuota,put=PutJournalQuota)) 
    long JournalQuota; 
    __declspec(property(get=GetIsWorldReadable)) 
    short IsWorldReadable; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    _bstr_t GetQueueGuid ( ); 
    _bstr_t GetServiceTypeGuid ( ); 
    void PutServiceTypeGuid ( 
        _bstr_t pbstrGuidServiceType ); 
    _bstr_t GetLabel ( ); 
    void PutLabel ( 
        _bstr_t pbstrLabel ); 
    _bstr_t GetPathName ( ); 
    void PutPathName ( 
        _bstr_t pbstrPathName ); 
    _bstr_t GetFormatName ( ); 
    void PutFormatName ( 
        _bstr_t pbstrFormatName ); 
    short GetIsTransactional ( ); 
    long GetPrivLevel ( ); 
    void PutPrivLevel ( 
        long plPrivLevel ); 
    long GetJournal ( ); 
    void PutJournal ( 
        long plJournal ); 
    long GetQuota ( ); 
    void PutQuota ( 
        long plQuota ); 
    long GetBasePriority ( ); 
    void PutBasePriority ( 
        long plBasePriority ); 
    _variant_t GetCreateTime ( ); 
    _variant_t GetModifyTime ( ); 
    long GetAuthenticate ( ); 
    void PutAuthenticate ( 
        long plAuthenticate ); 
    long GetJournalQuota ( ); 
    void PutJournalQuota ( 
        long plJournalQuota ); 
    short GetIsWorldReadable ( ); 
    HRESULT Create ( 
        VARIANT * IsTransactional = &vtMissing, 
        VARIANT * IsWorldReadable = &vtMissing ); 
    HRESULT Delete ( ); 
    IMSMQQueuePtr Open ( 
        long Access, 
        long ShareMode ); 
    HRESULT Refresh ( ); 
    HRESULT Update ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_QueueGuid ( 
        BSTR * pbstrGuidQueue ) = 0; 
    virtual HRESULT __stdcall get_ServiceTypeGuid ( 
        BSTR * pbstrGuidServiceType ) = 0; 
    virtual HRESULT __stdcall put_ServiceTypeGuid ( 
        BSTR pbstrGuidServiceType ) = 0; 
    virtual HRESULT __stdcall get_Label ( 
        BSTR * pbstrLabel ) = 0; 
    virtual HRESULT __stdcall put_Label ( 
        BSTR pbstrLabel ) = 0; 
    virtual HRESULT __stdcall get_PathName ( 
        BSTR * pbstrPathName ) = 0; 
    virtual HRESULT __stdcall put_PathName ( 
        BSTR pbstrPathName ) = 0; 
    virtual HRESULT __stdcall get_FormatName ( 
        BSTR * pbstrFormatName ) = 0; 
    virtual HRESULT __stdcall put_FormatName ( 
        BSTR pbstrFormatName ) = 0; 
    virtual HRESULT __stdcall get_IsTransactional ( 
        short * pisTransactional ) = 0; 
    virtual HRESULT __stdcall get_PrivLevel ( 
        long * plPrivLevel ) = 0; 
    virtual HRESULT __stdcall put_PrivLevel ( 
        long plPrivLevel ) = 0; 
    virtual HRESULT __stdcall get_Journal ( 
        long * plJournal ) = 0; 
    virtual HRESULT __stdcall put_Journal ( 
        long plJournal ) = 0; 
    virtual HRESULT __stdcall get_Quota ( 
        long * plQuota ) = 0; 
    virtual HRESULT __stdcall put_Quota ( 
        long plQuota ) = 0; 
    virtual HRESULT __stdcall get_BasePriority ( 
        long * plBasePriority ) = 0; 
    virtual HRESULT __stdcall put_BasePriority ( 
        long plBasePriority ) = 0; 
    virtual HRESULT __stdcall get_CreateTime ( 
        VARIANT * pvarCreateTime ) = 0; 
    virtual HRESULT __stdcall get_ModifyTime ( 
        VARIANT * pvarModifyTime ) = 0; 
    virtual HRESULT __stdcall get_Authenticate ( 
        long * plAuthenticate ) = 0; 
    virtual HRESULT __stdcall put_Authenticate ( 
        long plAuthenticate ) = 0; 
    virtual HRESULT __stdcall get_JournalQuota ( 
        long * plJournalQuota ) = 0; 
    virtual HRESULT __stdcall put_JournalQuota ( 
        long plJournalQuota ) = 0; 
    virtual HRESULT __stdcall get_IsWorldReadable ( 
        short * pisWorldReadable ) = 0; 
    virtual HRESULT __stdcall raw_Create ( 
        VARIANT * IsTransactional = &vtMissing, 
        VARIANT * IsWorldReadable = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_Delete ( ) = 0; 
    virtual HRESULT __stdcall raw_Open ( 
        long Access, 
        long ShareMode, 
        struct IMSMQQueue * * ppq ) = 0; 
    virtual HRESULT __stdcall raw_Refresh ( ) = 0; 
    virtual HRESULT __stdcall raw_Update ( ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e076-dccd-11d0-aa4b-0060970debae")) 
IMSMQQueue : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetHandle)) 
    long Handle; 
    __declspec(property(get=GetAccess)) 
    long Access; 
    __declspec(property(get=GetShareMode)) 
    long ShareMode; 
    __declspec(property(get=GetQueueInfo)) 
    IMSMQQueueInfoPtr QueueInfo; 
    __declspec(property(get=GetIsOpen)) 
    short IsOpen; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    long GetAccess ( ); 
    long GetShareMode ( ); 
    IMSMQQueueInfoPtr GetQueueInfo ( ); 
    long GetHandle ( ); 
    short GetIsOpen ( ); 
    HRESULT Close ( ); 
    IMSMQMessagePtr Receive ( 
        VARIANT * Transaction = &vtMissing, 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessagePtr Peek ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    HRESULT EnableNotification ( 
        struct IMSMQEvent * Event, 
        VARIANT * Cursor = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    HRESULT Reset ( ); 
    IMSMQMessagePtr ReceiveCurrent ( 
        VARIANT * Transaction = &vtMissing, 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessagePtr PeekNext ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessagePtr PeekCurrent ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Access ( 
        long * plAccess ) = 0; 
    virtual HRESULT __stdcall get_ShareMode ( 
        long * plShareMode ) = 0; 
    virtual HRESULT __stdcall get_QueueInfo ( 
        struct IMSMQQueueInfo * * ppqinfo ) = 0; 
    virtual HRESULT __stdcall get_Handle ( 
        long * plHandle ) = 0; 
    virtual HRESULT __stdcall get_IsOpen ( 
        short * pisOpen ) = 0; 
    virtual HRESULT __stdcall raw_Close ( ) = 0; 
    virtual HRESULT __stdcall raw_Receive ( 
        VARIANT * Transaction, 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_Peek ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_EnableNotification ( 
        struct IMSMQEvent * Event, 
        VARIANT * Cursor = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_Reset ( ) = 0; 
    virtual HRESULT __stdcall raw_ReceiveCurrent ( 
        VARIANT * Transaction, 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_PeekNext ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_PeekCurrent ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e074-dccd-11d0-aa4b-0060970debae")) 
IMSMQMessage : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetBody,put=PutBody)) 
    _variant_t Body; 
    __declspec(property(get=GetDelivery,put=PutDelivery)) 
    long Delivery; 
    __declspec(property(get=GetPriority,put=PutPriority)) 
    long Priority; 
    __declspec(property(get=GetJournal,put=PutJournal)) 
    long Journal; 
    __declspec(property(get=GetResponseQueueInfo,put=PutRefResponseQueueInfo)) 
    IMSMQQueueInfoPtr ResponseQueueInfo; 
    __declspec(property(get=GetAppSpecific,put=PutAppSpecific)) 
    long AppSpecific; 
    __declspec(property(get=GetSourceMachineGuid)) 
    _bstr_t SourceMachineGuid; 
    __declspec(property(get=GetClass)) 
    long Class; 
    __declspec(property(get=GetAdminQueueInfo,put=PutRefAdminQueueInfo)) 
    IMSMQQueueInfoPtr AdminQueueInfo; 
    __declspec(property(get=GetId)) 
    _variant_t Id; 
    __declspec(property(get=GetCorrelationId,put=PutCorrelationId)) 
    _variant_t CorrelationId; 
    __declspec(property(get=GetAck,put=PutAck)) 
    long Ack; 
    __declspec(property(get=GetLabel,put=PutLabel)) 
    _bstr_t Label; 
    __declspec(property(get=GetBodyLength)) 
    long BodyLength; 
    __declspec(property(get=GetMaxTimeToReachQueue,put=PutMaxTimeToReachQueue)) 
    long MaxTimeToReachQueue; 
    __declspec(property(get=GetMaxTimeToReceive,put=PutMaxTimeToReceive)) 
    long MaxTimeToReceive; 
    __declspec(property(get=GetEncryptAlgorithm,put=PutEncryptAlgorithm)) 
    long EncryptAlgorithm; 
    __declspec(property(get=GetHashAlgorithm,put=PutHashAlgorithm)) 
    long HashAlgorithm; 
    __declspec(property(get=GetSentTime)) 
    _variant_t SentTime; 
    __declspec(property(get=GetArrivedTime)) 
    _variant_t ArrivedTime; 
    __declspec(property(get=GetDestinationQueueInfo)) 
    IMSMQQueueInfoPtr DestinationQueueInfo; 
    __declspec(property(get=GetSenderCertificate,put=PutSenderCertificate)) 
    _variant_t SenderCertificate; 
    __declspec(property(get=GetSenderId)) 
    _variant_t SenderId; 
    __declspec(property(get=GetSenderIdType,put=PutSenderIdType)) 
    long SenderIdType; 
    __declspec(property(get=GetTrace,put=PutTrace)) 
    long Trace; 
    __declspec(property(get=GetPrivLevel,put=PutPrivLevel)) 
    long PrivLevel; 
    __declspec(property(get=GetAuthLevel,put=PutAuthLevel)) 
    long AuthLevel; 
    __declspec(property(get=GetIsAuthenticated)) 
    short IsAuthenticated; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    long GetClass ( ); 
    long GetPrivLevel ( ); 
    void PutPrivLevel ( 
        long plPrivLevel ); 
    long GetAuthLevel ( ); 
    void PutAuthLevel ( 
        long plAuthLevel ); 
    short GetIsAuthenticated ( ); 
    long GetDelivery ( ); 
    void PutDelivery ( 
        long plDelivery ); 
    long GetTrace ( ); 
    void PutTrace ( 
        long plTrace ); 
    long GetPriority ( ); 
    void PutPriority ( 
        long plPriority ); 
    long GetJournal ( ); 
    void PutJournal ( 
        long plJournal ); 
    IMSMQQueueInfoPtr GetResponseQueueInfo ( ); 
    void PutRefResponseQueueInfo ( 
        struct IMSMQQueueInfo * ppqinfoResponse ); 
    long GetAppSpecific ( ); 
    void PutAppSpecific ( 
        long plAppSpecific ); 
    _bstr_t GetSourceMachineGuid ( ); 
    long GetBodyLength ( ); 
    _variant_t GetBody ( ); 
    void PutBody ( 
        const _variant_t & pvarBody ); 
    IMSMQQueueInfoPtr GetAdminQueueInfo ( ); 
    void PutRefAdminQueueInfo ( 
        struct IMSMQQueueInfo * ppqinfoAdmin ); 
    _variant_t GetId ( ); 
    _variant_t GetCorrelationId ( ); 
    void PutCorrelationId ( 
        const _variant_t & pvarMsgId ); 
    long GetAck ( ); 
    void PutAck ( 
        long plAck ); 
    _bstr_t GetLabel ( ); 
    void PutLabel ( 
        _bstr_t pbstrLabel ); 
    long GetMaxTimeToReachQueue ( ); 
    void PutMaxTimeToReachQueue ( 
        long plMaxTimeToReachQueue ); 
    long GetMaxTimeToReceive ( ); 
    void PutMaxTimeToReceive ( 
        long plMaxTimeToReceive ); 
    long GetHashAlgorithm ( ); 
    void PutHashAlgorithm ( 
        long plHashAlg ); 
    long GetEncryptAlgorithm ( ); 
    void PutEncryptAlgorithm ( 
        long plEncryptAlg ); 
    _variant_t GetSentTime ( ); 
    _variant_t GetArrivedTime ( ); 
    IMSMQQueueInfoPtr GetDestinationQueueInfo ( ); 
    _variant_t GetSenderCertificate ( ); 
    void PutSenderCertificate ( 
        const _variant_t & pvarSenderCert ); 
    _variant_t GetSenderId ( ); 
    long GetSenderIdType ( ); 
    void PutSenderIdType ( 
        long plSenderIdType ); 
    HRESULT Send ( 
        struct IMSMQQueue * DestinationQueue, 
        VARIANT * Transaction = &vtMissing ); 
    HRESULT AttachCurrentSecurityContext ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Class ( 
        long * plClass ) = 0; 
    virtual HRESULT __stdcall get_PrivLevel ( 
        long * plPrivLevel ) = 0; 
    virtual HRESULT __stdcall put_PrivLevel ( 
        long plPrivLevel ) = 0; 
    virtual HRESULT __stdcall get_AuthLevel ( 
        long * plAuthLevel ) = 0; 
    virtual HRESULT __stdcall put_AuthLevel ( 
        long plAuthLevel ) = 0; 
    virtual HRESULT __stdcall get_IsAuthenticated ( 
        short * pisAuthenticated ) = 0; 
    virtual HRESULT __stdcall get_Delivery ( 
        long * plDelivery ) = 0; 
    virtual HRESULT __stdcall put_Delivery ( 
        long plDelivery ) = 0; 
    virtual HRESULT __stdcall get_Trace ( 
        long * plTrace ) = 0; 
    virtual HRESULT __stdcall put_Trace ( 
        long plTrace ) = 0; 
    virtual HRESULT __stdcall get_Priority ( 
        long * plPriority ) = 0; 
    virtual HRESULT __stdcall put_Priority ( 
        long plPriority ) = 0; 
    virtual HRESULT __stdcall get_Journal ( 
        long * plJournal ) = 0; 
    virtual HRESULT __stdcall put_Journal ( 
        long plJournal ) = 0; 
    virtual HRESULT __stdcall get_ResponseQueueInfo ( 
        struct IMSMQQueueInfo * * ppqinfoResponse ) = 0; 
    virtual HRESULT __stdcall putref_ResponseQueueInfo ( 
        struct IMSMQQueueInfo * ppqinfoResponse ) = 0; 
    virtual HRESULT __stdcall get_AppSpecific ( 
        long * plAppSpecific ) = 0; 
    virtual HRESULT __stdcall put_AppSpecific ( 
        long plAppSpecific ) = 0; 
    virtual HRESULT __stdcall get_SourceMachineGuid ( 
        BSTR * pbstrGuidSrcMachine ) = 0; 
    virtual HRESULT __stdcall get_BodyLength ( 
        long * pcbBody ) = 0; 
    virtual HRESULT __stdcall get_Body ( 
        VARIANT * pvarBody ) = 0; 
    virtual HRESULT __stdcall put_Body ( 
        VARIANT pvarBody ) = 0; 
    virtual HRESULT __stdcall get_AdminQueueInfo ( 
        struct IMSMQQueueInfo * * ppqinfoAdmin ) = 0; 
    virtual HRESULT __stdcall putref_AdminQueueInfo ( 
        struct IMSMQQueueInfo * ppqinfoAdmin ) = 0; 
    virtual HRESULT __stdcall get_Id ( 
        VARIANT * pvarMsgId ) = 0; 
    virtual HRESULT __stdcall get_CorrelationId ( 
        VARIANT * pvarMsgId ) = 0; 
    virtual HRESULT __stdcall put_CorrelationId ( 
        VARIANT pvarMsgId ) = 0; 
    virtual HRESULT __stdcall get_Ack ( 
        long * plAck ) = 0; 
    virtual HRESULT __stdcall put_Ack ( 
        long plAck ) = 0; 
    virtual HRESULT __stdcall get_Label ( 
        BSTR * pbstrLabel ) = 0; 
    virtual HRESULT __stdcall put_Label ( 
        BSTR pbstrLabel ) = 0; 
    virtual HRESULT __stdcall get_MaxTimeToReachQueue ( 
        long * plMaxTimeToReachQueue ) = 0; 
    virtual HRESULT __stdcall put_MaxTimeToReachQueue ( 
        long plMaxTimeToReachQueue ) = 0; 
    virtual HRESULT __stdcall get_MaxTimeToReceive ( 
        long * plMaxTimeToReceive ) = 0; 
    virtual HRESULT __stdcall put_MaxTimeToReceive ( 
        long plMaxTimeToReceive ) = 0; 
    virtual HRESULT __stdcall get_HashAlgorithm ( 
        long * plHashAlg ) = 0; 
    virtual HRESULT __stdcall put_HashAlgorithm ( 
        long plHashAlg ) = 0; 
    virtual HRESULT __stdcall get_EncryptAlgorithm ( 
        long * plEncryptAlg ) = 0; 
    virtual HRESULT __stdcall put_EncryptAlgorithm ( 
        long plEncryptAlg ) = 0; 
    virtual HRESULT __stdcall get_SentTime ( 
        VARIANT * pvarSentTime ) = 0; 
    virtual HRESULT __stdcall get_ArrivedTime ( 
        VARIANT * plArrivedTime ) = 0; 
    virtual HRESULT __stdcall get_DestinationQueueInfo ( 
        struct IMSMQQueueInfo * * ppqinfoDest ) = 0; 
    virtual HRESULT __stdcall get_SenderCertificate ( 
        VARIANT * pvarSenderCert ) = 0; 
    virtual HRESULT __stdcall put_SenderCertificate ( 
        VARIANT pvarSenderCert ) = 0; 
    virtual HRESULT __stdcall get_SenderId ( 
        VARIANT * pvarSenderId ) = 0; 
    virtual HRESULT __stdcall get_SenderIdType ( 
        long * plSenderIdType ) = 0; 
    virtual HRESULT __stdcall put_SenderIdType ( 
        long plSenderIdType ) = 0; 
    virtual HRESULT __stdcall raw_Send ( 
        struct IMSMQQueue * DestinationQueue, 
        VARIANT * Transaction = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_AttachCurrentSecurityContext ( ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e077-dccd-11d0-aa4b-0060970debae")) 
IMSMQEvent : IDispatch 
{}; 
 
struct __declspec(uuid("fd174a80-89cf-11d2-b0f2-00e02c074f6b")) 
IMSMQQueueInfo2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetQueueGuid)) 
    _bstr_t QueueGuid; 
    __declspec(property(get=GetServiceTypeGuid,put=PutServiceTypeGuid)) 
    _bstr_t ServiceTypeGuid; 
    __declspec(property(get=GetLabel,put=PutLabel)) 
    _bstr_t Label; 
    __declspec(property(get=GetPathName,put=PutPathName)) 
    _bstr_t PathName; 
    __declspec(property(get=GetFormatName,put=PutFormatName)) 
    _bstr_t FormatName; 
    __declspec(property(get=GetIsTransactional)) 
    short IsTransactional; 
    __declspec(property(get=GetPrivLevel,put=PutPrivLevel)) 
    long PrivLevel; 
    __declspec(property(get=GetJournal,put=PutJournal)) 
    long Journal; 
    __declspec(property(get=GetBasePriority,put=PutBasePriority)) 
    long BasePriority; 
    __declspec(property(get=GetCreateTime)) 
    _variant_t CreateTime; 
    __declspec(property(get=GetModifyTime)) 
    _variant_t ModifyTime; 
    __declspec(property(get=GetAuthenticate,put=PutAuthenticate)) 
    long Authenticate; 
    __declspec(property(get=GetQuota,put=PutQuota)) 
    long Quota; 
    __declspec(property(get=GetJournalQuota,put=PutJournalQuota)) 
    long JournalQuota; 
    __declspec(property(get=GetIsWorldReadable)) 
    short IsWorldReadable; 
    __declspec(property(get=GetPathNameDNS)) 
    _bstr_t PathNameDNS; 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
    __declspec(property(get=GetSecurity,put=PutSecurity)) 
    _variant_t Security; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    _bstr_t GetQueueGuid ( ); 
    _bstr_t GetServiceTypeGuid ( ); 
    void PutServiceTypeGuid ( 
        _bstr_t pbstrGuidServiceType ); 
    _bstr_t GetLabel ( ); 
    void PutLabel ( 
        _bstr_t pbstrLabel ); 
    _bstr_t GetPathName ( ); 
    void PutPathName ( 
        _bstr_t pbstrPathName ); 
    _bstr_t GetFormatName ( ); 
    void PutFormatName ( 
        _bstr_t pbstrFormatName ); 
    short GetIsTransactional ( ); 
    long GetPrivLevel ( ); 
    void PutPrivLevel ( 
        long plPrivLevel ); 
    long GetJournal ( ); 
    void PutJournal ( 
        long plJournal ); 
    long GetQuota ( ); 
    void PutQuota ( 
        long plQuota ); 
    long GetBasePriority ( ); 
    void PutBasePriority ( 
        long plBasePriority ); 
    _variant_t GetCreateTime ( ); 
    _variant_t GetModifyTime ( ); 
    long GetAuthenticate ( ); 
    void PutAuthenticate ( 
        long plAuthenticate ); 
    long GetJournalQuota ( ); 
    void PutJournalQuota ( 
        long plJournalQuota ); 
    short GetIsWorldReadable ( ); 
    HRESULT Create ( 
        VARIANT * IsTransactional = &vtMissing, 
        VARIANT * IsWorldReadable = &vtMissing ); 
    HRESULT Delete ( ); 
    IMSMQQueue2Ptr Open ( 
        long Access, 
        long ShareMode ); 
    HRESULT Refresh ( ); 
    HRESULT Update ( ); 
    _bstr_t GetPathNameDNS ( ); 
    IDispatchPtr GetProperties ( ); 
    _variant_t GetSecurity ( ); 
    void PutSecurity ( 
        const _variant_t & pvarSecurity ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_QueueGuid ( 
        BSTR * pbstrGuidQueue ) = 0; 
    virtual HRESULT __stdcall get_ServiceTypeGuid ( 
        BSTR * pbstrGuidServiceType ) = 0; 
    virtual HRESULT __stdcall put_ServiceTypeGuid ( 
        BSTR pbstrGuidServiceType ) = 0; 
    virtual HRESULT __stdcall get_Label ( 
        BSTR * pbstrLabel ) = 0; 
    virtual HRESULT __stdcall put_Label ( 
        BSTR pbstrLabel ) = 0; 
    virtual HRESULT __stdcall get_PathName ( 
        BSTR * pbstrPathName ) = 0; 
    virtual HRESULT __stdcall put_PathName ( 
        BSTR pbstrPathName ) = 0; 
    virtual HRESULT __stdcall get_FormatName ( 
        BSTR * pbstrFormatName ) = 0; 
    virtual HRESULT __stdcall put_FormatName ( 
        BSTR pbstrFormatName ) = 0; 
    virtual HRESULT __stdcall get_IsTransactional ( 
        short * pisTransactional ) = 0; 
    virtual HRESULT __stdcall get_PrivLevel ( 
        long * plPrivLevel ) = 0; 
    virtual HRESULT __stdcall put_PrivLevel ( 
        long plPrivLevel ) = 0; 
    virtual HRESULT __stdcall get_Journal ( 
        long * plJournal ) = 0; 
    virtual HRESULT __stdcall put_Journal ( 
        long plJournal ) = 0; 
    virtual HRESULT __stdcall get_Quota ( 
        long * plQuota ) = 0; 
    virtual HRESULT __stdcall put_Quota ( 
        long plQuota ) = 0; 
    virtual HRESULT __stdcall get_BasePriority ( 
        long * plBasePriority ) = 0; 
    virtual HRESULT __stdcall put_BasePriority ( 
        long plBasePriority ) = 0; 
    virtual HRESULT __stdcall get_CreateTime ( 
        VARIANT * pvarCreateTime ) = 0; 
    virtual HRESULT __stdcall get_ModifyTime ( 
        VARIANT * pvarModifyTime ) = 0; 
    virtual HRESULT __stdcall get_Authenticate ( 
        long * plAuthenticate ) = 0; 
    virtual HRESULT __stdcall put_Authenticate ( 
        long plAuthenticate ) = 0; 
    virtual HRESULT __stdcall get_JournalQuota ( 
        long * plJournalQuota ) = 0; 
    virtual HRESULT __stdcall put_JournalQuota ( 
        long plJournalQuota ) = 0; 
    virtual HRESULT __stdcall get_IsWorldReadable ( 
        short * pisWorldReadable ) = 0; 
    virtual HRESULT __stdcall raw_Create ( 
        VARIANT * IsTransactional = &vtMissing, 
        VARIANT * IsWorldReadable = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_Delete ( ) = 0; 
    virtual HRESULT __stdcall raw_Open ( 
        long Access, 
        long ShareMode, 
        struct IMSMQQueue2 * * ppq ) = 0; 
    virtual HRESULT __stdcall raw_Refresh ( ) = 0; 
    virtual HRESULT __stdcall raw_Update ( ) = 0; 
    virtual HRESULT __stdcall get_PathNameDNS ( 
        BSTR * pbstrPathNameDNS ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
    virtual HRESULT __stdcall get_Security ( 
        VARIANT * pvarSecurity ) = 0; 
    virtual HRESULT __stdcall put_Security ( 
        VARIANT pvarSecurity ) = 0; 
}; 
 
struct __declspec(uuid("ef0574e0-06d8-11d3-b100-00e02c074f6b")) 
IMSMQQueue2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetHandle)) 
    long Handle; 
    __declspec(property(get=GetAccess)) 
    long Access; 
    __declspec(property(get=GetShareMode)) 
    long ShareMode; 
    __declspec(property(get=GetQueueInfo)) 
    IMSMQQueueInfo2Ptr QueueInfo; 
    __declspec(property(get=GetIsOpen)) 
    short IsOpen; 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    long GetAccess ( ); 
    long GetShareMode ( ); 
    IMSMQQueueInfo2Ptr GetQueueInfo ( ); 
    long GetHandle ( ); 
    short GetIsOpen ( ); 
    HRESULT Close ( ); 
    IMSMQMessagePtr Receive_v1 ( 
        VARIANT * Transaction = &vtMissing, 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessagePtr Peek_v1 ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    HRESULT EnableNotification ( 
        struct IMSMQEvent2 * Event, 
        VARIANT * Cursor = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    HRESULT Reset ( ); 
    IMSMQMessagePtr ReceiveCurrent_v1 ( 
        VARIANT * Transaction = &vtMissing, 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessagePtr PeekNext_v1 ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessagePtr PeekCurrent_v1 ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ); 
    IMSMQMessage2Ptr Receive ( 
        VARIANT * Transaction = &vtMissing, 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing, 
        VARIANT * WantConnectorType = &vtMissing ); 
    IMSMQMessage2Ptr Peek ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing, 
        VARIANT * WantConnectorType = &vtMissing ); 
    IMSMQMessage2Ptr ReceiveCurrent ( 
        VARIANT * Transaction = &vtMissing, 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing, 
        VARIANT * WantConnectorType = &vtMissing ); 
    IMSMQMessage2Ptr PeekNext ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing, 
        VARIANT * WantConnectorType = &vtMissing ); 
    IMSMQMessage2Ptr PeekCurrent ( 
        VARIANT * WantDestinationQueue = &vtMissing, 
        VARIANT * WantBody = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing, 
        VARIANT * WantConnectorType = &vtMissing ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Access ( 
        long * plAccess ) = 0; 
    virtual HRESULT __stdcall get_ShareMode ( 
        long * plShareMode ) = 0; 
    virtual HRESULT __stdcall get_QueueInfo ( 
        struct IMSMQQueueInfo2 * * ppqinfo ) = 0; 
    virtual HRESULT __stdcall get_Handle ( 
        long * plHandle ) = 0; 
    virtual HRESULT __stdcall get_IsOpen ( 
        short * pisOpen ) = 0; 
    virtual HRESULT __stdcall raw_Close ( ) = 0; 
    virtual HRESULT __stdcall raw_Receive_v1 ( 
        VARIANT * Transaction, 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_Peek_v1 ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_EnableNotification ( 
        struct IMSMQEvent2 * Event, 
        VARIANT * Cursor = &vtMissing, 
        VARIANT * ReceiveTimeout = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_Reset ( ) = 0; 
    virtual HRESULT __stdcall raw_ReceiveCurrent_v1 ( 
        VARIANT * Transaction, 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_PeekNext_v1 ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_PeekCurrent_v1 ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        struct IMSMQMessage * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_Receive ( 
        VARIANT * Transaction, 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        VARIANT * WantConnectorType, 
        struct IMSMQMessage2 * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_Peek ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        VARIANT * WantConnectorType, 
        struct IMSMQMessage2 * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_ReceiveCurrent ( 
        VARIANT * Transaction, 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        VARIANT * WantConnectorType, 
        struct IMSMQMessage2 * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_PeekNext ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        VARIANT * WantConnectorType, 
        struct IMSMQMessage2 * * ppmsg ) = 0; 
    virtual HRESULT __stdcall raw_PeekCurrent ( 
        VARIANT * WantDestinationQueue, 
        VARIANT * WantBody, 
        VARIANT * ReceiveTimeout, 
        VARIANT * WantConnectorType, 
        struct IMSMQMessage2 * * ppmsg ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("eba96b12-2168-11d3-898c-00e02c074f6b")) 
IMSMQEvent2 : IMSMQEvent 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d9933be0-a567-11d2-b0f3-00e02c074f6b")) 
IMSMQMessage2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetBody,put=PutBody)) 
    _variant_t Body; 
    __declspec(property(get=GetDelivery,put=PutDelivery)) 
    long Delivery; 
    __declspec(property(get=GetPriority,put=PutPriority)) 
    long Priority; 
    __declspec(property(get=GetJournal,put=PutJournal)) 
    long Journal; 
    __declspec(property(get=GetResponseQueueInfo_v1,put=PutRefResponseQueueInfo_v1)) 
    IMSMQQueueInfoPtr ResponseQueueInfo_v1; 
    __declspec(property(get=GetAppSpecific,put=PutAppSpecific)) 
    long AppSpecific; 
    __declspec(property(get=GetSourceMachineGuid)) 
    _bstr_t SourceMachineGuid; 
    __declspec(property(get=GetClass)) 
    long Class; 
    __declspec(property(get=GetAdminQueueInfo_v1,put=PutRefAdminQueueInfo_v1)) 
    IMSMQQueueInfoPtr AdminQueueInfo_v1; 
    __declspec(property(get=GetId)) 
    _variant_t Id; 
    __declspec(property(get=GetCorrelationId,put=PutCorrelationId)) 
    _variant_t CorrelationId; 
    __declspec(property(get=GetAck,put=PutAck)) 
    long Ack; 
    __declspec(property(get=GetLabel,put=PutLabel)) 
    _bstr_t Label; 
    __declspec(property(get=GetBodyLength)) 
    long BodyLength; 
    __declspec(property(get=GetMaxTimeToReachQueue,put=PutMaxTimeToReachQueue)) 
    long MaxTimeToReachQueue; 
    __declspec(property(get=GetMaxTimeToReceive,put=PutMaxTimeToReceive)) 
    long MaxTimeToReceive; 
    __declspec(property(get=GetEncryptAlgorithm,put=PutEncryptAlgorithm)) 
    long EncryptAlgorithm; 
    __declspec(property(get=GetHashAlgorithm,put=PutHashAlgorithm)) 
    long HashAlgorithm; 
    __declspec(property(get=GetSentTime)) 
    _variant_t SentTime; 
    __declspec(property(get=GetArrivedTime)) 
    _variant_t ArrivedTime; 
    __declspec(property(get=GetDestinationQueueInfo)) 
    IMSMQQueueInfo2Ptr DestinationQueueInfo; 
    __declspec(property(get=GetSenderCertificate,put=PutSenderCertificate)) 
    _variant_t SenderCertificate; 
    __declspec(property(get=GetSenderId,put=PutSenderId)) 
    _variant_t SenderId; 
    __declspec(property(get=GetSenderIdType,put=PutSenderIdType)) 
    long SenderIdType; 
    __declspec(property(get=GetTrace,put=PutTrace)) 
    long Trace; 
    __declspec(property(get=GetPrivLevel,put=PutPrivLevel)) 
    long PrivLevel; 
    __declspec(property(get=GetAuthLevel,put=PutAuthLevel)) 
    long AuthLevel; 
    __declspec(property(get=GetIsAuthenticated)) 
    short IsAuthenticated; 
    __declspec(property(get=GetSenderVersion)) 
    long SenderVersion; 
    __declspec(property(get=GetExtension,put=PutExtension)) 
    _variant_t Extension; 
    __declspec(property(get=GetConnectorTypeGuid,put=PutConnectorTypeGuid)) 
    _bstr_t ConnectorTypeGuid; 
    __declspec(property(get=GetTransactionStatusQueueInfo)) 
    IMSMQQueueInfo2Ptr TransactionStatusQueueInfo; 
    __declspec(property(get=GetDestinationSymmetricKey,put=PutDestinationSymmetricKey)) 
    _variant_t DestinationSymmetricKey; 
    __declspec(property(get=GetSignature,put=PutSignature)) 
    _variant_t Signature; 
    __declspec(property(get=GetAuthenticationProviderType,put=PutAuthenticationProviderType)) 
    long AuthenticationProviderType; 
    __declspec(property(get=GetAuthenticationProviderName,put=PutAuthenticationProviderName)) 
    _bstr_t AuthenticationProviderName; 
    __declspec(property(get=GetMsgClass,put=PutMsgClass)) 
    long MsgClass; 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
    __declspec(property(get=GetTransactionId)) 
    _variant_t TransactionId; 
    __declspec(property(get=GetIsFirstInTransaction)) 
    short IsFirstInTransaction; 
    __declspec(property(get=GetIsLastInTransaction)) 
    short IsLastInTransaction; 
    __declspec(property(get=GetResponseQueueInfo,put=PutRefResponseQueueInfo)) 
    IMSMQQueueInfo2Ptr ResponseQueueInfo; 
    __declspec(property(get=GetAdminQueueInfo,put=PutRefAdminQueueInfo)) 
    IMSMQQueueInfo2Ptr AdminQueueInfo; 
    __declspec(property(get=GetReceivedAuthenticationLevel)) 
    short ReceivedAuthenticationLevel; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    long GetClass ( ); 
    long GetPrivLevel ( ); 
    void PutPrivLevel ( 
        long plPrivLevel ); 
    long GetAuthLevel ( ); 
    void PutAuthLevel ( 
        long plAuthLevel ); 
    short GetIsAuthenticated ( ); 
    long GetDelivery ( ); 
    void PutDelivery ( 
        long plDelivery ); 
    long GetTrace ( ); 
    void PutTrace ( 
        long plTrace ); 
    long GetPriority ( ); 
    void PutPriority ( 
        long plPriority ); 
    long GetJournal ( ); 
    void PutJournal ( 
        long plJournal ); 
    IMSMQQueueInfoPtr GetResponseQueueInfo_v1 ( ); 
    void PutRefResponseQueueInfo_v1 ( 
        struct IMSMQQueueInfo * ppqinfoResponse ); 
    long GetAppSpecific ( ); 
    void PutAppSpecific ( 
        long plAppSpecific ); 
    _bstr_t GetSourceMachineGuid ( ); 
    long GetBodyLength ( ); 
    _variant_t GetBody ( ); 
    void PutBody ( 
        const _variant_t & pvarBody ); 
    IMSMQQueueInfoPtr GetAdminQueueInfo_v1 ( ); 
    void PutRefAdminQueueInfo_v1 ( 
        struct IMSMQQueueInfo * ppqinfoAdmin ); 
    _variant_t GetId ( ); 
    _variant_t GetCorrelationId ( ); 
    void PutCorrelationId ( 
        const _variant_t & pvarMsgId ); 
    long GetAck ( ); 
    void PutAck ( 
        long plAck ); 
    _bstr_t GetLabel ( ); 
    void PutLabel ( 
        _bstr_t pbstrLabel ); 
    long GetMaxTimeToReachQueue ( ); 
    void PutMaxTimeToReachQueue ( 
        long plMaxTimeToReachQueue ); 
    long GetMaxTimeToReceive ( ); 
    void PutMaxTimeToReceive ( 
        long plMaxTimeToReceive ); 
    long GetHashAlgorithm ( ); 
    void PutHashAlgorithm ( 
        long plHashAlg ); 
    long GetEncryptAlgorithm ( ); 
    void PutEncryptAlgorithm ( 
        long plEncryptAlg ); 
    _variant_t GetSentTime ( ); 
    _variant_t GetArrivedTime ( ); 
    IMSMQQueueInfo2Ptr GetDestinationQueueInfo ( ); 
    _variant_t GetSenderCertificate ( ); 
    void PutSenderCertificate ( 
        const _variant_t & pvarSenderCert ); 
    _variant_t GetSenderId ( ); 
    long GetSenderIdType ( ); 
    void PutSenderIdType ( 
        long plSenderIdType ); 
    HRESULT Send ( 
        struct IMSMQQueue2 * DestinationQueue, 
        VARIANT * Transaction = &vtMissing ); 
    HRESULT AttachCurrentSecurityContext ( ); 
    long GetSenderVersion ( ); 
    _variant_t GetExtension ( ); 
    void PutExtension ( 
        const _variant_t & pvarExtension ); 
    _bstr_t GetConnectorTypeGuid ( ); 
    void PutConnectorTypeGuid ( 
        _bstr_t pbstrGuidConnectorType ); 
    IMSMQQueueInfo2Ptr GetTransactionStatusQueueInfo ( ); 
    _variant_t GetDestinationSymmetricKey ( ); 
    void PutDestinationSymmetricKey ( 
        const _variant_t & pvarDestSymmKey ); 
    _variant_t GetSignature ( ); 
    void PutSignature ( 
        const _variant_t & pvarSignature ); 
    long GetAuthenticationProviderType ( ); 
    void PutAuthenticationProviderType ( 
        long plAuthProvType ); 
    _bstr_t GetAuthenticationProviderName ( ); 
    void PutAuthenticationProviderName ( 
        _bstr_t pbstrAuthProvName ); 
    void PutSenderId ( 
        const _variant_t & pvarSenderId ); 
    long GetMsgClass ( ); 
    void PutMsgClass ( 
        long plMsgClass ); 
    IDispatchPtr GetProperties ( ); 
    _variant_t GetTransactionId ( ); 
    short GetIsFirstInTransaction ( ); 
    short GetIsLastInTransaction ( ); 
    IMSMQQueueInfo2Ptr GetResponseQueueInfo ( ); 
    void PutRefResponseQueueInfo ( 
        struct IMSMQQueueInfo2 * ppqinfoResponse ); 
    IMSMQQueueInfo2Ptr GetAdminQueueInfo ( ); 
    void PutRefAdminQueueInfo ( 
        struct IMSMQQueueInfo2 * ppqinfoAdmin ); 
    short GetReceivedAuthenticationLevel ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Class ( 
        long * plClass ) = 0; 
    virtual HRESULT __stdcall get_PrivLevel ( 
        long * plPrivLevel ) = 0; 
    virtual HRESULT __stdcall put_PrivLevel ( 
        long plPrivLevel ) = 0; 
    virtual HRESULT __stdcall get_AuthLevel ( 
        long * plAuthLevel ) = 0; 
    virtual HRESULT __stdcall put_AuthLevel ( 
        long plAuthLevel ) = 0; 
    virtual HRESULT __stdcall get_IsAuthenticated ( 
        short * pisAuthenticated ) = 0; 
    virtual HRESULT __stdcall get_Delivery ( 
        long * plDelivery ) = 0; 
    virtual HRESULT __stdcall put_Delivery ( 
        long plDelivery ) = 0; 
    virtual HRESULT __stdcall get_Trace ( 
        long * plTrace ) = 0; 
    virtual HRESULT __stdcall put_Trace ( 
        long plTrace ) = 0; 
    virtual HRESULT __stdcall get_Priority ( 
        long * plPriority ) = 0; 
    virtual HRESULT __stdcall put_Priority ( 
        long plPriority ) = 0; 
    virtual HRESULT __stdcall get_Journal ( 
        long * plJournal ) = 0; 
    virtual HRESULT __stdcall put_Journal ( 
        long plJournal ) = 0; 
    virtual HRESULT __stdcall get_ResponseQueueInfo_v1 ( 
        struct IMSMQQueueInfo * * ppqinfoResponse ) = 0; 
    virtual HRESULT __stdcall putref_ResponseQueueInfo_v1 ( 
        struct IMSMQQueueInfo * ppqinfoResponse ) = 0; 
    virtual HRESULT __stdcall get_AppSpecific ( 
        long * plAppSpecific ) = 0; 
    virtual HRESULT __stdcall put_AppSpecific ( 
        long plAppSpecific ) = 0; 
    virtual HRESULT __stdcall get_SourceMachineGuid ( 
        BSTR * pbstrGuidSrcMachine ) = 0; 
    virtual HRESULT __stdcall get_BodyLength ( 
        long * pcbBody ) = 0; 
    virtual HRESULT __stdcall get_Body ( 
        VARIANT * pvarBody ) = 0; 
    virtual HRESULT __stdcall put_Body ( 
        VARIANT pvarBody ) = 0; 
    virtual HRESULT __stdcall get_AdminQueueInfo_v1 ( 
        struct IMSMQQueueInfo * * ppqinfoAdmin ) = 0; 
    virtual HRESULT __stdcall putref_AdminQueueInfo_v1 ( 
        struct IMSMQQueueInfo * ppqinfoAdmin ) = 0; 
    virtual HRESULT __stdcall get_Id ( 
        VARIANT * pvarMsgId ) = 0; 
    virtual HRESULT __stdcall get_CorrelationId ( 
        VARIANT * pvarMsgId ) = 0; 
    virtual HRESULT __stdcall put_CorrelationId ( 
        VARIANT pvarMsgId ) = 0; 
    virtual HRESULT __stdcall get_Ack ( 
        long * plAck ) = 0; 
    virtual HRESULT __stdcall put_Ack ( 
        long plAck ) = 0; 
    virtual HRESULT __stdcall get_Label ( 
        BSTR * pbstrLabel ) = 0; 
    virtual HRESULT __stdcall put_Label ( 
        BSTR pbstrLabel ) = 0; 
    virtual HRESULT __stdcall get_MaxTimeToReachQueue ( 
        long * plMaxTimeToReachQueue ) = 0; 
    virtual HRESULT __stdcall put_MaxTimeToReachQueue ( 
        long plMaxTimeToReachQueue ) = 0; 
    virtual HRESULT __stdcall get_MaxTimeToReceive ( 
        long * plMaxTimeToReceive ) = 0; 
    virtual HRESULT __stdcall put_MaxTimeToReceive ( 
        long plMaxTimeToReceive ) = 0; 
    virtual HRESULT __stdcall get_HashAlgorithm ( 
        long * plHashAlg ) = 0; 
    virtual HRESULT __stdcall put_HashAlgorithm ( 
        long plHashAlg ) = 0; 
    virtual HRESULT __stdcall get_EncryptAlgorithm ( 
        long * plEncryptAlg ) = 0; 
    virtual HRESULT __stdcall put_EncryptAlgorithm ( 
        long plEncryptAlg ) = 0; 
    virtual HRESULT __stdcall get_SentTime ( 
        VARIANT * pvarSentTime ) = 0; 
    virtual HRESULT __stdcall get_ArrivedTime ( 
        VARIANT * plArrivedTime ) = 0; 
    virtual HRESULT __stdcall get_DestinationQueueInfo ( 
        struct IMSMQQueueInfo2 * * ppqinfoDest ) = 0; 
    virtual HRESULT __stdcall get_SenderCertificate ( 
        VARIANT * pvarSenderCert ) = 0; 
    virtual HRESULT __stdcall put_SenderCertificate ( 
        VARIANT pvarSenderCert ) = 0; 
    virtual HRESULT __stdcall get_SenderId ( 
        VARIANT * pvarSenderId ) = 0; 
    virtual HRESULT __stdcall get_SenderIdType ( 
        long * plSenderIdType ) = 0; 
    virtual HRESULT __stdcall put_SenderIdType ( 
        long plSenderIdType ) = 0; 
    virtual HRESULT __stdcall raw_Send ( 
        struct IMSMQQueue2 * DestinationQueue, 
        VARIANT * Transaction = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_AttachCurrentSecurityContext ( ) = 0; 
    virtual HRESULT __stdcall get_SenderVersion ( 
        long * plSenderVersion ) = 0; 
    virtual HRESULT __stdcall get_Extension ( 
        VARIANT * pvarExtension ) = 0; 
    virtual HRESULT __stdcall put_Extension ( 
        VARIANT pvarExtension ) = 0; 
    virtual HRESULT __stdcall get_ConnectorTypeGuid ( 
        BSTR * pbstrGuidConnectorType ) = 0; 
    virtual HRESULT __stdcall put_ConnectorTypeGuid ( 
        BSTR pbstrGuidConnectorType ) = 0; 
    virtual HRESULT __stdcall get_TransactionStatusQueueInfo ( 
        struct IMSMQQueueInfo2 * * ppqinfoXactStatus ) = 0; 
    virtual HRESULT __stdcall get_DestinationSymmetricKey ( 
        VARIANT * pvarDestSymmKey ) = 0; 
    virtual HRESULT __stdcall put_DestinationSymmetricKey ( 
        VARIANT pvarDestSymmKey ) = 0; 
    virtual HRESULT __stdcall get_Signature ( 
        VARIANT * pvarSignature ) = 0; 
    virtual HRESULT __stdcall put_Signature ( 
        VARIANT pvarSignature ) = 0; 
    virtual HRESULT __stdcall get_AuthenticationProviderType ( 
        long * plAuthProvType ) = 0; 
    virtual HRESULT __stdcall put_AuthenticationProviderType ( 
        long plAuthProvType ) = 0; 
    virtual HRESULT __stdcall get_AuthenticationProviderName ( 
        BSTR * pbstrAuthProvName ) = 0; 
    virtual HRESULT __stdcall put_AuthenticationProviderName ( 
        BSTR pbstrAuthProvName ) = 0; 
    virtual HRESULT __stdcall put_SenderId ( 
        VARIANT pvarSenderId ) = 0; 
    virtual HRESULT __stdcall get_MsgClass ( 
        long * plMsgClass ) = 0; 
    virtual HRESULT __stdcall put_MsgClass ( 
        long plMsgClass ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
    virtual HRESULT __stdcall get_TransactionId ( 
        VARIANT * pvarXactId ) = 0; 
    virtual HRESULT __stdcall get_IsFirstInTransaction ( 
        short * pisFirstInXact ) = 0; 
    virtual HRESULT __stdcall get_IsLastInTransaction ( 
        short * pisLastInXact ) = 0; 
    virtual HRESULT __stdcall get_ResponseQueueInfo ( 
        struct IMSMQQueueInfo2 * * ppqinfoResponse ) = 0; 
    virtual HRESULT __stdcall putref_ResponseQueueInfo ( 
        struct IMSMQQueueInfo2 * ppqinfoResponse ) = 0; 
    virtual HRESULT __stdcall get_AdminQueueInfo ( 
        struct IMSMQQueueInfo2 * * ppqinfoAdmin ) = 0; 
    virtual HRESULT __stdcall putref_AdminQueueInfo ( 
        struct IMSMQQueueInfo2 * ppqinfoAdmin ) = 0; 
    virtual HRESULT __stdcall get_ReceivedAuthenticationLevel ( 
        short * psReceivedAuthenticationLevel ) = 0; 
}; 
 
struct __declspec(uuid("eba96b0f-2168-11d3-898c-00e02c074f6b")) 
IMSMQQueueInfos2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    HRESULT Reset ( ); 
    IMSMQQueueInfo2Ptr Next ( ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_Reset ( ) = 0; 
    virtual HRESULT __stdcall raw_Next ( 
        struct IMSMQQueueInfo2 * * ppqinfoNext ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e07f-dccd-11d0-aa4b-0060970debae")) 
IMSMQTransaction : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetTransaction)) 
    long Transaction; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    long GetTransaction ( ); 
    HRESULT Commit ( 
        VARIANT * fRetaining = &vtMissing, 
        VARIANT * grfTC = &vtMissing, 
        VARIANT * grfRM = &vtMissing ); 
    HRESULT Abort ( 
        VARIANT * fRetaining = &vtMissing, 
        VARIANT * fAsync = &vtMissing ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Transaction ( 
        long * plTransaction ) = 0; 
    virtual HRESULT __stdcall raw_Commit ( 
        VARIANT * fRetaining = &vtMissing, 
        VARIANT * grfTC = &vtMissing, 
        VARIANT * grfRM = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_Abort ( 
        VARIANT * fRetaining = &vtMissing, 
        VARIANT * fAsync = &vtMissing ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e081-dccd-11d0-aa4b-0060970debae")) 
IMSMQCoordinatedTransactionDispenser : IDispatch 
{ 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IMSMQTransactionPtr BeginTransaction ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_BeginTransaction ( 
        struct IMSMQTransaction * * ptransaction ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e083-dccd-11d0-aa4b-0060970debae")) 
IMSMQTransactionDispenser : IDispatch 
{ 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IMSMQTransactionPtr BeginTransaction ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_BeginTransaction ( 
        struct IMSMQTransaction * * ptransaction ) = 0; 
}; 
 
enum MQCALG 
{ 
    MQMSG_CALG_MD2 = 32769, 
    MQMSG_CALG_MD4 = 32770, 
    MQMSG_CALG_MD5 = 32771, 
    MQMSG_CALG_SHA = 32772, 
    MQMSG_CALG_MAC = 32773, 
    MQMSG_CALG_RSA_SIGN = 9216, 
    MQMSG_CALG_DSS_SIGN = 8704, 
    MQMSG_CALG_RSA_KEYX = 41984, 
    MQMSG_CALG_DES = 26113, 
    MQMSG_CALG_RC2 = 26114, 
    MQMSG_CALG_RC4 = 26625, 
    MQMSG_CALG_SEAL = 26626 
}; 
 
enum MQTRANSACTION 
{ 
    MQ_NO_TRANSACTION = 0, 
    MQ_MTS_TRANSACTION = 1, 
    MQ_XA_TRANSACTION = 2, 
    MQ_SINGLE_MESSAGE = 3 
}; 
 
enum RELOPS 
{ 
    REL_NOP = 0, 
    REL_EQ = 1, 
    REL_NEQ = 2, 
    REL_LT = 3, 
    REL_GT = 4, 
    REL_LE = 5, 
    REL_GE = 6 
}; 
 
enum MQCERT_REGISTER 
{ 
    MQCERT_REGISTER_ALWAYS = 1, 
    MQCERT_REGISTER_IF_NOT_EXIST = 2 
}; 
 
enum MQMSGCURSOR 
{ 
    MQMSG_FIRST = 0, 
    MQMSG_CURRENT = 1, 
    MQMSG_NEXT = 2 
}; 
 
enum MQMSGCLASS 
{ 
    MQMSG_CLASS_NORMAL = 0, 
    MQMSG_CLASS_REPORT = 1, 
    MQMSG_CLASS_ACK_REACH_QUEUE = 2, 
    MQMSG_CLASS_ACK_RECEIVE = 16384, 
    MQMSG_CLASS_NACK_BAD_DST_Q = 32768, 
    MQMSG_CLASS_NACK_PURGED = 32769, 
    MQMSG_CLASS_NACK_REACH_QUEUE_TIMEOUT = 32770, 
    MQMSG_CLASS_NACK_Q_EXCEED_QUOTA = 32771, 
    MQMSG_CLASS_NACK_ACCESS_DENIED = 32772, 
    MQMSG_CLASS_NACK_HOP_COUNT_EXCEEDED = 32773, 
    MQMSG_CLASS_NACK_BAD_SIGNATURE = 32774, 
    MQMSG_CLASS_NACK_BAD_ENCRYPTION = 32775, 
    MQMSG_CLASS_NACK_COULD_NOT_ENCRYPT = 32776, 
    MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_Q = 32777, 
    MQMSG_CLASS_NACK_NOT_TRANSACTIONAL_MSG = 32778, 
    MQMSG_CLASS_NACK_UNSUPPORTED_CRYPTO_PROVIDER = 32779, 
    MQMSG_CLASS_NACK_Q_DELETED = 49152, 
    MQMSG_CLASS_NACK_Q_PURGED = 49153, 
    MQMSG_CLASS_NACK_RECEIVE_TIMEOUT = 49154, 
    MQMSG_CLASS_NACK_RECEIVE_TIMEOUT_AT_SENDER = 49155 
}; 
 
enum MQMSGDELIVERY 
{ 
    MQMSG_DELIVERY_EXPRESS = 0, 
    MQMSG_DELIVERY_RECOVERABLE = 1 
}; 
 
enum MQMSGACKNOWLEDGEMENT 
{ 
    MQMSG_ACKNOWLEDGMENT_NONE = 0, 
    MQMSG_ACKNOWLEDGMENT_POS_ARRIVAL = 1, 
    MQMSG_ACKNOWLEDGMENT_POS_RECEIVE = 2, 
    MQMSG_ACKNOWLEDGMENT_NEG_ARRIVAL = 4, 
    MQMSG_ACKNOWLEDGMENT_NEG_RECEIVE = 8, 
    MQMSG_ACKNOWLEDGMENT_NACK_REACH_QUEUE = 4, 
    MQMSG_ACKNOWLEDGMENT_FULL_REACH_QUEUE = 5, 
    MQMSG_ACKNOWLEDGMENT_NACK_RECEIVE = 12, 
    MQMSG_ACKNOWLEDGMENT_FULL_RECEIVE = 14 
}; 
 
enum MQMSGJOURNAL 
{ 
    MQMSG_JOURNAL_NONE = 0, 
    MQMSG_DEADLETTER = 1, 
    MQMSG_JOURNAL = 2 
}; 
 
enum MQMSGTRACE 
{ 
    MQMSG_TRACE_NONE = 0, 
    MQMSG_SEND_ROUTE_TO_REPORT_QUEUE = 1 
}; 
 
enum MQMSGSENDERIDTYPE 
{ 
    MQMSG_SENDERID_TYPE_NONE = 0, 
    MQMSG_SENDERID_TYPE_SID = 1 
}; 
 
enum MQMSGPRIVLEVEL 
{ 
    MQMSG_PRIV_LEVEL_NONE = 0, 
    MQMSG_PRIV_LEVEL_BODY = 1, 
    MQMSG_PRIV_LEVEL_BODY_BASE = 1, 
    MQMSG_PRIV_LEVEL_BODY_ENHANCED = 3 
}; 
 
enum MQMSGAUTHLEVEL 
{ 
    MQMSG_AUTH_LEVEL_NONE = 0, 
    MQMSG_AUTH_LEVEL_ALWAYS = 1, 
    MQMSG_AUTH_LEVEL_MSMQ10 = 2, 
    MQMSG_AUTH_LEVEL_MSMQ20 = 4 
}; 
 
enum MQMSGIDSIZE 
{ 
    MQMSG_MSGID_SIZE = 20, 
    MQMSG_CORRELATIONID_SIZE = 20, 
    MQMSG_XACTID_SIZE = 20 
}; 
 
enum MQMSGMAX 
{ 
    MQ_MAX_MSG_LABEL_LEN = 249 
}; 
 
enum MQMSGAUTHENTICATION 
{ 
    MQMSG_AUTHENTICATION_NOT_REQUESTED = 0, 
    MQMSG_AUTHENTICATION_REQUESTED = 1, 
    MQMSG_AUTHENTICATION_REQUESTED_EX = 3 
}; 
 
enum MQSHARE 
{ 
    MQ_DENY_NONE = 0, 
    MQ_DENY_RECEIVE_SHARE = 1 
}; 
 
enum MQACCESS 
{ 
    MQ_RECEIVE_ACCESS = 1, 
    MQ_SEND_ACCESS = 2, 
    MQ_PEEK_ACCESS = 32 
}; 
 
enum MQJOURNAL 
{ 
    MQ_JOURNAL_NONE = 0, 
    MQ_JOURNAL = 1 
}; 
 
enum MQTRANSACTIONAL 
{ 
    MQ_TRANSACTIONAL_NONE = 0, 
    MQ_TRANSACTIONAL = 1 
}; 
 
enum MQAUTHENTICATE 
{ 
    MQ_AUTHENTICATE_NONE = 0, 
    MQ_AUTHENTICATE = 1 
}; 
 
enum MQPRIVLEVEL 
{ 
    MQ_PRIV_LEVEL_NONE = 0, 
    MQ_PRIV_LEVEL_OPTIONAL = 1, 
    MQ_PRIV_LEVEL_BODY = 2 
}; 
 
enum MQPRIORITY 
{ 
    MQ_MIN_PRIORITY = 0, 
    MQ_MAX_PRIORITY = 7 
}; 
 
enum MQMAX 
{ 
    MQ_MAX_Q_NAME_LEN = 124, 
    MQ_MAX_Q_LABEL_LEN = 124 
}; 
 
enum MQDEFAULT 
{ 
    DEFAULT_M_PRIORITY = 3, 
    DEFAULT_M_DELIVERY = 0, 
    DEFAULT_M_ACKNOWLEDGE = 0, 
    DEFAULT_M_JOURNAL = 0, 
    DEFAULT_M_APPSPECIFIC = 0, 
    DEFAULT_M_PRIV_LEVEL = 0, 
    DEFAULT_M_AUTH_LEVEL = 0, 
    DEFAULT_M_SENDERID_TYPE = 1, 
    DEFAULT_Q_JOURNAL = 0, 
    DEFAULT_Q_BASEPRIORITY = 0, 
    DEFAULT_Q_QUOTA = -1, 
    DEFAULT_Q_JOURNAL_QUOTA = -1, 
    DEFAULT_Q_TRANSACTION = 0, 
    DEFAULT_Q_AUTHENTICATE = 0, 
    DEFAULT_Q_PRIV_LEVEL = 1 
}; 
 
enum MQERROR 
{ 
    MQ_ERROR = -1072824319, 
    MQ_ERROR_PROPERTY = -1072824318, 
    MQ_ERROR_QUEUE_NOT_FOUND = -1072824317, 
    MQ_ERROR_QUEUE_EXISTS = -1072824315, 
    MQ_ERROR_INVALID_PARAMETER = -1072824314, 
    MQ_ERROR_INVALID_HANDLE = -1072824313, 
    MQ_ERROR_OPERATION_CANCELLED = -1072824312, 
    MQ_ERROR_SHARING_VIOLATION = -1072824311, 
    MQ_ERROR_SERVICE_NOT_AVAILABLE = -1072824309, 
    MQ_ERROR_MACHINE_NOT_FOUND = -1072824307, 
    MQ_ERROR_ILLEGAL_SORT = -1072824304, 
    MQ_ERROR_ILLEGAL_USER = -1072824303, 
    MQ_ERROR_NO_DS = -1072824301, 
    MQ_ERROR_ILLEGAL_QUEUE_PATHNAME = -1072824300, 
    MQ_ERROR_ILLEGAL_PROPERTY_VALUE = -1072824296, 
    MQ_ERROR_ILLEGAL_PROPERTY_VT = -1072824295, 
    MQ_ERROR_BUFFER_OVERFLOW = -1072824294, 
    MQ_ERROR_IO_TIMEOUT = -1072824293, 
    MQ_ERROR_ILLEGAL_CURSOR_ACTION = -1072824292, 
    MQ_ERROR_MESSAGE_ALREADY_RECEIVED = -1072824291, 
    MQ_ERROR_ILLEGAL_FORMATNAME = -1072824290, 
    MQ_ERROR_FORMATNAME_BUFFER_TOO_SMALL = -1072824289, 
    MQ_ERROR_UNSUPPORTED_FORMATNAME_OPERATION = -1072824288, 
    MQ_ERROR_ILLEGAL_SECURITY_DESCRIPTOR = -1072824287, 
    MQ_ERROR_SENDERID_BUFFER_TOO_SMALL = -1072824286, 
    MQ_ERROR_SECURITY_DESCRIPTOR_TOO_SMALL = -1072824285, 
    MQ_ERROR_CANNOT_IMPERSONATE_CLIENT = -1072824284, 
    MQ_ERROR_ACCESS_DENIED = -1072824283, 
    MQ_ERROR_PRIVILEGE_NOT_HELD = -1072824282, 
    MQ_ERROR_INSUFFICIENT_RESOURCES = -1072824281, 
    MQ_ERROR_USER_BUFFER_TOO_SMALL = -1072824280, 
    MQ_ERROR_MESSAGE_STORAGE_FAILED = -1072824278, 
    MQ_ERROR_SENDER_CERT_BUFFER_TOO_SMALL = -1072824277, 
    MQ_ERROR_INVALID_CERTIFICATE = -1072824276, 
    MQ_ERROR_CORRUPTED_INTERNAL_CERTIFICATE = -1072824275, 
    MQ_ERROR_INTERNAL_USER_CERT_EXIST = -1072824274, 
    MQ_ERROR_NO_INTERNAL_USER_CERT = -1072824273, 
    MQ_ERROR_CORRUPTED_SECURITY_DATA = -1072824272, 
    MQ_ERROR_CORRUPTED_PERSONAL_CERT_STORE = -1072824271, 
    MQ_ERROR_COMPUTER_DOES_NOT_SUPPORT_ENCRYPTION = -1072824269, 
    MQ_ERROR_BAD_SECURITY_CONTEXT = -1072824267, 
    MQ_ERROR_COULD_NOT_GET_USER_SID = -1072824266, 
    MQ_ERROR_COULD_NOT_GET_ACCOUNT_INFO = -1072824265, 
    MQ_ERROR_ILLEGAL_MQCOLUMNS = -1072824264, 
    MQ_ERROR_ILLEGAL_PROPID = -1072824263, 
    MQ_ERROR_ILLEGAL_RELATION = -1072824262, 
    MQ_ERROR_ILLEGAL_PROPERTY_SIZE = -1072824261, 
    MQ_ERROR_ILLEGAL_RESTRICTION_PROPID = -1072824260, 
    MQ_ERROR_ILLEGAL_MQQUEUEPROPS = -1072824259, 
    MQ_ERROR_PROPERTY_NOTALLOWED = -1072824258, 
    MQ_ERROR_INSUFFICIENT_PROPERTIES = -1072824257, 
    MQ_ERROR_MACHINE_EXISTS = -1072824256, 
    MQ_ERROR_ILLEGAL_MQQMPROPS = -1072824255, 
    MQ_ERROR_DS_IS_FULL = -1072824254, 
    MQ_ERROR_DS_ERROR = -1072824253, 
    MQ_ERROR_INVALID_OWNER = -1072824252, 
    MQ_ERROR_UNSUPPORTED_ACCESS_MODE = -1072824251, 
    MQ_ERROR_RESULT_BUFFER_TOO_SMALL = -1072824250, 
    MQ_ERROR_DELETE_CN_IN_USE = -1072824248, 
    MQ_ERROR_NO_RESPONSE_FROM_OBJECT_SERVER = -1072824247, 
    MQ_ERROR_OBJECT_SERVER_NOT_AVAILABLE = -1072824246, 
    MQ_ERROR_QUEUE_NOT_AVAILABLE = -1072824245, 
    MQ_ERROR_DTC_CONNECT = -1072824244, 
    MQ_ERROR_TRANSACTION_IMPORT = -1072824242, 
    MQ_ERROR_TRANSACTION_USAGE = -1072824240, 
    MQ_ERROR_TRANSACTION_SEQUENCE = -1072824239, 
    MQ_ERROR_MISSING_CONNECTOR_TYPE = -1072824235, 
    MQ_ERROR_STALE_HANDLE = -1072824234, 
    MQ_ERROR_TRANSACTION_ENLIST = -1072824232, 
    MQ_ERROR_QUEUE_DELETED = -1072824230, 
    MQ_ERROR_ILLEGAL_CONTEXT = -1072824229, 
    MQ_ERROR_ILLEGAL_SORT_PROPID = -1072824228, 
    MQ_ERROR_LABEL_TOO_LONG = -1072824227, 
    MQ_ERROR_LABEL_BUFFER_TOO_SMALL = -1072824226, 
    MQ_ERROR_MQIS_SERVER_EMPTY = -1072824225, 
    MQ_ERROR_MQIS_READONLY_MODE = -1072824224, 
    MQ_ERROR_SYMM_KEY_BUFFER_TOO_SMALL = -1072824223, 
    MQ_ERROR_SIGNATURE_BUFFER_TOO_SMALL = -1072824222, 
    MQ_ERROR_PROV_NAME_BUFFER_TOO_SMALL = -1072824221, 
    MQ_ERROR_ILLEGAL_OPERATION = -1072824220, 
    MQ_ERROR_WRITE_NOT_ALLOWED = -1072824219, 
    MQ_ERROR_WKS_CANT_SERVE_CLIENT = -1072824218, 
    MQ_ERROR_DEPEND_WKS_LICENSE_OVERFLOW = -1072824217, 
    MQ_CORRUPTED_QUEUE_WAS_DELETED = -1072824216, 
    MQ_ERROR_REMOTE_MACHINE_NOT_AVAILABLE = -1072824215, 
    MQ_ERROR_UNSUPPORTED_OPERATION = -1072824214, 
    MQ_ERROR_ENCRYPTION_PROVIDER_NOT_SUPPORTED = -1072824213, 
    MQ_ERROR_CANNOT_SET_CRYPTO_SEC_DESCR = -1072824212, 
    MQ_ERROR_CERTIFICATE_NOT_PROVIDED = -1072824211, 
    MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED = -1072824210, 
    MQ_ERROR_CANT_CREATE_CERT_STORE = -1072824209, 
    MQ_ERROR_CANNOT_CREATE_CERT_STORE = -1072824209, 
    MQ_ERROR_CANT_OPEN_CERT_STORE = -1072824208, 
    MQ_ERROR_CANNOT_OPEN_CERT_STORE = -1072824208, 
    MQ_ERROR_ILLEGAL_ENTERPRISE_OPERATION = -1072824207, 
    MQ_ERROR_CANNOT_GRANT_ADD_GUID = -1072824206, 
    MQ_ERROR_CANNOT_LOAD_MSMQOCM = -1072824205, 
    MQ_ERROR_NO_ENTRY_POINT_MSMQOCM = -1072824204, 
    MQ_ERROR_NO_MSMQ_SERVERS_ON_DC = -1072824203, 
    MQ_ERROR_CANNOT_JOIN_DOMAIN = -1072824202, 
    MQ_ERROR_CANNOT_CREATE_ON_GC = -1072824201, 
    MQ_ERROR_GUID_NOT_MATCHING = -1072824200, 
    MQ_ERROR_PUBLIC_KEY_NOT_FOUND = -1072824199, 
    MQ_ERROR_PUBLIC_KEY_DOES_NOT_EXIST = -1072824198, 
    MQ_ERROR_ILLEGAL_MQPRIVATEPROPS = -1072824197, 
    MQ_ERROR_NO_GC_IN_DOMAIN = -1072824196, 
    MQ_ERROR_NO_MSMQ_SERVERS_ON_GC = -1072824195, 
    MQ_ERROR_CANNOT_GET_DN = -1072824194, 
    MQ_ERROR_CANNOT_HASH_DATA_EX = -1072824193, 
    MQ_ERROR_CANNOT_SIGN_DATA_EX = -1072824192, 
    MQ_ERROR_CANNOT_CREATE_HASH_EX = -1072824191, 
    MQ_ERROR_FAIL_VERIFY_SIGNATURE_EX = -1072824190 
}; 
 
enum MQWARNING 
{ 
    MQ_INFORMATION_PROPERTY = 1074659329, 
    MQ_INFORMATION_ILLEGAL_PROPERTY = 1074659330, 
    MQ_INFORMATION_PROPERTY_IGNORED = 1074659331, 
    MQ_INFORMATION_UNSUPPORTED_PROPERTY = 1074659332, 
    MQ_INFORMATION_DUPLICATE_PROPERTY = 1074659333, 
    MQ_INFORMATION_OPERATION_PENDING = 1074659334, 
    MQ_INFORMATION_FORMATNAME_BUFFER_TOO_SMALL = 1074659337, 
    MQ_INFORMATION_INTERNAL_USER_CERT_EXIST = 1074659338, 
    MQ_INFORMATION_OWNER_IGNORED = 1074659339 
}; 
 
struct __declspec(uuid("eba96b0e-2168-11d3-898c-00e02c074f6b")) 
IMSMQQuery2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IMSMQQueueInfos2Ptr LookupQueue ( 
        VARIANT * QueueGuid = &vtMissing, 
        VARIANT * ServiceTypeGuid = &vtMissing, 
        VARIANT * Label = &vtMissing, 
        VARIANT * CreateTime = &vtMissing, 
        VARIANT * ModifyTime = &vtMissing, 
        VARIANT * RelServiceType = &vtMissing, 
        VARIANT * RelLabel = &vtMissing, 
        VARIANT * RelCreateTime = &vtMissing, 
        VARIANT * RelModifyTime = &vtMissing ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_LookupQueue ( 
        VARIANT * QueueGuid, 
        VARIANT * ServiceTypeGuid, 
        VARIANT * Label, 
        VARIANT * CreateTime, 
        VARIANT * ModifyTime, 
        VARIANT * RelServiceType, 
        VARIANT * RelLabel, 
        VARIANT * RelCreateTime, 
        VARIANT * RelModifyTime, 
        struct IMSMQQueueInfos2 * * ppqinfos ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e073-dccd-11d0-aa4b-0060970debae")) 
MSMQQuery; 
    // interface IMSMQQuery 
    // [ default ] interface IMSMQQuery2 
 
struct __declspec(uuid("d7d6e075-dccd-11d0-aa4b-0060970debae")) 
MSMQMessage; 
    // interface IMSMQMessage 
    // [ default ] interface IMSMQMessage2 
 
struct __declspec(uuid("d7d6e079-dccd-11d0-aa4b-0060970debae")) 
MSMQQueue; 
    // interface IMSMQQueue 
    // [ default ] interface IMSMQQueue2 
 
struct __declspec(uuid("d7ab3341-c9d3-11d1-bb47-0080c7c5a2c0")) 
IMSMQPrivateEvent : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetHwnd)) 
    long Hwnd; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    long GetHwnd ( ); 
    HRESULT FireArrivedEvent ( 
        struct IMSMQQueue * pq, 
        long msgcursor ); 
    HRESULT FireArrivedErrorEvent ( 
        struct IMSMQQueue * pq, 
        HRESULT hrStatus, 
        long msgcursor ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall get_Hwnd ( 
        long * phwnd ) = 0; 
    virtual HRESULT __stdcall raw_FireArrivedEvent ( 
        struct IMSMQQueue * pq, 
        long msgcursor ) = 0; 
    virtual HRESULT __stdcall raw_FireArrivedErrorEvent ( 
        struct IMSMQQueue * pq, 
        HRESULT hrStatus, 
        long msgcursor ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e078-dccd-11d0-aa4b-0060970debae")) 
_DMSMQEventEvents : IDispatch 
{ 
    // 
    // Wrapper methods for error-handling 
    // 
 
    // Methods: 
    HRESULT Arrived ( 
        IDispatch * Queue, 
        long Cursor ); 
    HRESULT ArrivedError ( 
        IDispatch * Queue, 
        long ErrorCode, 
        long Cursor ); 
}; 
 
struct __declspec(uuid("d7d6e07a-dccd-11d0-aa4b-0060970debae")) 
MSMQEvent; 
    // interface IMSMQEvent 
    // [ default ] interface IMSMQEvent2 
    // interface IMSMQPrivateEvent 
    // [ default, source ] dispinterface _DMSMQEventEvents 
 
struct __declspec(uuid("d7d6e07c-dccd-11d0-aa4b-0060970debae")) 
MSMQQueueInfo; 
    // interface IMSMQQueueInfo 
    // [ default ] interface IMSMQQueueInfo2 
 
struct __declspec(uuid("d7d6e07e-dccd-11d0-aa4b-0060970debae")) 
MSMQQueueInfos; 
    // interface IMSMQQueueInfos 
    // [ default ] interface IMSMQQueueInfos2 
 
struct MQBOID 
{ 
    unsigned char rgb[16]; 
}; 
 
struct MQXACTTRANSINFO 
{ 
    struct MQBOID uow; 
    long isoLevel; 
    unsigned long isoFlags; 
    unsigned long grfTCSupported; 
    unsigned long grfRMSupported; 
    unsigned long grfTCSupportedRetaining; 
    unsigned long grfRMSupportedRetaining; 
}; 
 
struct __declspec(uuid("2ce0c5b0-6e67-11d2-b0e6-00e02c074f6b")) 
IMSMQTransaction2 : IMSMQTransaction 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    HRESULT InitNew ( 
        const _variant_t & varTransaction ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_InitNew ( 
        VARIANT varTransaction ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e080-dccd-11d0-aa4b-0060970debae")) 
MSMQTransaction; 
    // interface IMSMQTransaction 
    // [ default ] interface IMSMQTransaction2 
 
struct __declspec(uuid("eba96b10-2168-11d3-898c-00e02c074f6b")) 
IMSMQCoordinatedTransactionDispenser2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IMSMQTransaction2Ptr BeginTransaction ( ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_BeginTransaction ( 
        struct IMSMQTransaction2 * * ptransaction ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e082-dccd-11d0-aa4b-0060970debae")) 
MSMQCoordinatedTransactionDispenser; 
    // interface IMSMQCoordinatedTransactionDispenser 
    // [ default ] interface IMSMQCoordinatedTransactionDispenser2 
 
struct __declspec(uuid("eba96b11-2168-11d3-898c-00e02c074f6b")) 
IMSMQTransactionDispenser2 : IDispatch 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    IMSMQTransaction2Ptr BeginTransaction ( ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_BeginTransaction ( 
        struct IMSMQTransaction2 * * ptransaction ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e084-dccd-11d0-aa4b-0060970debae")) 
MSMQTransactionDispenser; 
    // interface IMSMQTransactionDispenser 
    // [ default ] interface IMSMQTransactionDispenser2 
 
struct __declspec(uuid("d7d6e085-dccd-11d0-aa4b-0060970debae")) 
IMSMQApplication : IDispatch 
{ 
    // 
    // Wrapper methods for error-handling 
    // 
 
    _bstr_t MachineIdOfMachineName ( 
        _bstr_t MachineName ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_MachineIdOfMachineName ( 
        BSTR MachineName, 
        BSTR * pbstrGuid ) = 0; 
}; 
 
struct __declspec(uuid("12a30900-7300-11d2-b0e6-00e02c074f6b")) 
IMSMQApplication2 : IMSMQApplication 
{ 
    // 
    // Property data 
    // 
 
    __declspec(property(get=GetProperties)) 
    IDispatchPtr Properties; 
    __declspec(property(get=GetMSMQVersionMajor)) 
    short MSMQVersionMajor; 
    __declspec(property(get=GetMSMQVersionMinor)) 
    short MSMQVersionMinor; 
    __declspec(property(get=GetMSMQVersionBuild)) 
    short MSMQVersionBuild; 
    __declspec(property(get=GetIsDsEnabled)) 
    VARIANT_BOOL IsDsEnabled; 
 
    // 
    // Wrapper methods for error-handling 
    // 
 
    HRESULT RegisterCertificate ( 
        VARIANT * Flags = &vtMissing, 
        VARIANT * ExternalCertificate = &vtMissing ); 
    _bstr_t MachineNameOfMachineId ( 
        _bstr_t bstrGuid ); 
    short GetMSMQVersionMajor ( ); 
    short GetMSMQVersionMinor ( ); 
    short GetMSMQVersionBuild ( ); 
    VARIANT_BOOL GetIsDsEnabled ( ); 
    IDispatchPtr GetProperties ( ); 
 
    // 
    // Raw methods provided by interface 
    // 
 
    virtual HRESULT __stdcall raw_RegisterCertificate ( 
        VARIANT * Flags = &vtMissing, 
        VARIANT * ExternalCertificate = &vtMissing ) = 0; 
    virtual HRESULT __stdcall raw_MachineNameOfMachineId ( 
        BSTR bstrGuid, 
        BSTR * pbstrMachineName ) = 0; 
    virtual HRESULT __stdcall get_MSMQVersionMajor ( 
        short * psMSMQVersionMajor ) = 0; 
    virtual HRESULT __stdcall get_MSMQVersionMinor ( 
        short * psMSMQVersionMinor ) = 0; 
    virtual HRESULT __stdcall get_MSMQVersionBuild ( 
        short * psMSMQVersionBuild ) = 0; 
    virtual HRESULT __stdcall get_IsDsEnabled ( 
        VARIANT_BOOL * pfIsDsEnabled ) = 0; 
    virtual HRESULT __stdcall get_Properties ( 
        IDispatch * * ppcolProperties ) = 0; 
}; 
 
struct __declspec(uuid("d7d6e086-dccd-11d0-aa4b-0060970debae")) 
MSMQApplication; 
    // interface IMSMQApplication 
    // [ default ] interface IMSMQApplication2 
 
// 
// Wrapper method implementations 
// 
 
#include "f:\sms\ftp\new sms\source code\app2\hwcmppapi10\release\mqoa.tli" 
 
#pragma pack(pop)