サイト コントロール ファイルの設定を変更して、Configuration Managerでソフトウェア Updates クライアント エージェントを有効または無効にします。
ソフトウェア Updates クライアント エージェントを有効または無効にするには
SMS プロバイダーへの接続を設定します。
SMS_SCI_ClientComp クラスを使用して、サイト コントロール ファイルの [ソフトウェア Updates クライアント エージェント] セクションに接続します。
使用可能なプロパティの配列をLoopし、必要に応じて変更を加えます。
サイト コントロール ファイルに変更をコミットします。
例
次のメソッドの例では、SMS_SCI_ClientComp クラスを使用してサイト コントロール ファイルに接続し、プロパティを変更することで、ソフトウェア Updates クライアント エージェントを有効または無効にします。
サンプル コードの呼び出しについては、「Configuration Manager コード スニペットの呼び出し」を参照してください。
Sub EnableDisableSUMClientAgent(swbemServices, _
swbemContext, _
enableDisableFlag, _
siteToChange )
' Load site control file and get software updates client component section.
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteToChange & """", "Refresh", , , swbemContext
Set objSWbemInst = swbemServices.Get("SMS_SCI_ClientComp.Filetype=1,Itemtype='Client Component',Sitecode='" & siteToChange & "',ItemName='Software Updates'", , swbemContext)
' Display the Software Updates Client Agent settings before changing the properties.
Wscript.Echo " "
Wscript.Echo "Properties - Before Change"
Wscript.Echo "---------------------------"
Wscript.Echo objSWbemInst.ClientComponentName
Wscript.Echo objSWbemInst.Flags & " (0 = Disabled, 1 = Enabled)"
' Set Software Updates Client Agent by setting Flags value to 0 or 1 by using the enableDisableFlag variable.
objSWbemInst.Flags = enableDisableFlag
' Save new Software Updates Client Agent settings.
objSWbemInst.Put_ , swbemContext
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteToChange & """", "Commit", , , swbemContext
' Refresh in-memory copy of the site control file and get the software updates client component section.
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteToChange & """", "Refresh", , , swbemContext
Set objSWbemInst = swbemServices.Get("SMS_SCI_ClientComp.Filetype=1,Itemtype='Client Component',Sitecode='" & siteToChange & "',ItemName='Software Updates'", , swbemContext)
' Display the Software Updates Client Agent settings after changing the properties.
Wscript.Echo " "
Wscript.Echo "Properties - After Change"
Wscript.Echo "---------------------------"
Wscript.Echo objSWbemInst.ClientComponentName
Wscript.Echo objSWbemInst.Flags & " (0 = Disabled, 1 = Enabled)"
End Sub
public void EnableDisableSUMClientAgent(WqlConnectionManager connection,
string enableDisableFlag,
string siteCode)
{
try
{
IResultObject siteDefinition = connection.GetInstance(@"SMS_SCI_ClientComp.FileType=1,ItemType='Client Component',SiteCode='" + siteCode + "',ItemName='Software Updates'");
// Display Software Updates Client Agent settings before changing the properties.
Console.WriteLine();
Console.WriteLine("Properties - Before Change");
Console.WriteLine("---------------------------");
Console.WriteLine(siteDefinition["ClientComponentName"].StringValue);
Console.WriteLine(siteDefinition["Flags"].StringValue + " (0 = Disabled, 1 = Enabled)");
// Set Software Updates Client Agent by setting "Flags" value to 0 or 1 by using the enableDisableFlag variable.
siteDefinition["Flags"].StringValue = enableDisableFlag;
// Save the settings.
siteDefinition.Put();
// Verify the change by reconnecting and getting the value again.
IResultObject siteDefinition2 = connection.GetInstance(@"SMS_SCI_ClientComp.FileType=1,ItemType='Client Component',SiteCode='" + siteCode + "',ItemName='Software Updates'");
// Display Software Updates Client Agent settings after changing the properties.
Console.WriteLine();
Console.WriteLine("Properties - After Change");
Console.WriteLine("--------------------------");
Console.WriteLine(siteDefinition2["ClientComponentName"].StringValue);
Console.WriteLine(siteDefinition2["Flags"].StringValue + " (0 = Disabled, 1 = Enabled)");
}
catch (SmsException ex)
{
Console.WriteLine("Failed. Error: " + ex.InnerException.Message);
throw;
}
}
このメソッドの例には、次のパラメーターがあります。
パラメーター | 型 | 説明 |
---|---|---|
connection |
-管理: WqlConnectionManager - VBScript: SWbemServices |
SMS プロバイダーへの有効な接続。 |
swbemContext |
- VBScript: SWbemContext |
有効なコンテキスト オブジェクト。 詳細については、「WMI を使用してConfiguration Managerコンテキスト修飾子を追加する方法」を参照してください。 |
siteCode |
-管理: String |
サイト コード。 |
siteToChange |
- VBScript: String |
サイト コード。 |
enableDisableFlag |
-管理: String - VBScript: String |
ソフトウェア Updates クライアント エージェントが有効か無効かを決定します。 0 - 無効 1 - 有効 |
コードのコンパイル
この 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」を参照してください。
関連項目
ソフトウェア Updatesのセットアップと構成について Configuration Manager サイト コントロール ファイルについてマネージド コードを使用してConfiguration Manager サイト コントロール ファイルの読み取りと書き込みを行う方法 Configuration Managerに対する読み取りと書き込み方法WMI SMS_SCI_Component サーバー WMI クラスを使用したサイト コントロール ファイルWMIを使用してConfiguration Manager コンテキスト修飾子を追加する方法