SoftAP is an abbreviated term for "software enabled access point". This is software enabling a computer which has not been specifically made to be a router into a wireless access point. It is often used interchangeably with the term "virtual router".
The wireless Hosted Network is a WLAN feature supported on Windows since Windows 7. This feature implements two major functions:
- The virtualization of a physical wireless adapter into more than one virtual wireless adapter sometimes referred to as Virtual Wi-Fi.
- A software-based wireless access point (AP) sometimes referred to as a SoftAP that uses a designated virtual wireless adapter.
These two functions coexist in a Windows system together. Enabling or disabling the wireless Hosted Network enables or disables both virtual Wi-Fi and SoftAP. It is not possible to enable or disable these two functions separately in Windows.
Wi-Fi Direct is a Wi-Fi standard enabling devices to easily connect with each other without requiring a wireless access point. Wi-Fi Direct allows two devices to establish a direct Wi-Fi connection without requiring a wireless router. Hence, Wi-Fi Direct is single radio hop communication, not multihop wireless communications, unlike wireless ad hoc networks and mobile ad hoc networks. Wi-Fi ad hoc mode, however, supports multi-hop radio communications, with intermediate Wi-Fi nodes as packet relays.
The WI-FI FRAMEWORK supports both technologies to create a SoftAP.
On Windows 7, Windows 8 and Windows 8.1 the WI-FI FRAMEWORK allows to create a Soft AP based on the Native Wi-Fi Hosted network available on those platforms.
Starting from Windows 10 Microsoft introduced Legacy SoftAP support based on Wi-Fi Direct technology.
Not all Wi-Fi adapters support Wi-Fi Direct features. Also, not all modern Wi-Fi adapters (especailly designed for Windows 10) support Native Hosted Network.
When your application needs to start Soft AP it is recommended to follow this scenario:
- Use wclWiFiSoftAP class and try to start Wi-Fi Direct Legacy Soft AP. Provide the Network SSID and a passkey is needed.
- If wclWiFiSoftAP returns error you application should switch to wclWiFiHostedNetwork class and start Native Hosted Network Soft AP.