I will demonstrate how to mass deploy WLAN profiles with simple .bat scripts and wlan.exe utility from Microsoft. Active Directory GPO prior to 2003 native mode doesn’t give you the option to mass deploy WLAN profiles. Also if you don’t run AD infrastructure at all and want a simple script you will find this useful.
Script takes into account that some clients don’t have Wireless card and will skip them.
AD Infrastructure – 2000 Native mode
Clients: Windows XP SP3 (wlan.exe requires SP3, later versions such as Vista and 7 come with utility)
You first need to configure a profile on one of the clients and than export it using wlan.exe utility. To export profile you need to run wlan.exe utility in command prompt.
Find GUID of your wireless adapter; issue this command: wlan.exe ei
Broadcom 4321AG 802.11a/b/g/draft-n Wi-Fi Adapter
Find if the profile exists on this interface; issue this command: wlan gpl 00045340-cf09-4c5b-8f27-1bc000000a9c Please make sure “template” profile you configured is there.
Now we export it as a .xml file: wlan.exe gp 00045340-cf09-4c5b-8f27-1bc000000a9c “dd-wrt” C:\templt.xml
Finally, open exported file and remove first and last line:
The return profile xml is:
Command “gp” completed successfully.
Now we will import this profile. Using 2 .bat scripts. First one checks if the client has wireless card and if it is true we copy required files to %temp% folder and executes 2nd script, which imports WLAN profile you created in step 1.
Note: wlan.exe utility doesn’t work properly if it runs from the network share, thus we have to copy to %temp% and call it from there.
1 2 3 4 5 6 7 8 9 10 11 12 13 14
@echo off rem Date: March 17, 2011 rem Author: Naz Snidanko rem Description: checks for wifi adapt, copies files to temp dir and runs deployment script and cleans setlocal ENABLEEXTENSIONS ipconfig | findstr "Wireless" if %errorlevel% EQU 0 goto wifi if %errorlevel% EQU 1 goto nowifi :wifi mkdir %temp%\WLAN copy "\\share.com\NETLOGON\WLAN\*.*" %temp%\WLAN call %temp%\WLAN\WLAN_exec.bat rmdir /S /Q %temp%\WLAN :nowifi
And thats the script that will execute (it is called as WLAN_exec.bat from previous script)
1 2 3 4 5 6 7 8
@echo off rem Date: March 16, 2011 rem Author: Naz Snidanko rem Description: Manual deployment of wireless profiles on Windows XP SP3 setlocal ENABLEEXTENSIONS set wifiprofile="profile.xml" For /F "skip=2 tokens=1,2" %%A IN ('%temp%\WLAN\wlan.exe ei') Do If "%%A"=="GUID:" set Interface=%%B %temp%\WLAN\wlan.exe sp %Interface% %wifiprofile%
Hope it helps, cheers!