Самый простой способ сделать это - создать объект PS с известным типом исключения. например:
try
{
$obj = New-Object System.AccessViolationException
throw $obj
}
catch [System.AccessViolationException]
{
"do stuff"
}
Здесь - список всех исключений .net. Я не знаю, охватывает ли это все. Но все, что вам нужно сделать, это создать его с New-object
, затем throw
это как shwon и catch
это где вы хотите. Вы можете выбрать любое произвольное исключение и выбросить его.
Бросок строки по умолчанию сгенерирует System.Management.Automation.RuntimeException
Если вы хотите использовать исключительный тип, который уже не существует, я не уверен, как это сделать без создания класса.