可以通过创建 类的SMS_MeteredProductRule
实例并填充属性,在 Configuration Manager 中创建软件计数规则。
创建软件计数规则
设置与 SMS 提供程序的连接。
使用
SMS_MeteredProductRule
类创建新的软件计数规则对象。填充新的软件计数规则属性。
保存新的软件计数规则和属性。
示例
以下示例方法演示如何通过创建 类的 SMS_MeteredProductRule
实例并填充属性来创建软件计数规则。
有关调用示例代码的信息,请参阅调用Configuration Manager代码片段。
Sub CreateSWMRule(connection, _
newProductName, _
newFileName, _
newOriginalFileName, _
newFileVersion, _
newLanguageID, _
newSiteCode, _
newApplyToChildSites)
' Create the new MeteredProductRule object.
Set newSWMRule = connection.Get("SMS_MeteredProductRule").SpawnInstance_
' Populate the SMS_MeteredProductRule properties.
newSWMRule.ProductName= newProductName
newSWMRule.FileName = newFileName
newSWMRule.OriginalFileName = newOriginalFileName
newSWMRule.FileVersion = newFileVersion
newSWMRule.LanguageID = newLanguageID
newSWMRule.SiteCode = newSiteCode
newSWMRule.ApplyToChildSites = newApplyToChildSites
' Save the new rule and properties.
newSWMRule.Put_
' Output new rule name.
Wscript.Echo "Created new SWM Rule: " & newProductName
End Sub
public void CreateSWMRule(WqlConnectionManager connection,
string newProductName,
string newFileName,
string newOriginalFileName,
string newFileVersion,
int newLanguageID,
string newSiteCode,
bool newApplyToChildSites)
{
try
{
// Create the new SMS_AuthorizationList object.
IResultObject newSWMRule = connection.CreateInstance("SMS_MeteredProductRule");
// Populate the new SMS_MeteredProductRule object properties.
newSWMRule["ProductName"].StringValue = newProductName;
newSWMRule["FileName"].StringValue = newFileName;
newSWMRule["OriginalFileName"].StringValue = newOriginalFileName;
newSWMRule["FileVersion"].StringValue = newFileVersion;
newSWMRule["LanguageID"].IntegerValue = newLanguageID;
newSWMRule["SiteCode"].StringValue = newSiteCode;
newSWMRule["ApplyToChildSites"].BooleanValue = newApplyToChildSites;
// Save changes.
newSWMRule.Put();
Console.WriteLine();
Console.WriteLine("Created new SWM Rule: " + newProductName);
}
catch (SmsException ex)
{
Console.WriteLine("Failed to create SWM rule. Error: " + ex.Message);
throw;
}
}
示例方法具有以下参数:
参数 | 类型 | 说明 |
---|---|---|
connection |
-管理: WqlConnectionManager - VBScript: SWbemServices |
与 SMS 提供程序的有效连接。 |
newProductName |
-管理: String - VBScript: String |
新产品名称。 |
newFileName |
-管理: String - VBScript: String |
新文件名。 |
newOriginalFileName |
-管理: String - VBScript: String |
新的原始文件名。 |
newFileVersion |
-管理: String - VBScript: String |
新的文件版本。 |
newLanguageID |
-管理: Integer - VBScript: Integer |
新语言 ID。 |
newSiteCode |
-管理: String - VBScript: String |
新站点代码。 |
newApplyToChildSites |
-管理: Boolean - VBScript: Boolean |
确定规则是否将应用于子网站。 |
编译代码
此 C# 示例需要:
命名空间
System
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
可靠编程
有关错误处理的详细信息,请参阅关于Configuration Manager错误。
.NET Framework 安全性
有关保护Configuration Manager应用程序的详细信息,请参阅Configuration Manager基于角色的管理。