そのため、WLanapi.dll から WlanHostedNetworkSetProperty を呼び出すときに問題が発生しました。これは、その関数に渡された WLAN_HOSTED_NETWORK_CONNECTION_SETTINGS からの dwMaxNumberOfPeers が、SSID が前の呼び出しと異なる場合を除き、保持されないということです。
シナリオ 1 (問題):
- WlanHostedNetworkSetPropertyを呼び出し、 WLAN_HOSTED_NETWORK_CONNECTION_SETTINGSにdwMaxNumberOfPeers 5 とSSID "MyNetwork"を渡します。
- WlanHostedNetworkQueryPropertyを呼び出すと、設定した詳細が表示されます
- 今度はWlanHostedNetworkSetPropertyを再度呼び出します。今回はdwMaxNumberOfPeersは 10 で、SSIDは「MyNetwork」のままです。
- WlanHostedNetworkQueryPropertyを呼び出すと、10 ではなくdwMaxNumberOfPeers 5が返されます...
シナリオ 2 (問題なし):
- WlanHostedNetworkSetPropertyを呼び出し、 WLAN_HOSTED_NETWORK_CONNECTION_SETTINGSにdwMaxNumberOfPeers 5 とSSID "MyNetwork"を渡します。
- WlanHostedNetworkQueryPropertyを呼び出すと、設定した詳細が表示されます
- 今度はWlanHostedNetworkSetPropertyを再度呼び出します。今回はdwMaxNumberOfPeersは 10 で、SSIDは「MyOtherNetwork」に変更されます。
- WlanHostedNetworkQueryPropertyを呼び出すと、 dwMaxNumberOfPeersが正しく 10 に設定されます...
あなたの誰かがそれに出くわしましたか?ホストされているネットワークの最大ピア数を変更するたびに、偽のランダム SSID を設定せずにどのように解決しましたか?