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

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

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

IProgressUI::ShowActionProgress 는 TSProgressUI.exe의 out-of-process COM 개체인 COM 클래스인 ProgressUI에서 구현 됩니다.

작업 순서 환경의 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 개체 만들기

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

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

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

필수 환경 변수 가져오기

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

IProgressUI:: ShowActionProgress 호출

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

참고 항목

IProgressUI:: ShowActionProgress ProgressUI