Hur fixar jag Prova Catch PowerShell som inte fungerar?

För att fixa detta leta efter felaktig syntax

  • Om Try-Catch inte fungerar på PowerShell måste du leta efter felaktiga syntax- och felåtgärdsvärden.
  • Den här guiden kommer att förklara de olika sätten att lösa problemet.
Testa att fånga powershell fungerar inte

XINSTALLERA GENOM ATT KLICKA PÅ LADDA FILEN

För att fixa olika PC-problem rekommenderar vi Restoro PC Repair Tool:Denna programvara kommer att reparera vanliga datorfel, skydda dig från filförlust, skadlig programvara, maskinvarufel och optimera din dator för maximal prestanda. Fixa PC-problem och ta bort virus nu i tre enkla steg:
  1. Ladda ner Restoro PC Repair Tool som kommer med patenterad teknologi (patent tillgängligt här).
  2. Klick Starta skanning för att hitta Windows-problem som kan orsaka PC-problem.
  3. Klick Reparera allt för att åtgärda problem som påverkar din dators säkerhet och prestanda.
  • Restoro har laddats ner av 0 läsare denna månad.

Try-Catch uttalandet i PowerShell hanterar fel och undantag i din kod. Om Try-Catch inte fungerar som undantaget på PowerShell kan det vara frustrerande.

I den här guiden kommer vi att täcka alla sätt att lösa problemet tillsammans med de troliga orsakerna till problemet. Låt oss börja!

Vad orsakar problemet med att Try-Catch inte fungerar i PowerShell?

Det kan finnas olika anledningar till att uttalandet inte fungerar på PowerShell. Här är några av de vanligaste:

  • Standardfelåtgärdsuppsättning – Om ErrorAction är inställt på Fortsätt, då kommer Try-Catch inte att fungera som förväntat.
  • Syntaxfel – Om syntaxen som används är felaktig, formateringen är felaktig eller om det saknas nyckelord, kommer Try-Catch inte att fungera.
  • Cmdlet- eller funktionsbeteende – Vissa funktioner och cmdlets har sitt felhanteringsbeteende, vilket kanske inte är kompatibelt med Try-Catch.
  • Felaktig logik eller användning av variabler – Om det finns en olämplig användning av variabler eller felaktig logik, så fungerar inte Try-Catch.

Vad kan jag göra om Try-Catch inte fungerar på PowerShell?

1. Kontrollera syntax

  1. Först måste du kontrollera om du har använt rätt syntax för den version av PowerShell du använder.
  2. Kontrollera sedan att du har placerat Try and Catch-blocken i rätt ordning.
  3. Den grundläggande syntaxen för Try-Catch nämns nedan. Ersätt # kod som ska köras här med koden och # felhanteringskod här med felhanteringskoden:

Prova {
# kod att köra här
}
Fånga {
# felhanteringskod här
}

2. Kontrollera om du fångar ett specifikt fel 

Du måste verifiera om du fångar specifika fel som du vill hantera och inte alla fel. Följ dessa steg för att göra detsamma:

  1. tryck på Windows Nyckeltyp PowerShell, och klicka Kör som administratör.Manus
  2. För att fånga ett fel måste du använda $ variabel i Catch-blocket för att komma åt information om felet som kastades. Låt oss kolla exemplet på detsamma för att förstå bättre: Prova {
    Get-ChildItem -Path C:\DoesNotExist
    }
    Fånga {
    om ($_.Undantag. GetType().Name -eq "DirectoryNotFoundException") {
    Write-Output "Katalog hittades inte."
    }
    annat {
    kasta $_.Undantag|
    }
    }

3. Ställ in ErrorAction-värde 

Standardvärdet för ErrorAction är Continue; men för att Try-Catch ska fungera måste du ställa in ErrorAction-värdet på Stop. För att göra detta, följ dessa steg:

  1. Öppen PowerShell som administratör.
  2. Du måste använda Set-StrictMode cmdleten eller parametern ErrorAction på enskilda cmdlets. För att förstå det bättre, låt oss titta på ett exempel:
Prova Catch with ErrorAction Stop PowerShell

Prova {
Get-ChildItem -Path C:\DoesNotExist -ErrorAction Stop
}
Fånga {
Write-Output $_.Undantag. Meddelande
}

Läs mer om detta ämne
  • Så här återställer du din BitLocker-nyckel från OneDrive
  • Hur man använder Phone Link för iPhone på Windows 11
  • DaVinci Resolve High CPU-användning: Hur man minskar det

4. Använd rätt undantagstyp

Det är viktigt att använda korrekta undantag när du använder Try-Catch, eftersom det bara kan hantera undantag från systemet. Undantagstyp. Om du har använt icke-System. Undantagsfel, då fungerar inte Try-Catch.

När det gäller icke-System. Undantag, du måste använda NET"-ramverkets felhanteringsmekanism eller fånga felet.

5. Undvik skriptavslutning 

Om ditt skript avslutas innan det når Catch-blocket, kommer Try-Cach inte att få en chans att hantera felet. Följ dessa steg för att undvika skriptavslutning:

  1. Lansera PowerShell med administratörsrättigheter.
  2. Du måste använda Fortsätta uttalande efter Fånga blockera. Låt oss förstå det med ett exempel:
försök fånga äntligen

Prova {
Get-ChildItem -Path C:\DoesNotExist
}
Fånga {
Write-Output $_.Undantag. Meddelande
Fortsätta
}

6. Använd Try-Catch-Finally

 Om Try-Catch-satsen fortfarande inte fungerar kan du använda Try-Catch-Finally-konstruktionen istället. Detta säkerställer att din kod körs till slut, även om ett undantag görs.

  1. Öppen PowerShell som administratör.
  2. Skriv kommandot med Prova-fånga-äntligen. Här är ett exempel för att förstå manuset bättre:

Prova {
# Din kod här

Fånga [System. Undantag] {
# Undantagshanteringskod här

Till sist {
 # Rengöringskod här
}

Så det här är sätt på vilka du kan lösa problemet med att Try Catch inte fungerar på PowerShell. Om du har några frågor relaterade till Try-Catch, nämn dem i kommentarsfältet nedan. Vi hjälper gärna till!

Om du vill veta hur du stoppar PowerShell från att stängas efter att ha kört ett skript, du kan läsa detta.

Har du fortfarande problem? Fixa dem med det här verktyget:

SPONSRAD

Om råden ovan inte har löst ditt problem kan din dator uppleva djupare Windows-problem. Vi rekommenderar ladda ner detta PC-reparationsverktyg (betygsatt Great på TrustPilot.com) för att enkelt ta itu med dem. Efter installationen klickar du bara på Starta skanning knappen och tryck sedan på Reparera allt.

Fix: PowerShell Export-CSV-åtkomst till sökvägen nekas

Fix: PowerShell Export-CSV-åtkomst till sökvägen nekasMicrosoft Power ShellPowershellWindows 11

Du måste få behörigheter på administrativ nivå för att få åtkomstVissa PowerShell-användare har upplevt att de nekats åtkomst till en sökväg efter att ha angett Export-CSV-cmdleten.Det kan bero på ...

Läs mer
Windows kan inte hitta PowerShell.exe: 5 sätt att fixa det

Windows kan inte hitta PowerShell.exe: 5 sätt att fixa detPowershellWindows 11

Prova att uppdatera PowerShell till den senaste versionenWindows PowerShell är ett kraftfullt skript- och automatiseringsverktyg som låter dig utföra administrativa uppgifter inom Windows.Om du för...

Läs mer
Hur man aktiverar körande skript på Windows 10

Hur man aktiverar körande skript på Windows 10PowershellWindows 10

Du kan använda appen Inställningar för att aktivera denGenom att aktivera körande skript på Windows 10 kan du köra och köra olika typer av skript, som PowerShell-skript eller batchfiler.Du kan akti...

Läs mer