How to Set SMS Site Comments for Secondary Sites
Published : April 11, 2005
This script shows how to set the SMS site comment for a secondary site. The script demonstrates how a script that manipulates site settings at one site can change the properties for another site that reports to the first site, even if the other site reports indirectly to the first site.
The ConnectServer line connects to the parent site, but the line that refreshes the script’s copy of the site control file and the line that gets the site definition both get the child site’s site control file. When the changes are committed, the child site is again specified.
On This Page
Example
Compiling the Code
See Also
Example
Dim objSWbemLocator Dim objSWbemServices Dim objSWbemContext Dim LocalSiteCode Dim SiteToChange LocalSiteCode = "SITECODE" SiteToChange = "SITECODEOFSITETOCHANGE" Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator") Set objSWbemServices = objSWbemLocator.ConnectServer( , "root\sms\site_" & LocalSiteCode ) Set objSWbemContext = CreateObject("WbemScripting.SWbemNamedValueSet") objSWbemContext.Add "SessionHandle", objSWbemServices.ExecMethod("SMS_SiteControlFile", "GetSessionHandle").SessionHandle objSWbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & SiteToChange & """", "Refresh", , , objSWbemContext Set WbemInst = objSWbemServices.Get("SMS_SCI_SiteDefinition.Filetype=1,Itemtype='Site Definition',Sitecode='" & SiteToChange & "',ItemName='Site Definition'", , objSWbemContext) proparray = WbemInst.props WScript.Echo sitecode & " site comment: " & proparray(0).Value1 proparray(0).Value1 = "Set from script" WbemInst.props = proparray WbemInst.Put_ , objSWbemContext objSWbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & SiteToChange & """", "Commit", , , objSWbemContext objSWbemServices.Get("SMS_SiteControlFile").ReleaseSessionHandle objSWbemContext.Item("SessionHandle").Value
Compiling the Code
Requires Windows 2000 Server SP2 or later.
Requires an SMS 2003 Site Server.