Informace o vytváření sestav Configuration Manager průběhu vlastních akcí
Když je na Configuration Manager klientovi spuštěná vlastní akce, může hlásit informace o průběhu, které se používají k zobrazení indikátoru průběhu.
Rozhraní pro automatizaci modelu COM , IProgressUI::ShowActionProgress, slouží k hlášení informací o průběhu do prostředí pořadí úkolů a k zobrazení indikátoru průběhu.
IProgressUI::ShowActionProgress
je implementovaný ve třídě modelu COM ProgressUI, což je mimoprocesový objekt com v TSProgressUI.exe.
ProgressUI v prostředí pořadí úloh
Před spuštěním ProgressUI
pořadí úkolů se zaregistruje a po dokončení pořadí úkolů se jeho registrace zruší. Ve zdrojovém operačním systému se ProgressUI
spouští pod přihlašovacími údaji přihlášeného uživatele. Pokud není při spuštění pořadí úkolů přihlášen žádný uživatel, registrace objektu COM selže. V cílovém operačním systému a v prostředí Windows PE ProgressUI
běží pod systémovým účtem.
Volání IProgressUI::ShowActionProgress
Ve vlastní akci musíte provést následující kroky, abyste nahlásili průběh vlastní akce a zobrazili indikátor průběhu.
Poznámka
Obvykle byste měli hlásit informace o průběhu, pokud spuštění akce trvá déle než jednu minutu.
Určení, jestli se má zobrazit indikátor průběhu
Pomocí následující logiky můžete pomocí proměnných prostředí určit, jestli se má zobrazit indikátor průběhu.
Pokud používáte windowsPE ( _SMSTSInWinPE
== "true") nebo
Pokud po instalaci používáte úplný operační systém (_SMSTSReturnToGINA
="true"), nebo
Pokud je pořadí úkolů spuštěné z média (_SMSTSLaunchMode
je "CD", "DVD" nebo "USB"), nebo
Pokud pořadí úkolů běží v samostatném režimu (_SMSTSStandAloneMode
="true"), nebo
Pokud je příznak zobrazení průběhu uživatelského rozhraní nastavený (_SMSTSShowProgressUI
== "true"), měl by se zobrazit indikátor průběhu. V opačném případě by se neměl zobrazovat.
Vytvoření objektu COM ProgressUI
Objekt vytvoříte ProgressUI
pomocí stejné techniky, kterou používáte s libovolným objektem COM. V jazyce C++ použijete CoCreateInstance
. V jazyce C# přidáte odkaz na uživatelské rozhraní PRŮBĚHU odstraňováním dotazů sms a ve zdrojovém kódu vytvoříte instanci ProgressUILib.ProgressUIClass
třídy.
V jazyce VBScript volejte CreateObject
pomocí Microsoft.SMS. TsProgressUI.
Příklad vytvoření objektu COM ve VBSriptu a C# najdete v tématu Použití proměnných pořadí úkolů ve spuštěném Configuration Manager pořadí úkolů.
Získání požadovaných proměnných prostředí
Několik proměnných prostředí obsahuje informace, které musíte předat IProgressUI::ShowActionProgress
metodě. Například název organizace, který je potřebný pro pszOrgName
parametr, je k dispozici z proměnné _SMSTSOrgName
prostředí . Další informace najdete v tématu IProgressUI::ShowActionProgress. Informace o čtení proměnných prostředí pořadí úkolů najdete v tématu Použití proměnných pořadí úkolů ve spuštěném Configuration Manager pořadí úkolů.
Volání IProgressUI::ShowActionProgress
Voláním IProgressUI::ShowActionProgress
zobrazíte indikátor průběhu pomocí informací načtených z proměnných prostředí. Pokud chcete předat aktuální procentuální průběh, použijte parametry uActionExecStep
a uActionExecMaxStep
. Pokud například předáte hodnotu 2 in uActionExecStep
a předáte hodnotu 10 v uActionExecMaxStep
, pak procento dokončení akce je 20 procent.