Win32 API 日本語リファレンス
ホームNetworkManagement.MobileBroadband › IMbnDeviceServicesEvents

IMbnDeviceServicesEvents

COM
IID0a900c19-6824-4e97-b76e-cf239d0ca642継承元IUnknown自前メソッド開始 vtbl3

メソッド 11

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

vtbl 3 HRESULT OnQuerySupportedCommandsComplete(IMbnDeviceService* deviceService, SAFEARRAY* commandIDList, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inサポートコマンド照会が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
commandIDListSAFEARRAY*inサポートされるコマンドIDの一覧をSAFEARRAYで格納した入力。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinQuerySupportedCommands呼び出し時に返された要求IDと照合する識別子。
vtbl 4 HRESULT OnOpenCommandSessionComplete(IMbnDeviceService* deviceService, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inコマンドセッション開始が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinOpenCommandSession呼び出し時に返された要求IDと照合する識別子。
vtbl 5 HRESULT OnCloseCommandSessionComplete(IMbnDeviceService* deviceService, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inコマンドセッション終了が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinCloseCommandSession呼び出し時に返された要求IDと照合する識別子。
vtbl 6 HRESULT OnSetCommandComplete(IMbnDeviceService* deviceService, DWORD responseID, SAFEARRAY* deviceServiceData, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inSetコマンド送信が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
responseIDDWORDin応答を識別するレスポンスID(通常はコマンドIDに対応)。
deviceServiceDataSAFEARRAY*inコマンド応答として返されたデータをSAFEARRAYで格納した入力。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinSetCommand呼び出し時に返された要求IDと照合する識別子。
vtbl 7 HRESULT OnQueryCommandComplete(IMbnDeviceService* deviceService, DWORD responseID, SAFEARRAY* deviceServiceData, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inQueryコマンド送信が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
responseIDDWORDin応答を識別するレスポンスID(通常はコマンドIDに対応)。
deviceServiceDataSAFEARRAY*in照会結果として返されたデータをSAFEARRAYで格納した入力。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinQueryCommand呼び出し時に返された要求IDと照合する識別子。
vtbl 8 HRESULT OnEventNotification(IMbnDeviceService* deviceService, DWORD eventID, SAFEARRAY* deviceServiceData)
deviceServiceIMbnDeviceService*inイベント通知を発したデバイスサービスを示すIMbnDeviceServiceポインタ。
eventIDDWORDin発生したイベントの種類を識別するイベントID。
deviceServiceDataSAFEARRAY*inイベントに付随するデータをSAFEARRAYで格納した入力。
vtbl 9 HRESULT OnOpenDataSessionComplete(IMbnDeviceService* deviceService, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inデータセッション開始が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinOpenDataSession呼び出し時に返された要求IDと照合する識別子。
vtbl 10 HRESULT OnCloseDataSessionComplete(IMbnDeviceService* deviceService, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inデータセッション終了が完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinCloseDataSession呼び出し時に返された要求IDと照合する識別子。
vtbl 11 HRESULT OnWriteDataComplete(IMbnDeviceService* deviceService, HRESULT status, DWORD requestID)
deviceServiceIMbnDeviceService*inデータ書き込みが完了したデバイスサービスを示すIMbnDeviceServiceポインタ。
statusHRESULTin操作の成否を示すHRESULT。S_OKで成功。
requestIDDWORDinWriteData呼び出し時に返された要求IDと照合する識別子。
vtbl 12 HRESULT OnReadData(IMbnDeviceService* deviceService, SAFEARRAY* deviceServiceData)
deviceServiceIMbnDeviceService*inデータを受信したデバイスサービスを示すIMbnDeviceServiceポインタ。
deviceServiceDataSAFEARRAY*inデバイスから読み取ったデータをSAFEARRAYで格納した入力。
vtbl 13 HRESULT OnInterfaceStateChange(LPWSTR interfaceID, MBN_DEVICE_SERVICES_INTERFACE_STATE stateChange)
interfaceIDLPWSTRin状態が変化したインターフェイスのID文字列。
stateChangeMBN_DEVICE_SERVICES_INTERFACE_STATEinデバイスサービスインターフェイスの状態変化を示すMBN_DEVICE_SERVICES_INTERFACE_STATE列挙値。

HSP用 COM定義

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

出力引数:
#define global IID_IMbnDeviceServicesEvents "{0A900C19-6824-4E97-B76E-CF239D0CA642}"
#usecom global IMbnDeviceServicesEvents IID_IMbnDeviceServicesEvents "{}"
#comfunc global IMbnDeviceServicesEvents_OnQuerySupportedCommandsComplete  3 sptr,var,int,int
#comfunc global IMbnDeviceServicesEvents_OnOpenCommandSessionComplete      4 sptr,int,int
#comfunc global IMbnDeviceServicesEvents_OnCloseCommandSessionComplete     5 sptr,int,int
#comfunc global IMbnDeviceServicesEvents_OnSetCommandComplete              6 sptr,int,var,int,int
#comfunc global IMbnDeviceServicesEvents_OnQueryCommandComplete            7 sptr,int,var,int,int
#comfunc global IMbnDeviceServicesEvents_OnEventNotification               8 sptr,int,var
#comfunc global IMbnDeviceServicesEvents_OnOpenDataSessionComplete         9 sptr,int,int
#comfunc global IMbnDeviceServicesEvents_OnCloseDataSessionComplete        10 sptr,int,int
#comfunc global IMbnDeviceServicesEvents_OnWriteDataComplete               11 sptr,int,int
#comfunc global IMbnDeviceServicesEvents_OnReadData                        12 sptr,var
#comfunc global IMbnDeviceServicesEvents_OnInterfaceStateChange            13 wstr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。