IProgressUI::ShowMessageEx (método)
A partir de la versión 2006, el ShowMessageEx
método muestra un cuadro de diálogo personalizable. Este método es similar al método IProgressUI::ShowMessage , pero también incluye una nueva variable de resultado entero, pResult.
Sintaxis
[IDL]
HRESULT ShowMessageEx(
BSTR pszText,
BSTR pszCaption,
ULONG uType,
INT *pResult
);
Parámetros
pszText
Tipo de datos: BSTR
Calificadores: [in]
Texto que se muestra en el cuerpo del cuadro de mensaje.
pszCaption
Tipo de datos: BSTR
Calificadores: [in]
Texto que se muestra en el encabezado de ventanas del cuadro de mensaje.
uType
Tipo de datos: ULONG
Calificadores: [in]
Valor correspondiente a uno de los siguientes valores posibles para los botones:
- 0 - Ok
- 1 - Aceptar/Cancelar
- 2 - Anulación, reintento o omisión
- 3 - Sí/No/Cancelar
- 4 - Sí/No
- 5- Reintentar o cancelar
- 6 - Cancelar/intentarlo de nuevo/Continuar
pResult
Tipo de datos: INT
Calificadores: [out]
El valor de esta variable es un valor devuelto estándar del cuadro de mensaje de Windows.
Valores devueltos
Un HRESULT
código. Los valores posibles incluyen, pero no se limitan a, el siguiente valor. No se HRESULT
devuelven valores específicos de este método.
S_OK
El método se realizó correctamente.
Para evaluar la respuesta del usuario al cuadro de mensaje, use el parámetro pResult .
Ejemplo
En el siguiente ejemplo de script de PowerShell se muestra cómo usar este método:
$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'
}
Puede usar un script como este en el paso Ejecutar script de PowerShell de la secuencia de tareas. Si el usuario selecciona Sí en la ventana personalizada, el script crea una variable de secuencia de tareas personalizada TS-UserPressedButton con un valor de Yes
. A continuación, puede usar esta variable de secuencia de tareas en otros scripts o como condición en otros pasos de secuencia de tareas.