Kuidas parandada, et Try Catch PowerShell ei tööta?

Selle parandamiseks otsige vale süntaksit

  • Kui Try-Catch PowerShellis ei tööta, peate kontrollima valed süntaksi- ja veatoiminguväärtused.
  • See juhend selgitab erinevaid viise probleemi lahendamiseks.
Proovige tabada, et powershell ei tööta

XINSTALLIMINE Klõpsates ALLALAADIMISE FAILIL

Erinevate arvutiprobleemide lahendamiseks soovitame Restoro PC Repair Tooli:See tarkvara parandab tavalised arvutivead, kaitseb teid failide kadumise, pahavara ja riistvaratõrgete eest ning optimeerib teie arvuti maksimaalse jõudluse saavutamiseks. Parandage arvutiprobleemid ja eemaldage viirused kohe kolme lihtsa sammuga:
  1. Laadige alla Restoro PC Repair Tool mis on kaasas patenteeritud tehnoloogiatega (patent olemas siin).
  2. Klõpsake Alusta skannimist et leida Windowsi probleeme, mis võivad arvutiprobleeme põhjustada.
  3. Klõpsake Parandage kõik arvuti turvalisust ja jõudlust mõjutavate probleemide lahendamiseks.
  • Restoro on alla laadinud 0 lugejad sel kuul.

Try-Catch avaldus sisse PowerShell käsitleb teie koodi vigu ja erandeid. Kui Try-Catch ei tööta PowerShelli erandil, võib see olla masendav.

Selles juhendis käsitleme kõiki probleemi lahendamise viise ja probleemi tõenäolisi põhjuseid. Alustame!

Mis põhjustab Try-Catch'i probleemi PowerShellis ei tööta?

Põhjuseid, miks avaldus PowerShellis ei tööta, võib olla mitu. Siin on mõned levinumad.

  • Vaikimisi ErrorAction määratud – Kui ErrorAction on seatud väärtusele Jätka, siis Try-Catch ei tööta ootuspäraselt.
  • Süntaksivead – Kui kasutatav süntaks on vale, vorming on vale või puuduvad märksõnad, siis Try-Catch ei tööta.
  • Cmdleti või funktsiooni käitumine – Mõned funktsioonid ja cmdlet-käsud on varustatud veakäsitlusega, mis ei pruugi Try-Catchiga ühilduda.
  • Vale loogika või muutujate kasutamine – Kui seda kasutatakse mittesihipäraselt muutujad või vale loogika, siis Try-Catch ei tööta.

Mida teha, kui Try-Catch PowerShellis ei tööta?

1. Kontrollige süntaksit

  1. Esiteks peate kontrollima, kas kasutasite kasutatava PowerShelli versiooni jaoks õiget süntaksit.
  2. Järgmisena kontrollige, kas olete proovi ja püüdmise plokid paigutanud õigesse järjestusse.
  3. Allpool on mainitud Try-Catchi põhisüntaksit. Asendage siin käitamiseks # kood koodiga ja # veakäsitluskood siin veakäsitluskoodiga:

proovige {
# kood siin käitamiseks
}
Catch {
# veakäsitluskood siin
}

2. Kontrollige, kas teete konkreetse vea vahele 

Peate kontrollima, kas püüate kinni konkreetsed vead, mida soovite käsitleda, mitte kõik vead. Sama tegemiseks järgige neid samme.

  1. Vajutage nuppu Windows võti, tüüp PowerShell, ja klõpsake Käivitage administraatorina.Skript
  2. Vea püüdmiseks peate kasutama $ muutuja Catch plokis, et pääseda juurde teabele visatud vea kohta. Parema mõistmiseks vaatame sama näidet: proovige {
    Get-ChildItem -Path C:\DoesNotExist
    }
    Catch {
    if ($_.Erand. GetType().Name -eq "DirectoryNotFoundException") {
    Write-Output "Kataloogi ei leitud."
    }
    else {
    viska $_.Erand|
    }
    }

3. Määrake ErrorAction väärtus 

ErrorActioni vaikeväärtus on Continue; aga selleks, et Try-Catch töötaks, peate ErrorAction väärtuseks määrama Stop. Selleks toimige järgmiselt.

  1. Avatud PowerShell administraatorina.
  2. Üksikute cmdlet-käskude puhul peate kasutama cmdlet-käsku Set-StrictMode või parameetrit ErrorAction. Et seda paremini mõista, vaatame näidet:
Proovige püüda rakendusega ErrorAction Stop PowerShell

proovige {
Get-ChildItem -Path C:\DoesNotExist -ErrorAction Stop
}
Catch {
Kirjutamisväljund $_.Erand. Sõnum
}

Loe selle teema kohta lähemalt
  • Siit saate teada, kuidas oma BitLockeri võtit OneDrive'ist taastada
  • Telefonilingi kasutamine iPhone'i jaoks opsüsteemis Windows 11
  • DaVinci suure protsessori kasutuse lahendamine: kuidas seda vähendada

4. Kasutage õiget erandi tüüpi

Try-Catchi kasutamisel on oluline kasutada õigeid erandeid, kuna see suudab käsitleda ainult süsteemi erandeid. Erandi tüüp. Kui olete kasutanud mitte-süsteemi. Erand vead, siis Try-Catch ei tööta.

Mis puudutab mittesüsteemi. Erandiks peate kasutama NET-raamistiku veakäsitlusmehhanismi või tõrke tabama.

5. Vältige skripti lõpetamist 

Kui teie skript lõpetatakse enne Catch-ploki jõudmist, ei saa Try-Cach veaga hakkama. Skripti lõpetamise vältimiseks toimige järgmiselt.

  1. Käivitage PowerShell administraatori õigustega.
  2. Peate kasutama Jätka avaldus pärast Saagi blokk. Mõistame seda näite abil:
proovi lõpuks kinni püüda

proovige {
Get-ChildItem -Path C:\DoesNotExist
}
Catch {
Kirjutamisväljund $_.Erand. Sõnum
Jätka
}

6. Kasutage nuppu Proovi-Püüa-Lõpuks

 Kui Try-Catch-lause ikka ei tööta, võite selle asemel kasutada konstruktsiooni Try-Catch-Finally. See tagab, et teie kood töötab lõpuni, isegi kui tehakse erand.

  1. Avatud PowerShell administraatorina.
  2. Tippige käsk koos Proovi-Püüa-Lõpuks. Siin on näide skripti paremaks mõistmiseks:

proovige {
# Sinu kood siin

Catch [System. Erand] {
# Siin on erandite käsitlemise kood

lõpuks {
 # Puhastuskood siin
}

Niisiis, need on viisid, kuidas saate PowerShellis probleemi Try Catch ei tööta. Kui teil on Try-Catchiga seotud küsimusi, mainige neid allolevas kommentaaride jaotises. Aitame hea meelega!

Kui soovite teada, kuidas peatada PowerShelli sulgemine pärast skripti käivitamist, saate seda lugeda.

Kas teil on endiselt probleeme? Parandage need selle tööriistaga:

SPONSEERITUD

Kui ülaltoodud nõuanded ei ole teie probleemi lahendanud, võib teie arvutis esineda sügavamaid Windowsi probleeme. Me soovitame laadige alla see arvutiparandustööriist (hinnatud saidil TrustPilot.com suurepäraseks), et neid hõlpsalt lahendada. Pärast installimist klõpsake lihtsalt nuppu Alusta skannimist nuppu ja seejärel vajutada Parandage kõik.

Parandus: PowerShell on lakanud töötamast või ei avane probleem operatsioonisüsteemis Windows 11,10

Parandus: PowerShell on lakanud töötamast või ei avane probleem operatsioonisüsteemis Windows 11,10PowershellWindows 10Windows 11

7. märts 2022 Kõrval Namratha NayakPaljud kasutajad on teatanud Windows PowerShelli probleemist, mille korral see lakkab töötamast või ei avane üldse. Üks levinumaid põhjuseid, miks näha PowerShell...

Loe rohkem
Parandus: skriptide käitamine on selles süsteemis Windows 11, 10 PowerShellis keelatud

Parandus: skriptide käitamine on selles süsteemis Windows 11, 10 PowerShellis keelatudPowershellWindows 10Windows 11

PowerShell on hea ja täiustatud platvormideülene ülesannete automatiseerimise lahendus. PowerShelli skripti loomine ja käitamine Windowsi süsteemis on tavaliselt väga lihtne. Kuid teid võib takista...

Loe rohkem
Parandus: Windows PowerShell avaneb käivitusprobleemi korral Windows 11 või 10 puhul

Parandus: Windows PowerShell avaneb käivitusprobleemi korral Windows 11 või 10 puhulPowershellWindows 10Windows 11

PowerShell annab kasutajatele võimaluse automatiseerida erinevaid haldusülesandeid ja hallata süsteemi konfiguratsioone, millele käsuviiba kaudu juurde ei pääse. See sarnaneb käsuviibaga, kuid on t...

Loe rohkem