Metoda IProgressUI::ShowMessageEx
Od verze 2006 ShowMessageEx
metoda zobrazí přizpůsobitelné dialogové okno. Tato metoda je podobná metodě IProgressUI::ShowMessage , ale obsahuje také novou celočíselnou proměnnou výsledku , pResult.
Syntaxe
[IDL]
HRESULT ShowMessageEx(
BSTR pszText,
BSTR pszCaption,
ULONG uType,
INT *pResult
);
Parametry
pszText
Datový typ: BSTR
Kvalifikátory: [v]
Text zobrazený v textu pole se zprávou.
pszCaption
Datový typ: BSTR
Kvalifikátory: [v]
Text zobrazený v záhlaví okna okna se zprávou.
uType
Datový typ: ULONG
Kvalifikátory: [v]
Hodnota odpovídající jedné z následujících možných hodnot tlačítek:
- 0 – Ok
- 1 – Ok/Zrušit
- 2 – Přerušení/Opakování/Ignorování
- 3 – Ano/Ne/Zrušit
- 4 – Ano/Ne
- 5. Opakovat/zrušit
- 6 – Zrušit/ Zkusit znovu / Pokračovat
pResult
Datový typ: INT
Kvalifikátory: [out]
Hodnota této proměnné je standardní návratová hodnota okna se zprávou systému Windows.
Návratové hodnoty
Kód HRESULT
. Mezi možné hodnoty patří mimo jiné následující hodnota. Nejsou vráceny žádné HRESULT
hodnoty, které jsou specifické pro tuto metodu.
S_OK
Metoda byla úspěšná.
K vyhodnocení odpovědi uživatele na okno se zprávou použijte parametr pResult .
Příklad
Následující ukázkový skript PowerShellu ukazuje, jak použít tuto metodu:
$Message = "Can you see this message?"
$Title = "Contoso IT"
$Type = 4 # Yes/No
$Output = 0
$TaskSequenceProgressUi = New-Object -ComObject "Microsoft.SMS.TSProgressUI"
$TaskSequenceProgressUi.ShowMessageEx($Message, $Title, $Type, [ref]$Output)
$TSEnv = New-Object -ComObject "Microsoft.SMS.TSEnvironment"
if ($Output -eq 6) {
$TSEnv.Value("TS-UserPressedButton") = 'Yes'
}
Podobný skript můžete použít v kroku Spustit skript PowerShellu v pořadí úloh. Pokud uživatel ve vlastním okně vybere Ano , skript vytvoří vlastní proměnnou pořadí úkolů TS-UserPressedButton s hodnotou Yes
. Tuto proměnnou pořadí úkolů pak můžete použít v jiných skriptech nebo jako podmínku pro další kroky pořadí úkolů.