IDot11AdHocNetwork
COM公式ドキュメント
接続範囲内にある、利用可能なアドホック ネットワークの接続先を表します。
メソッド 12
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
ネットワークの接続状態を取得します。
| eStatus | DOT11_ADHOC_NETWORK_CONNECTION_STATUS* | inout | 接続状態を示す DOT11_ADHOC_NETWORK_CONNECTION_STATUS 値へのポインター。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
ネットワークの SSID を取得します。
| ppszwSSID | LPWSTR* | out | ネットワークの SSID。 この文字列は CoTaskMemFree を使用して解放する必要があります。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
ネットワークに関連付けられた保存済みプロファイルが存在するかどうかを示すブール値を返します。
| pf11d | BYTE* | inout | ネットワークにプロファイルがあるかどうかを示します。プロファイルがある場合は TRUE、そうでない場合は FALSE が設定されます。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
ネットワークに関連付けられたプロファイル名を取得します。
| ppszwProfileName | LPWSTR* | out | ネットワークに関連付けられたプロファイルの名前。ネットワークにプロファイルがない場合、このパラメーターは NULL になります。 この文字列は CoTaskMemFree を使用して解放する必要があります。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
ネットワークに関連付けられたプロファイルを削除します。
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 |
ネットワークの無線に関連付けられた信号品質の値を取得します。
| puStrengthValue | DWORD* | out | 現在の信号強度。このパラメーターは 0 から puStrengthMax までの ULONG 値を取ります。 |
| puStrengthMax | DWORD* | out | 信号強度の最大値。このパラメーターは 0 から 100 までの ULONG 値を取ります。既定では、puStrengthMax は 100 に設定されます。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
解説(Remarks)
ここでの信号強度は線形スケールで測定されます。puStrengthMax が既定値の 100 に設定されている場合、puStrengthValue は現在の送信に使用されている最大信号強度に対する割合 (パーセント) を表します。
ネットワークのセキュリティ設定を取得します。
| pAdHocSecuritySetting | IDot11AdHocSecuritySettings** | out | ネットワークのセキュリティ設定を保持する IDot11AdHocSecuritySettings インターフェイスへのポインター。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
ネットワークに関連付けられたコンテキスト識別子を取得します。
| pContextGuid | GUID* | inout | ネットワークに関連付けられたコンテキスト識別子。CreateNetwork の呼び出し時に ContextGuid が指定されなかった場合、返される GUID はすべてゼロになります。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
アドホック ネットワークに関連付けられた一意のシグネチャを取得します。
| pSignature | GUID* | inout | アドホック ネットワークを一意に識別するシグネチャ。このシグネチャは特定のネットワーク属性から生成されます。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
解説(Remarks)
返されたシグネチャをローカルにキャッシュしないでください。ネットワーク オブジェクトが変更されるたびに、そのシグネチャも変化します。ネットワークのプロファイルの保存など、通知を伴わない操作によってもシグネチャが変化することがあります。
ネットワークに関連付けられたインターフェイスを取得します。
| pAdHocInterface | IDot11AdHocInterface** | out | IDot11AdHocInterface へのポインター。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
以前に作成されたワイヤレス アドホック ネットワークに接続します。
| Passphrase | LPWSTR | in | ネットワーク上でユーザーまたはコンピューターを認証するために使用するパスワード文字列。 パスワード文字列の長さは、CreateNetwork 呼び出しの pSecurity パラメーターで渡されたセキュリティ設定によって決まります。次の表は、各セキュリティ設定に対応するパスワード長を示します。
上記のセキュリティ設定の組み合わせに対応する列挙値については、DOT11_ADHOC_AUTH_ALGORITHM および DOT11_ADHOC_CIPHER_ALGORITHM を参照してください。 | ||||||||
| GeographicalId | INT | in | ネットワークが作成された地理的な場所。指定可能な値の一覧については、Table of Geographical Locations を参照してください。 | ||||||||
| fSaveProfile | BOOLEAN | in | ワイヤレス プロファイルを保存するかどうかを指定する省略可能なパラメーター。TRUE の場合、プロファイルはプロファイル ストアに保存されます。プロファイルを保存すると、ユーザーは ワイヤレス ネットワークの管理 ユーザー インターフェイスを使用してプロファイルを変更できます。プロファイルは Native Wifi Functions を使用して変更することもできます。 プロファイルを保存すると、IDot11AdHocNetwork::GetSignature が返すネットワーク シグネチャが変化します。 | ||||||||
| fMakeSavedProfileUserSpecific | BOOLEAN | in | 保存するプロファイルを全ユーザー用プロファイルにするかどうかを指定する省略可能なパラメーター。TRUE に設定した場合、プロファイルは現在のユーザー専用になります。FALSE に設定した場合、プロファイルは全ユーザー用プロファイルとなり、コンピューターにログオンしている任意のユーザーが使用できます。fSaveProfile が FALSE の場合、このパラメーターは無視されます。 既定では、全ユーザー用プロファイルを保存できるのは Administrators グループのメンバーのみです。これらのセキュリティ設定は WlanSetSecuritySettings 関数を使用して変更できます。全ユーザー用プロファイルを正常に保存するには、十分な権限を持つユーザーがアプリケーションを起動する必要があります。 アプリケーションがリモート デスクトップ ウィンドウ内で実行されている場合、保存できるのは全ユーザー用プロファイルのみです。リモートで実行中のアプリケーションからユーザー固有のプロファイルを保存することはできません。 |
戻り値
返される可能性のある値には、次のものが含まれます (ただしこれらに限定されません)。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| メソッドは失敗しました。 | |
| いずれかのパラメーターが無効です。 | |
| 指定されたインターフェイスはサポートされていません。 | |
| この操作の実行に必要なメモリを割り当てられませんでした。 | |
| パラメーターとして渡されたポインターが無効です。 |
解説(Remarks)
このメソッドは非同期です。Connect は、渡されたパラメーターが有効であれば直ちに S_OK を返します。ただし、S_OK が返されても接続が成功したことを意味するわけではありません。接続の成否の通知を受け取るには、IDot11AdHocNetworkNotificationSink インターフェイスで通知を登録する必要があります。接続状態は IDot11AdHocNetworkNotificationSink::OnStatusChange メソッドによって返されます。通知の登録の詳細については、IDot11AdHocManager を参照してください。
アドホック ネットワークから切断します。
戻り値
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
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 指定が可能。#define global IID_IDot11AdHocNetwork "{8F10CC29-CF0D-42A0-ACBE-E2DE7007384D}" #usecom global IDot11AdHocNetwork IID_IDot11AdHocNetwork "{}" #comfunc global IDot11AdHocNetwork_GetStatus 3 sptr #comfunc global IDot11AdHocNetwork_GetSSID 4 sptr #comfunc global IDot11AdHocNetwork_HasProfile 5 sptr #comfunc global IDot11AdHocNetwork_GetProfileName 6 sptr #comfunc global IDot11AdHocNetwork_DeleteProfile 7 #comfunc global IDot11AdHocNetwork_GetSignalQuality 8 sptr,sptr #comfunc global IDot11AdHocNetwork_GetSecuritySetting 9 sptr #comfunc global IDot11AdHocNetwork_GetContextGuid 10 sptr #comfunc global IDot11AdHocNetwork_GetSignature 11 sptr #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が無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。