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

IMSMQQueueInfo2

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

メソッド 34

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, IMSMQQueue2** ppq)
AccessINTinキューへのアクセスモード(受信・送受信・ピーク等)を指定する。
ShareModeINTinキューの共有モード(排他受信を行うかどうか)を指定する。
ppqIMSMQQueue2**out開いたキューオブジェクト(IMSMQQueue2)を受け取るポインタである。
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 を指定する。

HSP用 COM定義

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

出力引数:
#define global IID_IMSMQQueueInfo2 "{FD174A80-89CF-11D2-B0F2-00E02C074F6B}"
#usecom global IMSMQQueueInfo2 IID_IMSMQQueueInfo2 "{D7D6E07C-DCCD-11D0-AA4B-0060970DEBAE}"
#comfunc global IMSMQQueueInfo2_get_QueueGuid        7 var
#comfunc global IMSMQQueueInfo2_get_ServiceTypeGuid  8 var
#comfunc global IMSMQQueueInfo2_put_ServiceTypeGuid  9 wstr
#comfunc global IMSMQQueueInfo2_get_Label            10 var
#comfunc global IMSMQQueueInfo2_put_Label            11 wstr
#comfunc global IMSMQQueueInfo2_get_PathName         12 var
#comfunc global IMSMQQueueInfo2_put_PathName         13 wstr
#comfunc global IMSMQQueueInfo2_get_FormatName       14 var
#comfunc global IMSMQQueueInfo2_put_FormatName       15 wstr
#comfunc global IMSMQQueueInfo2_get_IsTransactional  16 var
#comfunc global IMSMQQueueInfo2_get_PrivLevel        17 var
#comfunc global IMSMQQueueInfo2_put_PrivLevel        18 int
#comfunc global IMSMQQueueInfo2_get_Journal          19 var
#comfunc global IMSMQQueueInfo2_put_Journal          20 int
#comfunc global IMSMQQueueInfo2_get_Quota            21 var
#comfunc global IMSMQQueueInfo2_put_Quota            22 int
#comfunc global IMSMQQueueInfo2_get_BasePriority     23 var
#comfunc global IMSMQQueueInfo2_put_BasePriority     24 int
#comfunc global IMSMQQueueInfo2_get_CreateTime       25 var
#comfunc global IMSMQQueueInfo2_get_ModifyTime       26 var
#comfunc global IMSMQQueueInfo2_get_Authenticate     27 var
#comfunc global IMSMQQueueInfo2_put_Authenticate     28 int
#comfunc global IMSMQQueueInfo2_get_JournalQuota     29 var
#comfunc global IMSMQQueueInfo2_put_JournalQuota     30 int
#comfunc global IMSMQQueueInfo2_get_IsWorldReadable  31 var
#comfunc global IMSMQQueueInfo2_Create               32 var,var
#comfunc global IMSMQQueueInfo2_Delete               33
#comfunc global IMSMQQueueInfo2_Open                 34 int,int,sptr
#comfunc global IMSMQQueueInfo2_Refresh              35
#comfunc global IMSMQQueueInfo2_Update               36
#comfunc global IMSMQQueueInfo2_get_PathNameDNS      37 var
#comfunc global IMSMQQueueInfo2_get_Properties       38 sptr
#comfunc global IMSMQQueueInfo2_get_Security         39 var
#comfunc global IMSMQQueueInfo2_put_Security         40 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。