-1

我将要求最终用户使用 Outlook.exe /CleanAutoCompleteCacheOutlook 中的命令清理他们的缓存地址。我可以创建一个批处理文件并要求他们单击它。它可以工作,但在继续之前,他们应该收到弹出警报,运行此文件将从缓存中删除所有地址。

4

3 回答 3

1

如果您需要messagebox,可以将其添加到您的 powershell 脚本中:

Add-Type -AssemblyName System.Windows.Forms 
$result = [System.Windows.Forms.MessageBox]::Show("if you run this file it will delete all addresses from your cache","Warning", 4)
if ($result -eq "Yes" )
{
  ...do work...
}
else
{
 ..do some other stuff..
}
于 2013-01-23T10:59:05.390 回答
0

所以这里有一个小 powershell 脚本:

$a = new-object -comobject wscript.shell 
$intAnswer = $a.popup("INFORM USER HERE", 0,"WARNING",1) 
If ($intAnswer -eq 6)
{ 
    //USER OK
} 
else 
{ 
    //USER CANCEL
} 

在这里阅读

于 2013-01-23T11:04:22.050 回答
0

在 PowerShell 中,您可以创建一个自定义确认对话框,如下所示

param([string]$title="Confirm",[string]$message="Are you sure?")
$choiceYes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes", "Answer Yes."
$choiceNo = New-Object System.Management.Automation.Host.ChoiceDescription "&No", "Answer No."
$options = [System.Management.Automation.Host.ChoiceDescription[]]($choiceYes, $choiceNo)
$result = $host.ui.PromptForChoice($title, $message, $options, 1)
switch ($result)
{
    0 
    {
        Return $true
    }

    1 
    {
        Return $false
    }
}
于 2013-01-23T10:55:33.067 回答