Método IProgressUI::ShowMessageEx
A partir da versão 2006, o ShowMessageEx
método exibe uma caixa de diálogo personalizável. Esse método é semelhante ao método IProgressUI::ShowMessage , mas também inclui uma nova variável de resultado inteiro, pResult.
Sintaxe
[IDL]
HRESULT ShowMessageEx(
BSTR pszText,
BSTR pszCaption,
ULONG uType,
INT *pResult
);
Parâmetros
pszText
Tipo de dados: BSTR
Qualificadores: [in]
O texto exibido no corpo da caixa de mensagens.
pszCaption
Tipo de dados: BSTR
Qualificadores: [in]
O texto exibido no cabeçalho de janelas da caixa de mensagens.
uType
Tipo de dados: ULONG
Qualificadores: [in]
O valor correspondente a um dos seguintes valores possíveis para os botões:
- 0 - Ok
- 1 – Ok/Cancelar
- 2 - Abortar/repetir/ignorar
- 3 – Sim/Não/Cancelar
- 4 – Sim/Não
- 5 – Repetir/cancelar
- 6 – Cancelar/Tentar novamente/Continuar
pResult
Tipo de dados: INT
Qualificadores: [out]
O valor dessa variável é um valor de retorno padrão da caixa de mensagens do Windows.
Valores de retorno
Um HRESULT
código. Os valores possíveis incluem, mas não se limitam a, o valor a seguir. Não há HRESULT
valores retornados que sejam específicos para esse método.
S_OK
O método foi bem-sucedido.
Para avaliar a resposta do usuário à caixa de mensagens, use o parâmetro pResult .
Exemplo
O seguinte exemplo de script do PowerShell mostra como 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'
}
Você pode usar um script como este na etapa Executar Script do PowerShell na sequência de tarefas. Se o usuário selecionar Sim na janela personalizada, o script criará uma variável de sequência de tarefas personalizada TS-UserPressedButton com um valor de Yes
. Em seguida, você pode usar essa variável de sequência de tarefas em outros scripts ou como condição em outras etapas da sequência de tarefas.