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

IMbnRadio

COM
IIDdccccab6-201f-4bbb-aaee-338e368af6fa継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

IMbnRadio インターフェイスは、Mobile Broadband デバイスの無線状態を照会および更新するために使用します。

解説(Remarks)

アプリケーションは、IMbnInterfaceQueryInterface メソッドを呼び出すことで、このインターフェイスを取得できます。

メソッド 3

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

vtbl 3 HRESULT get_SoftwareRadioState(MBN_RADIO* SoftwareRadioState)

Mobile Broadband デバイスのソフトウェア無線状態です。

SoftwareRadioStateMBN_RADIO*outソフトウェア制御の電波状態(オン・オフ)を示すMBN_RADIO列挙値を受け取る出力ポインタ。
vtbl 4 HRESULT get_HardwareRadioState(MBN_RADIO* HardwareRadioState)

Mobile Broadband デバイスのハードウェア無線状態です。

HardwareRadioStateMBN_RADIO*out物理スイッチ等によるハードウェア電波状態を示すMBN_RADIO列挙値を受け取る出力ポインタ。
vtbl 5 HRESULT SetSoftwareRadioState(MBN_RADIO radioState, DWORD* requestID)

Mobile Broadband デバイスのソフトウェア無線状態を設定します。

radioStateMBN_RADIOin新しいソフトウェア無線状態を指定する MBN_RADIO 値です。
requestIDDWORD*outこの要求を識別するために Mobile Broadband サービスによって割り当てられる要求 ID へのポインターです。

戻り値

このメソッドは次のいずれかの値を返します。

戻り値 説明
S_OK
操作は成功しました。
E_HANDLE
インターフェイスが無効です。おそらく、Mobile Broadband デバイスがシステムから取り外されています。
HRESULT_FROM_WIN32(ERROR_NOT_FOUND)
インターフェイスが無効です。おそらく、Mobile Broadband デバイスがシステムから取り外されています。
HRESULT_FROM_WIN32(ERROR_SERVICE_NOT_ACTIVE)
Mobile Broadband サービスがこのシステムで実行されていません。

解説(Remarks)

SetSoftwareRadioState はデバイスのソフトウェア無線状態を変更します。これは非同期操作であり、直ちに制御を返します。完了時に、Mobile Broadband サービスは IMbnRadioEvents インターフェイスの OnSetSoftwareRadioStateComplete メソッドを呼び出します。

Mobile Broadband デバイスの無線を無効にすると、アクティブな接続の切断、ネットワークからのパケットデタッチ、およびネットワーク登録解除が行われます。無線オフ操作によって接続状態、パケットアタッチ状態、またはネットワーク登録状態が変化した場合、アプリケーションはその変更に関する通知を受け取ります。

Mobile Broadband デバイスでソフトウェア無線とハードウェア無線の両方が有効になっている場合、デバイスは自動的にネットワークへの登録を試みます。また、一部のデバイスはネットワークへのパケットアタッチも試みる場合があります。状態が変化するたびに、呼び出し元のアプリケーションはネットワーク登録およびパケットアタッチ状態の変更に関するイベント通知を受け取ります。

デバイスの無線状態は、アプリケーションからの変更要求なしに変化することがあります。たとえば、ユーザーがシステムのハードウェア無線スイッチをオンにした場合などです。Mobile Broadband サービスは、IMbnRadioEvents インターフェイスの OnRadioStateChange メソッドを呼び出して、無線状態の変更をアプリケーションに通知します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

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

出力引数:
#define global IID_IMbnRadio "{DCCCCAB6-201F-4BBB-AAEE-338E368AF6FA}"
#usecom global IMbnRadio IID_IMbnRadio "{}"
#comfunc global IMbnRadio_get_SoftwareRadioState  3 var
#comfunc global IMbnRadio_get_HardwareRadioState  4 var
#comfunc global IMbnRadio_SetSoftwareRadioState   5 int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。