SMS脚本节选六:如何使用站点控制文件

本文介绍如何通过编程方式更新SMS站点的站点控制文件,包括连接到SMS Provider、打开站点控制文件并更改站点注释等步骤。

The site control file stores configuration information for an SMS site. Because the site control file is often updated, the SMS provider has a WMI text xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">SMS_SiteControlFile class that provides programmatic access to the file.

For example, you can update the site control file programmatically to create boundaries or, as in the case of the following procedure, change the site comment of the site.

Note:
Use extreme care when scripting changes to the site control file, because it is possible to irreparably damage your SMS site.

For more information about managing site control configuration, see the text xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">SMS 2003 SDK.

To use the site control file

  1. Connect to the site SMS Provider as follows:

    Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
    Set objSWbemServices= objSWbemLocator.ConnectServer(".", "root/sms")
    
    Set ProviderLoc = objSWbemServices.InstancesOf("SMS_ProviderLocation")
    
    For Each Location In ProviderLoc
            If Location.ProviderForLocalSite = True Then
                Set objSWbemServices = objSWbemLocator.ConnectServer _
                     (Location.Machine, "root/sms/site_" + Location.SiteCode)
            End If
    Next
  2. Open the site control file by using text xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">SMS_SiteControlFile.GetSessionHandle. This creates a local, in-memory copy of the site control file that is identified by a session handle returned by GetSessionHandle.

    Set objSWbemContext = CreateObject("WbemScripting.SWbemNamedValueSet")
    objSWbemContext.Add "SessionHandle", ObjSWbemServices.ExecMethod("SMS_SiteControlFile", "GetSessionHandle").SessionHandle
  3. Change the site comment:

    SiteToChange = "YOURSITECODE"
    objSWbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & SiteToChange & """", "Refresh", , , objSWbemContext
    Set objSWbemInst = objSWbemServices.Get("SMS_SCI_SiteDefinition.Filetype=1,Itemtype='Site Definition',Sitecode='" & SiteToChange & "',ItemName='Site Definition'", , objSWbemContext)
    proparray = objSWbemInst.props
    WScript.Echo SiteToChange & " site comment: " & proparray(0).Value1 'Display current site comment
    proparray(0).Value1 = "A New Site Comment" 'Change the site comment
    objSWbemInst.props = proparray
    
  4. Commit changes to the site control file:

    objSWbemInst.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 an SMS 2003 Site Server.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值