【问题标题】:Cancel script from popup with Powershell使用 Powershell 从弹出窗口中取消脚本
【发布时间】:2014-12-15 16:07:58
【问题描述】:

我正在编写一些 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(),但我不确定如何构造语法,以及这是否是实现这一目标的最佳方式。

【问题讨论】:

    标签: powershell powercli


    【解决方案1】:

    您可以做的是评估存储在$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 语句。

    【讨论】:

    • 查看Popup method documentation 了解可能的返回值的完整列表。
    • 谢谢培根当你回复时我正在寻找那个链接:)
    • @MickyBalladelli 好吧,我正在写我的相同答案,当你的答案出现时,我已经找到了链接! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 2016-11-03
    • 2014-10-06
    • 1970-01-01
    • 2022-01-22
    相关资源
    最近更新 更多