我正在编写一些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()
但我不确定如何构造语法,如果这是实现这种事情的最佳方法。
答案 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
语句无法处理。