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

IMSMQQueueInfo4

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

メソッド 39

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

vtbl 7 HRESULT get_QueueGuid(LPWSTR* pbstrGuidQueue)
pbstrGuidQueueLPWSTR*outキューを一意に識別する GUID 文字列を受け取るポインタである。
vtbl 8 HRESULT get_ServiceTypeGuid(LPWSTR* pbstrGuidServiceType)
pbstrGuidServiceTypeLPWSTR*outキューのサービス種別 GUID 文字列を受け取るポインタである。
vtbl 9 HRESULT put_ServiceTypeGuid(LPWSTR bstrGuidServiceType)
bstrGuidServiceTypeLPWSTRinキューに設定するサービス種別 GUID 文字列を指定する。
vtbl 10 HRESULT get_Label(LPWSTR* pbstrLabel)
pbstrLabelLPWSTR*outキューのラベル文字列を受け取るポインタである。
vtbl 11 HRESULT put_Label(LPWSTR bstrLabel)
bstrLabelLPWSTRinキューに設定するラベル文字列を指定する。
vtbl 12 HRESULT get_PathName(LPWSTR* pbstrPathName)
pbstrPathNameLPWSTR*outキューのパス名(machine\queue 形式)を受け取るポインタである。
vtbl 13 HRESULT put_PathName(LPWSTR bstrPathName)
bstrPathNameLPWSTRinキューのパス名(machine\queue 形式)を指定する。
vtbl 14 HRESULT get_FormatName(LPWSTR* pbstrFormatName)
pbstrFormatNameLPWSTR*outキューのフォーマット名を受け取るポインタである。
vtbl 15 HRESULT put_FormatName(LPWSTR bstrFormatName)
bstrFormatNameLPWSTRinキューに設定するフォーマット名を指定する。
vtbl 16 HRESULT get_IsTransactional(SHORT* pisTransactional)
pisTransactionalSHORT*outキューがトランザクション対応かどうかを受け取るポインタである。
vtbl 17 HRESULT get_PrivLevel(INT* plPrivLevel)
plPrivLevelINT*outキューのプライバシレベル(暗号化要件)を受け取るポインタである。
vtbl 18 HRESULT put_PrivLevel(INT lPrivLevel)
lPrivLevelINTinキューに設定するプライバシレベル(暗号化要件)を指定する。
vtbl 19 HRESULT get_Journal(INT* plJournal)
plJournalINT*outキューのジャーナル設定値を受け取るポインタである。
vtbl 20 HRESULT put_Journal(INT lJournal)
lJournalINTinキューに設定するジャーナル設定値を指定する。
vtbl 21 HRESULT get_Quota(INT* plQuota)
plQuotaINT*outキューの最大サイズ(クォータ、KB 単位)を受け取るポインタである。
vtbl 22 HRESULT put_Quota(INT lQuota)
lQuotaINTinキューに設定する最大サイズ(クォータ、KB 単位)を指定する。
vtbl 23 HRESULT get_BasePriority(INT* plBasePriority)
plBasePriorityINT*outパブリックキューの基本優先度を受け取るポインタである。
vtbl 24 HRESULT put_BasePriority(INT lBasePriority)
lBasePriorityINTinパブリックキューに設定する基本優先度を指定する。
vtbl 25 HRESULT get_CreateTime(VARIANT* pvarCreateTime)
pvarCreateTimeVARIANT*outキューの作成日時を格納した VARIANT を受け取るポインタである。
vtbl 26 HRESULT get_ModifyTime(VARIANT* pvarModifyTime)
pvarModifyTimeVARIANT*outキューの最終更新日時を格納した VARIANT を受け取るポインタである。
vtbl 27 HRESULT get_Authenticate(INT* plAuthenticate)
plAuthenticateINT*outキューが認証付きメッセージのみを受け付けるかどうかの設定値を受け取るポインタである。
vtbl 28 HRESULT put_Authenticate(INT lAuthenticate)
lAuthenticateINTinキューが認証付きメッセージのみを受け付けるかどうかの設定値を指定する。
vtbl 29 HRESULT get_JournalQuota(INT* plJournalQuota)
plJournalQuotaINT*outキューのジャーナル用最大サイズ(KB 単位)を受け取るポインタである。
vtbl 30 HRESULT put_JournalQuota(INT lJournalQuota)
lJournalQuotaINTinキューのジャーナル用最大サイズ(KB 単位)を指定する。
vtbl 31 HRESULT get_IsWorldReadable(SHORT* pisWorldReadable)
pisWorldReadableSHORT*outキューが全ユーザーから読み取り可能かどうかを受け取るポインタである。
vtbl 32 HRESULT Create(VARIANT* IsTransactional, VARIANT* IsWorldReadable)
IsTransactionalVARIANT*in作成するキューをトランザクション対応にするかどうかを格納した VARIANT へのポインタである。省略可。
IsWorldReadableVARIANT*in作成するキューを全ユーザーから読み取り可能にするかどうかを格納した VARIANT へのポインタである。省略可。
vtbl 33 HRESULT Delete()
vtbl 34 HRESULT Open(INT Access, INT ShareMode, IMSMQQueue4** ppq)
AccessINTinキューへのアクセスモード(受信・送受信・ピーク等)を指定する。
ShareModeINTinキューの共有モード(排他受信を行うかどうか)を指定する。
ppqIMSMQQueue4**out開いたキューオブジェクト(IMSMQQueue4)を受け取るポインタである。
vtbl 35 HRESULT Refresh()
vtbl 36 HRESULT Update()
vtbl 37 HRESULT get_PathNameDNS(LPWSTR* pbstrPathNameDNS)
pbstrPathNameDNSLPWSTR*outキューの DNS パス名を受け取るポインタである。
vtbl 38 HRESULT get_Properties(IDispatch** ppcolProperties)
ppcolPropertiesIDispatch**outオブジェクトのプロパティコレクション(IDispatch)を受け取るポインタである。将来の拡張用に予約されている。
vtbl 39 HRESULT get_Security(VARIANT* pvarSecurity)
pvarSecurityVARIANT*outキューのセキュリティ記述子を格納した VARIANT を受け取るポインタである。
vtbl 40 HRESULT put_Security(VARIANT varSecurity)
varSecurityVARIANTinキューに設定するセキュリティ記述子を格納した VARIANT を指定する。
vtbl 41 HRESULT get_IsTransactional2(VARIANT_BOOL* pisTransactional)
pisTransactionalVARIANT_BOOL*outキューがトランザクション対応かどうかを VARIANT_BOOL 値で受け取るポインタである。
vtbl 42 HRESULT get_IsWorldReadable2(VARIANT_BOOL* pisWorldReadable)
pisWorldReadableVARIANT_BOOL*outキューが全ユーザーから読み取り可能かどうかを VARIANT_BOOL 値で受け取るポインタである。
vtbl 43 HRESULT get_MulticastAddress(LPWSTR* pbstrMulticastAddress)
pbstrMulticastAddressLPWSTR*outキューに関連付けられたマルチキャストアドレスを受け取るポインタである。
vtbl 44 HRESULT put_MulticastAddress(LPWSTR bstrMulticastAddress)
bstrMulticastAddressLPWSTRinキューに設定するマルチキャストアドレスを指定する。
vtbl 45 HRESULT get_ADsPath(LPWSTR* pbstrADsPath)
pbstrADsPathLPWSTR*out宛先に対応する Active Directory オブジェクトの ADsPath を受け取るポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IMSMQQueueInfo4 "{EBA96B21-2168-11D3-898C-00E02C074F6B}"
#usecom global IMSMQQueueInfo4 IID_IMSMQQueueInfo4 "{D7D6E07C-DCCD-11D0-AA4B-0060970DEBAE}"
#comfunc global IMSMQQueueInfo4_get_QueueGuid         7 var
#comfunc global IMSMQQueueInfo4_get_ServiceTypeGuid   8 var
#comfunc global IMSMQQueueInfo4_put_ServiceTypeGuid   9 wstr
#comfunc global IMSMQQueueInfo4_get_Label             10 var
#comfunc global IMSMQQueueInfo4_put_Label             11 wstr
#comfunc global IMSMQQueueInfo4_get_PathName          12 var
#comfunc global IMSMQQueueInfo4_put_PathName          13 wstr
#comfunc global IMSMQQueueInfo4_get_FormatName        14 var
#comfunc global IMSMQQueueInfo4_put_FormatName        15 wstr
#comfunc global IMSMQQueueInfo4_get_IsTransactional   16 var
#comfunc global IMSMQQueueInfo4_get_PrivLevel         17 var
#comfunc global IMSMQQueueInfo4_put_PrivLevel         18 int
#comfunc global IMSMQQueueInfo4_get_Journal           19 var
#comfunc global IMSMQQueueInfo4_put_Journal           20 int
#comfunc global IMSMQQueueInfo4_get_Quota             21 var
#comfunc global IMSMQQueueInfo4_put_Quota             22 int
#comfunc global IMSMQQueueInfo4_get_BasePriority      23 var
#comfunc global IMSMQQueueInfo4_put_BasePriority      24 int
#comfunc global IMSMQQueueInfo4_get_CreateTime        25 var
#comfunc global IMSMQQueueInfo4_get_ModifyTime        26 var
#comfunc global IMSMQQueueInfo4_get_Authenticate      27 var
#comfunc global IMSMQQueueInfo4_put_Authenticate      28 int
#comfunc global IMSMQQueueInfo4_get_JournalQuota      29 var
#comfunc global IMSMQQueueInfo4_put_JournalQuota      30 int
#comfunc global IMSMQQueueInfo4_get_IsWorldReadable   31 var
#comfunc global IMSMQQueueInfo4_Create                32 var,var
#comfunc global IMSMQQueueInfo4_Delete                33
#comfunc global IMSMQQueueInfo4_Open                  34 int,int,sptr
#comfunc global IMSMQQueueInfo4_Refresh               35
#comfunc global IMSMQQueueInfo4_Update                36
#comfunc global IMSMQQueueInfo4_get_PathNameDNS       37 var
#comfunc global IMSMQQueueInfo4_get_Properties        38 sptr
#comfunc global IMSMQQueueInfo4_get_Security          39 var
#comfunc global IMSMQQueueInfo4_put_Security          40 int
#comfunc global IMSMQQueueInfo4_get_IsTransactional2  41 var
#comfunc global IMSMQQueueInfo4_get_IsWorldReadable2  42 var
#comfunc global IMSMQQueueInfo4_get_MulticastAddress  43 var
#comfunc global IMSMQQueueInfo4_put_MulticastAddress  44 wstr
#comfunc global IMSMQQueueInfo4_get_ADsPath           45 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。