운영 체제 배포 작업 순서 작업을 삭제하는 방법
작업 순서 단계에서 작업을 제거하여 Configuration Manager 운영 체제 배포 작업 순서 작업을 삭제합니다.
작업 순서 작업을 삭제하려면
SMS 공급자에 대한 연결을 설정합니다. 자세한 내용은 SMS 공급자 기본 사항을 참조하세요.
작업 순서(SMS_TaskSequence) 개체를 가져옵니다. 자세한 내용은 운영 체제 배포 작업 순서를 만드는 방법을 참조하세요.
배열 속성에서
SMS_TaskSequence.Steps
작업을 제거합니다.
예시
다음 예제 메서드는 작업 순서에서 작업을 삭제합니다. 작업은 WMI(Windows Management Instrumentation) 속성 __SUPERCLASS 확인하여 SMS_TaskSequenceAction 파생되는지 확인하여 작업으로 식별됩니다.
샘플 코드 호출에 대한 자세한 내용은 코드 조각 Configuration Manager 호출을 참조하세요.
Sub RemoveAction (connection, taskSequence, actionName)
Dim i
Dim newArray
Dim actionStep
If taskSequence.SystemProperties_("__CLASS")<>"SMS_TaskSequence" Then
wscript.echo "Not a task sequence"
Exit Sub
End If
if IsNull(taskSequence.Steps) Then
Wscript.Echo "No steps"
Exit Sub
End If
' Create an array to hold copied steps.
newArray = Array(taskSequence.Steps)
ReDim newArray(UBound(taskSequence.Steps))
' Copy the steps into the array and remove the matching action.
i=0
for each actionStep in taskSequence.Steps
If actionStep.Name = actionName and _
actionStep.SystemProperties_("__SUPERCLASS") = "SMS_TaskSequence_Action" Then
ReDim preserve newArray(UBound(newArray)-1) ' shrink the Array
else
Set newArray(i)=actionStep ' copy it
i=i+1
End If
Next
' Assign new array back to the task sequence.
taskSequence.Steps=newArray
End Sub
public void RemoveAction(
IResultObject taskSequence,
string actionName)
{
try
{
// Get a list of steps.
List<IResultObject> actionSteps = taskSequence.GetArrayItems("Steps");
// Find the action to be deleted.
foreach (IResultObject actionStep in actionSteps)
{
if (actionStep["Name"].StringValue == actionName && actionStep["__SUPERCLASS"].StringValue == "SMS_TaskSequence_Action")
{
// Delete the action.
actionSteps.Remove(actionStep);
break;
}
}
// Update the task sequence.
taskSequence.SetArrayItems("Steps", actionSteps);
}
catch (Exception e)
{
Console.WriteLine("Failed to remove action: " + e.Message);
throw;
}
}
예제 메서드에는 다음 매개 변수가 있습니다.
매개 변수 | 형식 | 설명 |
---|---|---|
Connection |
-관리:WqlConnectionManager - VBScript: SWbemServices |
SMS 공급자에 대한 유효한 연결입니다. |
taskSequence |
-관리: IResultObject - VBScript: SWbemObject |
삭제할 작업이 포함된 작업 순서입니다. |
actionName |
-관리: String -Vbscript: String |
삭제할 작업의 이름입니다. 이 속성에서 SMS_TaskSequenceAction.Name 가져올 수 있습니다. |
코드 컴파일
이 C# 예제에는 다음이 필요합니다.
네임 스페이스
시스템
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
어셈블리
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
강력한 프로그래밍
오류 처리에 대한 자세한 내용은 Configuration Manager 오류 정보를 참조하세요.
.NET Framework 보안
Configuration Manager 애플리케이션 보안에 대한 자세한 내용은 역할 기반 관리 Configuration Manager 참조하세요.
참고 항목
개체 개요운영 체제 배포 작업 순서 작업을 추가하는 방법
관리 코드를 사용하여 Configuration Manager SMS 공급자에 연결하는 방법
WMI를 사용하여 Configuration Manager SMS 공급자에 연결하는 방법
작업 순서 개요