在“停止操作”上执行一些事件

Perform some event on "Stop Operation

我希望执行一些对停止脚本采取行动的功能

通过点击

这可能吗??

我正在使用 .Net 对象,其中一些对象必须执行 Dispose 才能关闭它们。 我想知道是否可以这样做?

如果我理解你的问题,你想知道你是否可以以某种方式捕获停止按钮的按下(中断信号的接收)。我不知道在 powershell 中有什么方法可以注意到中断信号,但是您可以使用 finally 块来确保调用 Dispose 代码。这是我的简单测试:

try{
    while($true)
    {
        Write-Host "In try block . . . "
        Start-Sleep 1
    }
}
catch
{
       Write-Host "In catch block"
}
finally
{
       Write-Host "In finally block"
}

当我从 ISE 运行 并按下停止按钮(或按下 ctrl-C)时,我得到:

# C:\Temp> .\stopEx.ps1
In try block . . . 
In try block . . . 
In finally block