1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | function Get-IniFile { param( [parameter(Mandatory = $true)] [string] $filePath ) $anonymous = "NoSection" $ini = @{} switch -regex -file $filePath { "^\[(.+)\]$" # Section { $section = $matches[1] $ini[$section] = @{} $CommentCount = 0 } "^(;.*)$" # Comment { if (!($section)) { $section = $anonymous $ini[$section] = @{} } $value = $matches[1] $CommentCount = $CommentCount + 1 $name = "Comment" + $CommentCount $ini[$section][$name] = $value } "(.+?)\s*=\s*(.*)" # Key { if (!($section)) { $section = $anonymous $ini[$section] = @{} } $name,$value = $matches[1..2] $ini[$section][$name] = $value } } return $ini } $iniFile = Get-IniFile "c:\info\additional_info.ini" $SSID = $iniFile.NoSection.SerialNumber $profilefile = "$Env:USERPROFILE\AppData\Roaming\info\" + $SSID + "-WLANProfile.xml" $PW = $SSID $SSIDHEX=($SSID.ToCharArray() |foreach-object {'{0:X}' -f ([int]$_)}) -join'' $xmlfile="<?xml version=""1.0""?> <WLANProfile xmlns=""http://www.microsoft.com/networking/WLAN/profile/v1""> <name>$SSID</name> <SSIDConfig> <SSID> <hex>$SSIDHEX</hex> <name>$SSID</name> </SSID> </SSIDConfig> <connectionType>ESS</connectionType> <connectionMode>auto</connectionMode> <MSM> <security> <authEncryption> <authentication>WPAPSK</authentication> <encryption>AES</encryption> <useOneX>false</useOneX> </authEncryption> <sharedKey> <keyType>passPhrase</keyType> <protected>false</protected> <keyMaterial>$PW</keyMaterial> </sharedKey> </security> </MSM> </WLANProfile> " $XMLFILE > ($profilefile) netsh wlan delete profile name=* netsh wlan add profile filename="$($profilefile)" netsh wlan show profiles $SSID key=clear netsh wlan connect name=$SSID |
1 2 | SerialNumber = 35356345601 CalibrationDate = 22 Oct 2010 |
Keine Kommentare:
Kommentar veröffentlichen