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.
Az operációs rendszer központi telepítésének feladatütemezését Configuration Manager egy rekurzív módszerrel számba kell adnia a feladatütemezési lépések és csoportok vizsgálatához.
Feladatütemezés lépéseinek számbavétele
Állítson be egy kapcsolatot az SMS-szolgáltatóval. További információ: Az SMS-szolgáltató alapjai.
Szerezzen be egy érvényes feladatütemezési SMS_TaskSequence objektumot. További információ: Operációs rendszer központi telepítési feladatütemezésének létrehozása
A műveletnevek (SMS_TaskSequence_Action) megjelenítéséhez végezze el a lépések számbavételét. A rekurzióval hozzáférhet a talált csoportokhoz (SMS_TaskSequence_Group), és megjelenítheti a műveleteiket.
Példa
Az alábbi példa egy feladatütemezés műveleteit és csoportjait mutatja be.
A mintakód meghívásával kapcsolatos információkért lásd: Configuration Manager Kódrészletek hívása.
Sub RecurseTaskSequenceSteps(taskSequence, indent)
Dim osdStep
Dim i
' Indent each new group.
for each osdStep in taskSequence.Steps
for i=0 to indent
WScript.StdOut.Write " "
next
If osdStep.SystemProperties_("__CLASS")="SMS_TaskSequence_Group" Then
wscript.StdOut.Write "Group: "
End If
WScript.Echo osdStep.Name
' Recurse into each group found.
If osdStep.SystemProperties_("__CLASS")="SMS_TaskSequence_Group" Then
If IsNull(osdStep.Steps) Then
Wscript.Echo "No steps"
Else
Call RecurseTaskSequenceSteps (osdStep, indent+3)
End If
End If
Next
End Sub
public void RecurseTaskSequenceSteps(
IResultObject taskSequence,
int indent)
{
try
{
// The array of SMS_TaskSequence_Steps.
List<IResultObject> steps = taskSequence.GetArrayItems("Steps");
foreach (IResultObject ro in steps)
{
for (int i = 0; i < indent; i++)
{
Console.Write(" ");
}
if (ro["__CLASS"].StringValue == "SMS_TaskSequence_Group")
{
Console.Write("Group: ");
}
Console.WriteLine(ro["Name"].StringValue);
// Child groups that are found. Use recursion to view them.
if (ro["__CLASS"].StringValue == "SMS_TaskSequence_Group")
{
this.RecurseTaskSequenceSteps(ro, indent + 3);
}
}
}
catch (SmsException e)
{
Console.WriteLine("Failed To enumerate task sequence items: " + e.Message);
throw;
}
}
A példametódus a következő paraméterekkel rendelkezik:
Paraméter | Típus | Leírás |
---|---|---|
taskSequence |
-Kezelt: IResultObject - VBScript: SWbemObject |
Érvényes feladatütemezés (SMS_TaskSequence ). A csoport hozzá lesz adva ehhez a feladatütemezéshez. |
indent |
-Kezelt: Integer -Vbscript: Integer |
A behúzás a gyermekcsoportok konzolkimenetének szóközzel való beállítására szolgál. |
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
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
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
Objektumok áttekintéseOperációs rendszer központi telepítési feladatütemezési műveletének hozzáadása
Csatlakozás SMS-szolgáltatóhoz Configuration Manager felügyelt kód használatával
Csatlakozás SMS-szolgáltatóhoz Configuration Manager WMI használatával
Feladatütemezés áttekintése