Teilen über


IProgressUI::ShowMessageEx-Methode

Ab Version 2006 zeigt die ShowMessageEx -Methode ein anpassbares Dialogfeld an. Diese Methode ähnelt der IProgressUI::ShowMessage-Methode , enthält aber auch eine neue ganzzahlige Ergebnisvariable, pResult.

Syntax

[IDL]  
HRESULT ShowMessageEx(  
     BSTR pszText,  
     BSTR pszCaption,  
     ULONG uType,
     INT *pResult
);  

Parameter

pszText

Datentyp: BSTR

Qualifizierer: [in]

Der im Textkörper des Meldungsfelds angezeigte Text.

pszCaption

Datentyp: BSTR

Qualifizierer: [in]

Der Text, der in der Windows-Kopfzeile des Meldungsfelds angezeigt wird.

uType

Datentyp: ULONG

Qualifizierer: [in]

Der Wert, der einem der folgenden möglichen Werte für die Schaltflächen entspricht:

  • 0 - Ok
  • 1 – Ok/Abbrechen
  • 2 – Abbrechen/Wiederholen/Ignorieren
  • 3 - Ja/Nein/Abbrechen
  • 4 - Ja/Nein
  • 5 – Wiederholen/Abbrechen
  • 6 – Abbrechen/Wiederholen/Fortfahren

pResult

Datentyp: INT

Qualifizierer: [out]

Der Wert dieser Variablen ist ein Standardmäßiger Windows-Meldungsfeld-Rückgabewert.

Rückgabewerte

Ein HRESULT Code. Mögliche Werte sind unter anderem der folgende Wert. Es werden keine HRESULT Werte zurückgegeben, die für diese Methode spezifisch sind.

S_OK
Die Methode war erfolgreich.

Verwenden Sie den pResult-Parameter , um die Antwort des Benutzers auf das Meldungsfeld auszuwerten.

Beispiel

Im folgenden PowerShell-Skriptbeispiel wird die Verwendung dieser Methode veranschaulicht:

$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'
}

Sie können ein Skript wie dieses im Schritt PowerShell-Skript ausführen in der Tasksequenz verwenden. Wenn der Benutzer im benutzerdefinierten Fenster Ja auswählt, erstellt das Skript eine benutzerdefinierte Tasksequenzvariable TS-UserPressedButton mit dem Wert Yes. Sie können diese Tasksequenzvariable dann in anderen Skripts oder als Bedingung für andere Tasksequenzschritte verwenden.

Siehe auch