Programmatically setup a PEAP connection in Windows Mobile
Posted
by
tomlog
on Stack Overflow
See other posts from Stack Overflow
or by tomlog
Published on 2009-05-22T13:54:33Z
Indexed on
2011/01/14
13:53 UTC
Read the original article
Hit count: 190
I have been working on this for a few days and this is doing my head in:
Our application is built using the .NET Compact Framework 2.0 and running on Windows Mobile 5 & 6 devices. We can set the WLAN connection of the device programmatically using the Wireless Zero Config functions (described here: msdn.microsoft.com/en-us/library/ms894771.aspx), most notably the WZCSetInterface function which we pinvoke from our application. This works fine for WEP and WPA-PSK connections.
In a recent effort to add support for WPA2 networks we decided to modify the code. We have successfully added support for WPA2 which uses a certificate for the 802.1x authentication by setting the correct registry settings before calling WZCSetInterface. Now we want to do the same for WPA2 using PEAP (MS-CHAPv2) authentication. When manually creating such a connection in Windows Mobile the user will be prompted to enter the domain/user/password details. In our application we will have those details stored locally and want to do this all programmatically without any user intervention.
So I thought going along the same route as the certificate authentication, setting the correct registry entries before calling WZCSetInterface.
The registry settings we set are: \HKCU\Comm\EAP\Config\[ssid name]
- Enable8021x = 1 (DWORD)
- LastAuthSuccessful = 1 (DWORD)
- EapTypeId = 25 (DWORD)
- Identity = "domain\username" (string)
- Password = binary blob containing the password that is encrypted using the
CryptProtectData function (described here: msdn.microsoft.com/en-us/library/ms938309.aspx)
But when these settings are set and I call WZCSetInterface with the correct parameters, it still prompts me with the User Logon dialog asking for the domain/username/password.
Has anyone got an idea what I need to do to prevent the password dialog from appearing and connect straight away with the settings stored in the registry?
© Stack Overflow or respective owner