Vbscript / Operating System / Set Vista Network Location Category
This script uses the registry to set the Vista network location category (Public, Home or Work) for a network profile matching the domain that the machine is joined to.
The following registry key contains the network profiles which can be identified by the value of ProfileName;
SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\profiles
The value of Category is set as follows;
Public = 0 Home = 1 Work = 2
Const HKEY_LOCAL_MACHINE = &H80000002
Set objRootLDAP = GetObject("LDAP://RootDSE") strDomain = objRootLDAP.Get("DefaultNamingContext")
strDomain = Replace(strDomain, ",DC=",".") strDomain = Replace(strDomain, "DC=","")
strComputer = "." Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\" & _ strComputer & "\root\default:StdRegProv")
strKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\profiles"
objReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys
For Each Subkey in arrSubKeys
strProfKeyPath = strKeyPath & "\" & SubKey
objReg.GetExpandedStringValue HKEY_LOCAL_MACHINE, strProfKeyPath, "ProfileName", strProfName
If strProfName = strDomain Then
objReg.SetDWORDValue HKEY_LOCAL_MACHINE, strProfKeyPath, "Category", 2
End If
Next
Please note that a disclaimer applies to any code on this page.
|