使用Powershell从弹出窗口中取消脚本

时间:2014-12-15 16:07:59

标签: powershell powercli

我正在编写一些PowerCLI并希望用户从提供的弹出窗口中取消脚本。

$path = "$home\Desktop\deploy.csv"
$a = new-object -comobject wscript.shell

If (Test-Path $path ) {
    $b = $a.popup("This file already exists on your Desktop and will be overwritten",0,"PowerCLI Script",1)
    }

} Else {

    echo $null >> $home\Desktop\deploy.csv
}

弹出窗口提供了一个取消和确定选项,我需要添加什么才能让用户取消脚本以不覆盖现有的deploy.csv文件?我发现$MainForm.Close()但我不确定如何构造语法,如果这是实现这种事情的最佳方法。

1 个答案:

答案 0 :(得分:2)

您可以做的是评估存储在$b中的弹出窗口返回的值。如果值为2,则表示用户单击“取消”。然后你就可以退出。

$path = "$home\Desktop\deploy.csv"
$a = new-object -comobject wscript.shell

If (Test-Path $path ) 
{
    $b = $a.popup("This file already exists on your Desktop and will be overwritten",0,"PowerCLI Script",1)

    if ($b -eq 2)
    {
        exit
    }
} 
Else 
{
    echo $null >> $home\Desktop\deploy.csv
}

PS:我还修复了代码中的几个问题。除非这是较大代码的一部分,否则Else语句无法处理。