ホーム › System.RemoteDesktop › IWRdsGraphicsChannelEvents
IWRdsGraphicsChannelEvents
COMメソッド 5
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| cbSize | DWORD | in | 受信したデータのバイト数を指定する。 |
| pBuffer | BYTE* | in | 受信したデータが格納されたバッファへのポインタである。 |
vtbl 4 HRESULT OnClose()
| OpenResult | HRESULT | in | チャネルのオープン処理の結果を示す HRESULT である。成功時は S_OK となる。 |
| pOpenContext | IUnknown* | in | オープン要求時に渡された呼び出し側のコンテキストオブジェクトへのポインタである。 |
| pWriteContext | IUnknown* | in | 対応する書き込み要求時に渡されたコンテキストオブジェクトへのポインタである。 |
| bCancelled | BOOL | in | 送信がキャンセルされた場合は TRUE、正常に送信された場合は FALSE を指定する。 |
| pBuffer | BYTE* | in | 送信されたデータが格納されていたバッファへのポインタである。 |
| cbBuffer | DWORD | in | 送信されたデータのバイト数を指定する。 |
| bandwidth | DWORD | in | 現在の利用可能な帯域幅を指定する。 |
| RTT | DWORD | in | ラウンドトリップ時間 (RTT) をミリ秒単位で指定する。 |
| lastSentByteIndex | ULONGLONG | in | 最後に送信されたバイトのインデックスを指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IWRdsGraphicsChannelEvents "{67F2368C-D674-4FAE-66A5-D20628A640D2}" #usecom global IWRdsGraphicsChannelEvents IID_IWRdsGraphicsChannelEvents "{}" #comfunc global IWRdsGraphicsChannelEvents_OnDataReceived 3 int,var #comfunc global IWRdsGraphicsChannelEvents_OnClose 4 #comfunc global IWRdsGraphicsChannelEvents_OnChannelOpened 5 int,sptr #comfunc global IWRdsGraphicsChannelEvents_OnDataSent 6 sptr,int,var,int #comfunc global IWRdsGraphicsChannelEvents_OnMetricsUpdate 7 int,int,int64 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IWRdsGraphicsChannelEvents "{67F2368C-D674-4FAE-66A5-D20628A640D2}" #usecom global IWRdsGraphicsChannelEvents IID_IWRdsGraphicsChannelEvents "{}" #comfunc global IWRdsGraphicsChannelEvents_OnDataReceived 3 int,sptr #comfunc global IWRdsGraphicsChannelEvents_OnClose 4 #comfunc global IWRdsGraphicsChannelEvents_OnChannelOpened 5 int,sptr #comfunc global IWRdsGraphicsChannelEvents_OnDataSent 6 sptr,int,sptr,int #comfunc global IWRdsGraphicsChannelEvents_OnMetricsUpdate 7 int,int,int64 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。