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

IDot11AdHocNetwork

COM
IID8f10cc29-cf0d-42a0-acbe-e2de7007384d継承元IUnknown自前メソッド開始 vtbl3

メソッド 12

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

vtbl 3 HRESULT GetStatus(DOT11_ADHOC_NETWORK_CONNECTION_STATUS* eStatus)
eStatusDOT11_ADHOC_NETWORK_CONNECTION_STATUS*inoutネットワークの接続状態を示すDOT11_ADHOC_NETWORK_CONNECTION_STATUS列挙値を受け取る。
vtbl 4 HRESULT GetSSID(LPWSTR* ppszwSSID)
ppszwSSIDLPWSTR*outネットワークのSSID文字列を受け取る。CoTaskMemFreeで解放。
vtbl 5 HRESULT HasProfile(BYTE* pf11d)
pf11dBYTE*inout保存済みプロファイルが存在するかを示すブール値(BYTE)を受け取る。
vtbl 6 HRESULT GetProfileName(LPWSTR* ppszwProfileName)
ppszwProfileNameLPWSTR*outネットワークのプロファイル名文字列を受け取る。CoTaskMemFreeで解放。
vtbl 7 HRESULT DeleteProfile()
vtbl 8 HRESULT GetSignalQuality(DWORD* puStrengthValue, DWORD* puStrengthMax)
puStrengthValueDWORD*out現在の信号強度値を受け取る。
puStrengthMaxDWORD*out信号強度の最大値を受け取る。比率算出に用いる。
vtbl 9 HRESULT GetSecuritySetting(IDot11AdHocSecuritySettings** pAdHocSecuritySetting)
pAdHocSecuritySettingIDot11AdHocSecuritySettings**outネットワークのセキュリティ設定IDot11AdHocSecuritySettingsを受け取る。
vtbl 10 HRESULT GetContextGuid(GUID* pContextGuid)
pContextGuidGUID*inoutネットワークに関連付けられたコンテキストGUIDを受け取る。
vtbl 11 HRESULT GetSignature(GUID* pSignature)
pSignatureGUID*inoutネットワークを一意に識別する署名GUIDを受け取る。
vtbl 12 HRESULT GetInterface(IDot11AdHocInterface** pAdHocInterface)
pAdHocInterfaceIDot11AdHocInterface**outこのネットワークが属するインターフェイスIDot11AdHocInterfaceを受け取る。
vtbl 13 HRESULT Connect(LPWSTR Passphrase, INT GeographicalId, BOOLEAN fSaveProfile, BOOLEAN fMakeSavedProfileUserSpecific)
PassphraseLPWSTRin接続に使用するパスフレーズ。不要ならNULL可。
GeographicalIdINTin規制地域を示す地理的識別子(GEOID)。
fSaveProfileBOOLEANin接続プロファイルを保存するならTRUE。
fMakeSavedProfileUserSpecificBOOLEANin保存プロファイルをユーザー固有にするならTRUE、全ユーザー共有はFALSE。
vtbl 14 HRESULT Disconnect()

HSP用 COM定義

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

出力引数:
#define global IID_IDot11AdHocNetwork "{8F10CC29-CF0D-42A0-ACBE-E2DE7007384D}"
#usecom global IDot11AdHocNetwork IID_IDot11AdHocNetwork "{}"
#comfunc global IDot11AdHocNetwork_GetStatus           3 var
#comfunc global IDot11AdHocNetwork_GetSSID             4 var
#comfunc global IDot11AdHocNetwork_HasProfile          5 var
#comfunc global IDot11AdHocNetwork_GetProfileName      6 var
#comfunc global IDot11AdHocNetwork_DeleteProfile       7
#comfunc global IDot11AdHocNetwork_GetSignalQuality    8 var,var
#comfunc global IDot11AdHocNetwork_GetSecuritySetting  9 sptr
#comfunc global IDot11AdHocNetwork_GetContextGuid      10 var
#comfunc global IDot11AdHocNetwork_GetSignature        11 var
#comfunc global IDot11AdHocNetwork_GetInterface        12 sptr
#comfunc global IDot11AdHocNetwork_Connect             13 wstr,int,int,int
#comfunc global IDot11AdHocNetwork_Disconnect          14
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。