我想寫類似這樣的東西:如何讓Powershell引發函數內部生成的異常?
function Do-Something() {
Write-Host "Starting something"
Do-SomethingWhichThrowsAnException
Write-Host "Something completed successfully"
}
...
function Process-Thing() {
try {
Do-OneThing
Do-TwoThing
Do-Something
Do-SomethingElse
}
catch {
Write-Host "Exception Caught!"
}
}
而且我得到以下輸出:「捕獲到異常」
Starting something
{massive red exception text}
Something completed successfully
爲什麼我看不到?
爲什麼我會看到「某些東西已成功完成」?
是否Powershell只是而不是向堆棧或類似物拋出異常?
如果是這樣,是否有可能將它拍成提交?我必須嘗試/抓住我的每一個Do-XXXthing
函數嗎?
'$ ErrorActionPreference' – PetSerAl
我沒有看到你已經運行了'Process-Thing'函數。 調用該函數。它正在捕捉錯誤。如果您希望我可以共享屏幕截圖,並確保檢查錯誤操作首選項 –