IProgressUI::ShowMessageEx メソッド
バージョン 2006 以降では、メソッドに ShowMessageEx
カスタマイズ可能なダイアログ ボックスが表示されます。 このメソッドは IProgressUI::ShowMessage メソッドに似ていますが、新しい整数の結果変数 pResult も含まれています。
構文
[IDL]
HRESULT ShowMessageEx(
BSTR pszText,
BSTR pszCaption,
ULONG uType,
INT *pResult
);
パラメーター
pszText
データ型: BSTR
修飾子: [in]
メッセージ ボックスの本文に表示されるテキスト。
pszCaption
データ型: BSTR
修飾子: [in]
メッセージ ボックスのウィンドウ ヘッダーに表示されるテキスト。
uType
データ型: ULONG
修飾子: [in]
ボタンに対して次のいずれかの可能な値に対応する値。
- 0 - Ok
- 1 - Ok/Cancel
- 2 - 中止/再試行/無視
- 3 - はい/いいえ/キャンセル
- 4 - はい/いいえ
- 5 - 再試行/キャンセル
- 6 - キャンセル/再試行/続行
pResult
データ型: INT
修飾子: [out]
この変数の値は、標準の Windows メッセージ ボックスの戻り値です。
戻り値
HRESULT
コード。 指定できる値には、次の値が含まれますが、これらに限定されません。 このメソッドに固有の値は返されません HRESULT
。
S_OK
メソッドは成功しました。
メッセージ ボックスに対するユーザーの応答を評価するには、 pResult パラメーターを使用します。
例
次の PowerShell スクリプト サンプルは、このメソッドの使用方法を示しています。
$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'
}
このようなスクリプトは、タスク シーケンスの PowerShell スクリプトの実行 ステップで使用できます。 ユーザーがカスタム ウィンドウで [はい] を選択した場合、スクリプトによって、値Yes
が のカスタム タスク シーケンス変数 TS-UserPressedButton が作成されます。 その後、他のスクリプトで、または他のタスク シーケンス ステップの条件として、このタスク シーケンス変数を使用できます。