您的位置:首页 > 其它

SMS脚本节选二:如何读取SMS对象

2008-03-11 14:27 417 查看
There are several ways to read SMS objects from the SMS Provider with WMI. In general, you need to get either a specific SMS object instance or a collection of SMS object instances. The procedures in this topic demonstrate several common techniques for getting SMS objects and fall into the following categories:
Getting a collection of all instances of a SMS object.

Getting a collection of a specific set of SMS objects.

Getting a single instance of a SMS object.

To get a collection of all instances of an SMS object by using a WQL query

Connect to an SMS Provider, and get the SWbemServices object.
Get a collection of SMS objects by using the WBemServices.ExecQuery method. ExecQuery returns the collection as an SWbemObjectSet object. The following example gets all advertisement (SMS_Advertisement) objects:
set colAdvertisements = objSWbemServices.ExecQuery( "Select * From SMS_Advertisement")
Read the SMS objects:
for each objAdvertisement in colAdvertisements    wscript.echo objAdvertisement.AdvertisementNamenext

To get a collection of a specific set of SMS objects by using a WQL query

Connect to an SMS Provider, and get the SWbemServices object.
Get a collection of the desired SMS objects by using the WBemServices.ExecQuery method. ExecQuery returns the collection as an SWbemObjectSet object. This example gets all resources that are members of the All Windows Server 2003 collection.
set colCollection=objSWbemServices.ExecQuery("SELECT * FROM SMS_FullCollectionMembership WHERE CollectionID='SMS000FS'" )
Read the SMS objects:
for each objCollectionMember in colCollection    wscript.echo objCollectionMEmber.Namenext

To get a collection of all instances of an SMS object using the InstancesOf method

Connect to an SMS Provider, and get the SWbemServices object.
Get a collection of SMS objects using the WBemServices.InstancesOf method. This example gets all advertisement (SMS_Advertisement) objects.
set colAdvertisements = WbemServices.InstancesOf("SMS_Advertisement")
Read the SMS objects:
for each objAdvertisement in colAdvertisements    wscript.echo objAdvertisement.AdvertisementNamenext

To get a single instance of an SMS object using the GetObject method.

Get the required instance of the SMS object by using GetObject. The instance must be identified by one of its key properties. This example gets an instance of the advertisement with an advertisement identifier of B2K2001. In this example, GetObject returns an SWbemObject object.
Set objAdvertisement = GetObject( "WinMgmts:root/SMS/site_SITECODE:SMS_Advertisement.AdvertisementID='ADVERTISEMENTID'")
Read the SMS object:
Wscript.echo objAdvertisement.AdvertisementName
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: