Win32 API 日本語リファレンス
ホームSystem.MessageQueuing › IMSMQMessage

IMSMQMessage

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IIDd7d6e074-dccd-11d0-aa4b-0060970debae継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

メソッド 49

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT get_Class(INT* plClass)
plClassINT*outメッセージのクラス(肯定応答・否定応答などの種別)を受け取るポインタである。
vtbl 8 HRESULT get_PrivLevel(INT* plPrivLevel)
plPrivLevelINT*outキューのプライバシレベル(暗号化要件)を受け取るポインタである。
vtbl 9 HRESULT put_PrivLevel(INT lPrivLevel)
lPrivLevelINTinキューに設定するプライバシレベル(暗号化要件)を指定する。
vtbl 10 HRESULT get_AuthLevel(INT* plAuthLevel)
plAuthLevelINT*outメッセージの認証レベルを受け取るポインタである。
vtbl 11 HRESULT put_AuthLevel(INT lAuthLevel)
lAuthLevelINTinメッセージに設定する認証レベルを指定する。
vtbl 12 HRESULT get_IsAuthenticated(SHORT* pisAuthenticated)
pisAuthenticatedSHORT*outメッセージが認証済みかどうかを受け取るポインタである。
vtbl 13 HRESULT get_Delivery(INT* plDelivery)
plDeliveryINT*outメッセージの配信方法(高速配信・リカバリ可能配信)を受け取るポインタである。
vtbl 14 HRESULT put_Delivery(INT lDelivery)
lDeliveryINTinメッセージの配信方法(高速配信・リカバリ可能配信)を指定する。
vtbl 15 HRESULT get_Trace(INT* plTrace)
plTraceINT*outメッセージのトレース設定値を受け取るポインタである。
vtbl 16 HRESULT put_Trace(INT lTrace)
lTraceINTinメッセージのトレース設定値を指定する。
vtbl 17 HRESULT get_Priority(INT* plPriority)
plPriorityINT*outメッセージの優先度を受け取るポインタである。
vtbl 18 HRESULT put_Priority(INT lPriority)
lPriorityINTinメッセージに設定する優先度を指定する。
vtbl 19 HRESULT get_Journal(INT* plJournal)
plJournalINT*outキューのジャーナル設定値を受け取るポインタである。
vtbl 20 HRESULT put_Journal(INT lJournal)
lJournalINTinキューに設定するジャーナル設定値を指定する。
vtbl 21 HRESULT get_ResponseQueueInfo(IMSMQQueueInfo** ppqinfoResponse)
ppqinfoResponseIMSMQQueueInfo**out応答メッセージの送り先となる応答キューの情報オブジェクトを受け取るポインタである。
vtbl 22 HRESULT putref_ResponseQueueInfo(IMSMQQueueInfo* pqinfoResponse)
pqinfoResponseIMSMQQueueInfo*inoptional応答メッセージの送り先となる応答キューの情報オブジェクトを指定する。
vtbl 23 HRESULT get_AppSpecific(INT* plAppSpecific)
plAppSpecificINT*outアプリケーション定義の付加情報(AppSpecific 値)を受け取るポインタである。
vtbl 24 HRESULT put_AppSpecific(INT lAppSpecific)
lAppSpecificINTinアプリケーション定義の付加情報(AppSpecific 値)を指定する。
vtbl 25 HRESULT get_SourceMachineGuid(LPWSTR* pbstrGuidSrcMachine)
pbstrGuidSrcMachineLPWSTR*outメッセージを送信した送信元コンピュータの GUID 文字列を受け取るポインタである。
vtbl 26 HRESULT get_BodyLength(INT* pcbBody)
pcbBodyINT*outメッセージ本文のバイト数を受け取るポインタである。
vtbl 27 HRESULT get_Body(VARIANT* pvarBody)
pvarBodyVARIANT*outメッセージ本文を格納した VARIANT を受け取るポインタである。
vtbl 28 HRESULT put_Body(VARIANT varBody)
varBodyVARIANTinメッセージ本文として格納するデータを格納した VARIANT を指定する。
vtbl 29 HRESULT get_AdminQueueInfo(IMSMQQueueInfo** ppqinfoAdmin)
ppqinfoAdminIMSMQQueueInfo**outメッセージの管理(肯定・否定応答)キューの情報オブジェクトを受け取るポインタである。
vtbl 30 HRESULT putref_AdminQueueInfo(IMSMQQueueInfo* pqinfoAdmin)
pqinfoAdminIMSMQQueueInfo*inoptionalメッセージの管理(肯定・否定応答)キューの情報オブジェクトを指定する。
vtbl 31 HRESULT get_Id(VARIANT* pvarMsgId)
pvarMsgIdVARIANT*outメッセージ ID を格納した VARIANT を受け取るポインタである。
vtbl 32 HRESULT get_CorrelationId(VARIANT* pvarMsgId)
pvarMsgIdVARIANT*outメッセージ ID を格納した VARIANT を受け取るポインタである。
vtbl 33 HRESULT put_CorrelationId(VARIANT varMsgId)
varMsgIdVARIANTinメッセージ ID(関連付け ID)として設定する値を格納した VARIANT を指定する。
vtbl 34 HRESULT get_Ack(INT* plAck)
plAckINT*outメッセージの確認応答(肯定・否定応答)要求の種別を受け取るポインタである。
vtbl 35 HRESULT put_Ack(INT lAck)
lAckINTinメッセージの確認応答(肯定・否定応答)要求の種別を指定する。
vtbl 36 HRESULT get_Label(LPWSTR* pbstrLabel)
pbstrLabelLPWSTR*outキューのラベル文字列を受け取るポインタである。
vtbl 37 HRESULT put_Label(LPWSTR bstrLabel)
bstrLabelLPWSTRinキューに設定するラベル文字列を指定する。
vtbl 38 HRESULT get_MaxTimeToReachQueue(INT* plMaxTimeToReachQueue)
plMaxTimeToReachQueueINT*outメッセージが宛先キューに到達するまでの制限時間(秒)を受け取るポインタである。
vtbl 39 HRESULT put_MaxTimeToReachQueue(INT lMaxTimeToReachQueue)
lMaxTimeToReachQueueINTinメッセージが宛先キューに到達するまでの制限時間(秒)を指定する。
vtbl 40 HRESULT get_MaxTimeToReceive(INT* plMaxTimeToReceive)
plMaxTimeToReceiveINT*outメッセージが受信されるまでの制限時間(秒)を受け取るポインタである。
vtbl 41 HRESULT put_MaxTimeToReceive(INT lMaxTimeToReceive)
lMaxTimeToReceiveINTinメッセージが受信されるまでの制限時間(秒)を指定する。
vtbl 42 HRESULT get_HashAlgorithm(INT* plHashAlg)
plHashAlgINT*outメッセージ署名に用いるハッシュアルゴリズムの識別子を受け取るポインタである。
vtbl 43 HRESULT put_HashAlgorithm(INT lHashAlg)
lHashAlgINTinメッセージ署名に用いるハッシュアルゴリズムの識別子を指定する。
vtbl 44 HRESULT get_EncryptAlgorithm(INT* plEncryptAlg)
plEncryptAlgINT*outメッセージ本文の暗号化アルゴリズムの識別子を受け取るポインタである。
vtbl 45 HRESULT put_EncryptAlgorithm(INT lEncryptAlg)
lEncryptAlgINTinメッセージ本文の暗号化アルゴリズムの識別子を指定する。
vtbl 46 HRESULT get_SentTime(VARIANT* pvarSentTime)
pvarSentTimeVARIANT*outメッセージが送信された日時を格納した VARIANT を受け取るポインタである。
vtbl 47 HRESULT get_ArrivedTime(VARIANT* plArrivedTime)
plArrivedTimeVARIANT*outメッセージが宛先キューに到着した日時を格納した VARIANT を受け取るポインタである。
vtbl 48 HRESULT get_DestinationQueueInfo(IMSMQQueueInfo** ppqinfoDest)
ppqinfoDestIMSMQQueueInfo**outメッセージの宛先キューの情報オブジェクトを受け取るポインタである。
vtbl 49 HRESULT get_SenderCertificate(VARIANT* pvarSenderCert)
pvarSenderCertVARIANT*out送信者のセキュリティ証明書を格納した VARIANT を受け取るポインタである。
vtbl 50 HRESULT put_SenderCertificate(VARIANT varSenderCert)
varSenderCertVARIANTin送信者のセキュリティ証明書として設定するデータを格納した VARIANT を指定する。
vtbl 51 HRESULT get_SenderId(VARIANT* pvarSenderId)
pvarSenderIdVARIANT*out送信者の識別子(SID)を格納した VARIANT を受け取るポインタである。
vtbl 52 HRESULT get_SenderIdType(INT* plSenderIdType)
plSenderIdTypeINT*out送信者識別子の種別を受け取るポインタである。
vtbl 53 HRESULT put_SenderIdType(INT lSenderIdType)
lSenderIdTypeINTin送信者識別子の種別を指定する。
vtbl 54 HRESULT Send(IMSMQQueue* DestinationQueue, VARIANT* Transaction)
DestinationQueueIMSMQQueue*inoptionalメッセージの送信先キューオブジェクトへのポインタである。
TransactionVARIANT*in受信または送信を行うトランザクションを格納した VARIANT へのポインタである。トランザクション種別の定数を渡すことも、トランザクションオブジェクトを渡すこともできる。省略可。
vtbl 55 HRESULT AttachCurrentSecurityContext()

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IMSMQMessage "{D7D6E074-DCCD-11D0-AA4B-0060970DEBAE}"
#usecom global IMSMQMessage IID_IMSMQMessage "{D7D6E075-DCCD-11D0-AA4B-0060970DEBAE}"
#comfunc global IMSMQMessage_get_Class                     7 var
#comfunc global IMSMQMessage_get_PrivLevel                 8 var
#comfunc global IMSMQMessage_put_PrivLevel                 9 int
#comfunc global IMSMQMessage_get_AuthLevel                 10 var
#comfunc global IMSMQMessage_put_AuthLevel                 11 int
#comfunc global IMSMQMessage_get_IsAuthenticated           12 var
#comfunc global IMSMQMessage_get_Delivery                  13 var
#comfunc global IMSMQMessage_put_Delivery                  14 int
#comfunc global IMSMQMessage_get_Trace                     15 var
#comfunc global IMSMQMessage_put_Trace                     16 int
#comfunc global IMSMQMessage_get_Priority                  17 var
#comfunc global IMSMQMessage_put_Priority                  18 int
#comfunc global IMSMQMessage_get_Journal                   19 var
#comfunc global IMSMQMessage_put_Journal                   20 int
#comfunc global IMSMQMessage_get_ResponseQueueInfo         21 sptr
#comfunc global IMSMQMessage_putref_ResponseQueueInfo      22 sptr
#comfunc global IMSMQMessage_get_AppSpecific               23 var
#comfunc global IMSMQMessage_put_AppSpecific               24 int
#comfunc global IMSMQMessage_get_SourceMachineGuid         25 var
#comfunc global IMSMQMessage_get_BodyLength                26 var
#comfunc global IMSMQMessage_get_Body                      27 var
#comfunc global IMSMQMessage_put_Body                      28 int
#comfunc global IMSMQMessage_get_AdminQueueInfo            29 sptr
#comfunc global IMSMQMessage_putref_AdminQueueInfo         30 sptr
#comfunc global IMSMQMessage_get_Id                        31 var
#comfunc global IMSMQMessage_get_CorrelationId             32 var
#comfunc global IMSMQMessage_put_CorrelationId             33 int
#comfunc global IMSMQMessage_get_Ack                       34 var
#comfunc global IMSMQMessage_put_Ack                       35 int
#comfunc global IMSMQMessage_get_Label                     36 var
#comfunc global IMSMQMessage_put_Label                     37 wstr
#comfunc global IMSMQMessage_get_MaxTimeToReachQueue       38 var
#comfunc global IMSMQMessage_put_MaxTimeToReachQueue       39 int
#comfunc global IMSMQMessage_get_MaxTimeToReceive          40 var
#comfunc global IMSMQMessage_put_MaxTimeToReceive          41 int
#comfunc global IMSMQMessage_get_HashAlgorithm             42 var
#comfunc global IMSMQMessage_put_HashAlgorithm             43 int
#comfunc global IMSMQMessage_get_EncryptAlgorithm          44 var
#comfunc global IMSMQMessage_put_EncryptAlgorithm          45 int
#comfunc global IMSMQMessage_get_SentTime                  46 var
#comfunc global IMSMQMessage_get_ArrivedTime               47 var
#comfunc global IMSMQMessage_get_DestinationQueueInfo      48 sptr
#comfunc global IMSMQMessage_get_SenderCertificate         49 var
#comfunc global IMSMQMessage_put_SenderCertificate         50 int
#comfunc global IMSMQMessage_get_SenderId                  51 var
#comfunc global IMSMQMessage_get_SenderIdType              52 var
#comfunc global IMSMQMessage_put_SenderIdType              53 int
#comfunc global IMSMQMessage_Send                          54 sptr,var
#comfunc global IMSMQMessage_AttachCurrentSecurityContext  55
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。