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 WIFI FRAMEWORK supports both technologies to create a SoftAP.
On Windows 7, Windows 8 and Windows 8.1 the WIFI FRAMEWORK allows to create a Soft AP based on the Native WiFi Hosted network available on those platforms.
Starting from Windows 10 Microsoft introduced Legacy SoftAP support based on WiFi Direct technology.
Not all WiFi adapters support WiFi Direct features. Also, not all modern WiFi 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 WiFi 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.