Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A mobileszköz-ügyfélügynök beállításait a Configuration Manager a helyvezérlő fájl módosításával konfigurálhatja.
Fontos
Ez a cikk csak az örökölt mobileszköz-ügyfélre vonatkozik.
A mobileszköz-ügyfélügynök beállításainak konfigurálása
Állítson be egy kapcsolatot az SMS-szolgáltatóval.
Hozzon létre kapcsolatot a helyvezérlő fájl Eszközügyfél szakaszával a
SMS_SCI_ClientComp
osztály használatával.Végighalad az elérhető tulajdonságok tömbjén, és szükség szerint módosításokat hajt végre.
Véglegesítse a tulajdonság módosításait a helyvezérlő fájlban.
Példa
Az alábbi példametódus különböző mobileszköz-ügyfélügynök-beállításokat konfigurál a osztály használatával a SMS_SCI_ClientComp
helyvezérlő fájlhoz való csatlakozáshoz és a tulajdonságok módosításához.
A mintakód meghívásával kapcsolatos információkért lásd: Configuration Manager Kódrészletek hívása.
Sub ConfigureMobileDeviceClientAgentSettings(swbemServices, _
swbemContext, _
siteCode, _
newPollIntervalMinutes, _
newPollIntervalHours, _
newFailureRetryCount, _
newFailureRetryIntervalMinutes, _
newFailureRetryIntervalHours, _
newEnableDisableSoftwareDistribution)
' Variables to build poll interval string.
' Note: The sample code only passes in minutes and hours, so setting empty values to use.
emptySeconds = "00"
emptyDays = "00"
emptyMonths = "00"
emptyYears = "0000"
' Build newPollInterval string (the format must be "0000-00-00 00:00:00").
newPollInterval = emptyYears & "-" & emptyMonths & "-" & emptyDays & " " & newPollIntervalHours & ":" & newPollIntervalMinutes & ":" & emptySeconds
newFailureRetryInterval = emptyYears & "-" & emptyMonths & "-" & emptyDays & " " & newFailureRetryIntervalHours & ":" & newFailureRetryIntervalMinutes & ":" & emptySeconds
' Load site control file and get the client component section.
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Refresh", , , swbemContext
Query = "SELECT * FROM SMS_SCI_ClientComp " & _
"WHERE ClientComponentName = 'Device Client' " & _
"AND SiteCode = '" & siteCode & "'"
Set SCIComponentSet = swbemServices.ExecQuery(Query, ,wbemFlagForwardOnly Or wbemFlagReturnImmediately, swbemContext)
' Only one instance is returned from the query.
For Each SCIComponent In SCIComponentSet
' Loop through the array of embedded property instances.
For Each vProperty In SCIComponent.Props
' Setting: Poll Interval
If vProperty.PropertyName = "Poll Interval" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value2
'Modify the value.
vProperty.Value2 = newPollInterval
wscript.echo "New value " & newPollInterval
End If
' Setting: Failure Retry Count
If vProperty.PropertyName = "Failure Retry Count" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value
' Modify the value.
vProperty.Value = newFailureRetryCount
wscript.echo "New value " & newFailureRetryCount
End If
' Setting: Failure Retry Interval
If vProperty.PropertyName = "Failure Retry Interval" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value2
' Modify the value.
vProperty.Value2 = newFailureRetryInterval
wscript.echo "New value " & newFailureRetryInterval
End If
' Setting: Enable Software Dist
If vProperty.PropertyName = "Enable Software Dist" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value2
' Modify the value.
vProperty.Value2 = newEnableDisableSoftwareDistribution
wscript.echo "New value " & newEnableDisableSoftwareDistribution
End If
Next
' Update the component in your copy of the site control file. Get the path
' to the updated object, which could be used later to retrieve the instance.
Set SCICompPath = SCIComponent.Put_(wbemChangeFlagUpdateOnly, swbemContext)
Next
' Commit the change to the actual site control file.
Set InParams = swbemServices.Get("SMS_SiteControlFile").Methods_("CommitSCF").InParameters.SpawnInstance_
InParams.SiteCode = siteCode
swbemServices.ExecMethod "SMS_SiteControlFile", "CommitSCF", InParams, , swbemContext
End Sub
public void ConfigureMobileDeviceClientAgentSettings(WqlConnectionManager connection,
string siteCode,
string newPollIntervalMinutes,
string newPollIntervalHours,
string newFailureRetryCount,
string newFailureRetryIntervalMinutes,
string newFailureRetryIntervalHours,
bool newEnableDisableSoftwareDistribution)
{
// Define variables to build poll interval string.
// Note: The example code only passes in minutes and hours, so this sets empty values to use.
string emptyDays = "00";
string emptyMonths = "00";
string emptyYears = "0000";
string emptySeconds = "00";
// Build newPollInterval and newFailureRetryInterval strings (the format must be "0000-00-00 00:00:00").
string newPollInterval = emptyYears + "-" + emptyMonths + "-" + emptyDays + " " + newPollIntervalHours + ":" + newPollIntervalMinutes + ":" + emptySeconds;
string newFailureRetryInterval = emptyYears + "-" + emptyMonths + "-" + emptyDays + " " + newFailureRetryIntervalHours + ":" + newFailureRetryIntervalMinutes + ":" + emptySeconds;
try
{
IResultObject siteDefinition = connection.GetInstance(@"SMS_SCI_ClientComp.FileType=1,ItemType='Client Component',SiteCode='" + siteCode + "',ItemName='Device Client'");
// Loop through the array of embedded properties.
foreach (KeyValuePair<string, IResultObject> kvp in siteDefinition.EmbeddedProperties)
{
// Create temporary working copy of embedded properties.
Dictionary<string, IResultObject> embeddedProperties = siteDefinition.EmbeddedProperties;
// Setting: Poll Interval.
if (kvp.Value.PropertyList["PropertyName"] == "Poll Interval")
{
Console.WriteLine();
Console.WriteLine(kvp.Value.PropertyList["PropertyName"]);
Console.WriteLine("Current value: " + embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value2"].StringValue);
// Change value using the newPollInterval value passed in.
embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value2"].StringValue = newPollInterval;
Console.WriteLine("New value : " + newPollInterval);
}
// Setting: Failure Retry Count.
if (kvp.Value.PropertyList["PropertyName"] == "Failure Retry Count")
{
Console.WriteLine();
Console.WriteLine(kvp.Value.PropertyList["PropertyName"]);
Console.WriteLine("Current value: " + embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value"].StringValue);
// Change value using the newFailureRetryCount value passed in.
embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value"].StringValue = newFailureRetryCount;
Console.WriteLine("New value : " + newFailureRetryCount);
}
// Setting: Failure Retry Interval.
if (kvp.Value.PropertyList["PropertyName"] == "Failure Retry Interval")
{
Console.WriteLine();
Console.WriteLine(kvp.Value.PropertyList["PropertyName"]);
Console.WriteLine("Current value: " + embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value2"].StringValue);
// Change value using the newFailureRetryInterval value passed in.
embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value2"].StringValue = newFailureRetryInterval;
Console.WriteLine("New value : " + newFailureRetryInterval);
}
// Setting: Enable Software Dist.
if (kvp.Value.PropertyList["PropertyName"] == "Enable Software Dist")
{
Console.WriteLine();
Console.WriteLine(kvp.Value.PropertyList["PropertyName"]);
Console.WriteLine("Current value: " + embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value2"].StringValue);
// Change value using the newEnableDisableSoftwareDistribution value passed in.
embeddedProperties[kvp.Value.PropertyList["PropertyName"]]["Value2"].BooleanValue = newEnableDisableSoftwareDistribution;
Console.WriteLine("New value : " + newEnableDisableSoftwareDistribution);
}
// Store the settings that have changed.
siteDefinition.EmbeddedProperties = embeddedProperties;
}
// Save the settings.
siteDefinition.Put();
}
catch (SmsException ex)
{
Console.WriteLine("Failed. Error: " + ex.InnerException.Message);
throw;
}
}
A példametódus a következő paraméterekkel rendelkezik:
Paraméter | Típus | Leírás |
---|---|---|
connection swbemServices |
-Kezelt: WqlConnectionManager - VBScript: SWbemServices |
Érvényes kapcsolat az SMS-szolgáltatóval. |
swbemContext |
-Vbscript: SWbemContext |
Érvényes környezeti objektum. További információ: Configuration Manager környezeti minősítő hozzáadása WMI használatával. |
siteCode |
-Kezelt: String -Vbscript: String |
A helykód. |
newPollInterval |
-Kezelt: String -Vbscript: String |
Az az időköz, amellyel az ügyfél megpróbál kapcsolatba lépni a kiszolgálóval. A sztring formátumának a következőnek kell lennie: Év-hónap-nap óra:perc:másodperc "0000-00-00 00:00:00" |
newPollIntervalMinutes |
-Kezelt: String -Vbscript: String |
A sztring perceinek newPollInterval értékét jelölő érték. |
newPollIntervalHours |
-Kezelt: String -Vbscript: String |
A sztring órákat newPollInterval jelölő érték. |
newFailureRetryCount |
-Kezelt: String -Vbscript: String |
A sztring órákat newPollInterval jelölő érték. |
newFailureRetryIntervalMinutes |
-Kezelt: String -Vbscript: String |
A sztring perceinek newFailureRetryInterval értékét jelölő érték. |
newFailureRetryIntervalHours |
-Kezelt: String -Vbscript: String |
A sztring órákat newFailureInterval jelölő érték. |
newEnableDisableSoftwareDistribution |
-Kezelt: Boolean -Vbscript: Boolean |
A szoftverterjesztést engedélyező vagy letiltó érték. Engedélyezve = true Letiltva = false |
A kód fordítása
Ehhez a C#-példához a következőre van szükség:
Névterek
Rendszer
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Összeszerelés
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Robusztus programozás
A hibakezeléssel kapcsolatos további információkért lásd: A Configuration Manager hibák ismertetése.
.NET-keretrendszer Security
A Configuration Manager alkalmazások biztonságossá tételével kapcsolatos további információkért lásd: Configuration Manager szerepköralapú felügyelet.
Lásd még
Tudnivalók a szoftveres Frissítések beállításáról és konfigurálásáról
Tudnivalók a Configuration Manager webhelyvezérlő fájlról
Az Configuration Manager helyvezérlő fájl olvasása és írása felügyelt kód használatával
A Configuration Manager helyvezérlő fájl olvasása és írása WMI használatával
SMS_SCI_Component kiszolgálói WMI-osztály