다음을 통해 공유


보고 Configuration Manager 사용자 지정 작업 진행률 정보

사용자 지정 작업이 Configuration Manager 클라이언트에서 실행되는 동안 진행률 표시기를 표시하는 데 사용되는 진행률 정보를 보고할 수 있습니다.

COM 자동화 인터페이스인 IProgressUI::ShowActionProgress를 사용하여 작업 순서 환경에 진행률 정보를 보고하고 진행률 표시기를 표시합니다.

IProgressUI::ShowActionProgress 는 com 클래스 ProgressUI에서 구현되며, 이는 TSProgressUI.exe out-of-process COM 개체입니다.

작업 순서 환경의 ProgressUI

작업 순서가 실행되기 전에 가 ProgressUI 등록되고 작업 순서가 완료되면 등록이 취소됩니다. 원본 운영 체제에서 은 ProgressUI 로그온한 사용자 자격 증명으로 실행됩니다. 작업 순서가 실행될 때 로그인한 사용자가 없으면 COM 개체에 대한 등록이 실패합니다. 대상 운영 체제 및 Windows PE ProgressUI 에서는 시스템 계정으로 실행됩니다.

IProgressUI::ShowActionProgress 호출

사용자 지정 작업에서 다음을 수행하여 사용자 지정 작업의 진행률을 보고하고 진행률 표시기를 표시해야 합니다.

참고

일반적으로 작업을 실행하는 데 1분 이상 걸리는 경우 진행률 정보를 보고해야 합니다.

진행률 표시기를 표시할지 여부 결정

다음 논리를 사용하여 환경 변수를 사용하여 진행률 표시기를 표시해야 하는지 여부를 확인할 수 있습니다.

WindowsPE( _SMSTSInWinPE == "true")에서 실행하는 경우 또는

설치 후 전체 운영 체제에서 실행 중인 경우(_SMSTSReturnToGINA=="true") 또는

작업 순서가 미디어에서 시작되는 경우(_SMSTSLaunchMode "CD", "DVD" 또는 "USB") 또는

작업 순서가 독립 실행형 모드(_SMSTSStandAloneMode=="true")에서 실행되는 경우 또는

표시 진행률 UI 플래그(=_SMSTSShowProgressUI = "true")가 설정된 경우 진행률 표시기가 표시되어야 합니다. 그렇지 않으면 표시해서는 안 됩니다.

COM ProgressUI 개체 만들기

COM 개체에서 ProgressUI 사용하는 것과 동일한 기술을 사용하여 개체를 만듭니다. C++에서는 를 사용합니다 CoCreateInstance. C#에서 SMS TSE Progress UI 에 대한 참조를 추가하고 소스 코드에서 클래스의 인스턴스를 ProgressUILib.ProgressUIClass 만듭니다.

VBScript에서 Microsoft.SMS를 사용하여 를 호출 CreateObject합니다. TsProgressUI.

VBSript 및 C#에서 COM 개체를 만드는 예제는 실행 중인 Configuration Manager 작업 순서에서 작업 순서 변수를 사용하는 방법을 참조하세요.

필수 환경 변수 가져오기

여러 환경 변수에는 메서드에 IProgressUI::ShowActionProgress 전달해야 하는 정보가 포함되어 있습니다. 예를 들어 매개 변수에 pszOrgName 필요한 조직 이름은 환경 변수 _SMSTSOrgName에서 사용할 수 있습니다. 자세한 내용은 IProgressUI::ShowActionProgress를 참조하세요. 작업 순서 환경 변수를 읽는 방법에 대한 자세한 내용은 실행 중인 Configuration Manager 작업 순서에서 작업 순서 변수를 사용하는 방법을 참조하세요.

IProgressUI::ShowActionProgress 호출

를 호출 IProgressUI::ShowActionProgress 하여 환경 변수에서 검색된 정보를 사용하여 진행률 표시기를 표시합니다. 현재 백분율 진행률을 전달하려면 매개 변수 uActionExecStepuActionExecMaxStep를 사용합니다. 예를 들어 의 값 2를 전달하고 의 uActionExecStepuActionExecMaxStep값 10을 전달하는 경우 작업의 완료율은 20%입니다.

참고 항목

IProgressUI::ShowActionProgressProgressUI