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

IRTCPresenceDevice

COM
IIDbc6a90dd-ad9a-48da-9b0c-2515e38521ad継承元IUnknown自前メソッド開始 vtbl3

メソッド 4

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT get_Status(RTC_PRESENCE_STATUS* penStatus)
penStatusRTC_PRESENCE_STATUS*outこのプレゼンスデバイスの状態 (RTC_PRESENCE_STATUS) を受け取る。
vtbl 4 HRESULT get_Notes(LPWSTR* pbstrNotes)
pbstrNotesLPWSTR*outプレゼンスに付随するメモ文字列を受け取る。呼び出し側が解放する。
vtbl 5 HRESULT get_PresenceProperty(RTC_PRESENCE_PROPERTY enProperty, LPWSTR* pbstrProperty)
enPropertyRTC_PRESENCE_PROPERTYin取得するプレゼンスプロパティの種類 (RTC_PRESENCE_PROPERTY) を指定する。
pbstrPropertyLPWSTR*out指定したプレゼンスプロパティの値を表す文字列を受け取る。呼び出し側が解放する。
vtbl 6 HRESULT GetPresenceData(LPWSTR* pbstrNamespace, LPWSTR* pbstrData)
pbstrNamespaceLPWSTR*outプレゼンスデータの名前空間を表す文字列を受け取る。呼び出し側が解放する。
pbstrDataLPWSTR*outプレゼンスデータ本体を表す文字列を受け取る。呼び出し側が解放する。

HSP用 COM定義

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

出力引数:
#define global IID_IRTCPresenceDevice "{BC6A90DD-AD9A-48DA-9B0C-2515E38521AD}"
#usecom global IRTCPresenceDevice IID_IRTCPresenceDevice "{}"
#comfunc global IRTCPresenceDevice_get_Status            3 var
#comfunc global IRTCPresenceDevice_get_Notes             4 var
#comfunc global IRTCPresenceDevice_get_PresenceProperty  5 int,var
#comfunc global IRTCPresenceDevice_GetPresenceData       6 var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。