Come risolvere Try Catch PowerShell non funziona?

Per risolvere questo problema cerca la sintassi errata

  • Se Try-Catch non funziona su PowerShell, è necessario verificare la sintassi errata e i valori dell'azione di errore.
  • Questa guida spiegherà i diversi modi per risolvere il problema.
Prova a catturare PowerShell che non funziona

XINSTALLARE CLICCANDO SUL FILE DI DOWNLOAD

Per risolvere vari problemi del PC, consigliamo Restoro PC Repair Tool:Questo software riparerà gli errori comuni del computer, ti proteggerà da perdita di file, malware, guasti hardware e ottimizzerà il tuo PC per le massime prestazioni. Risolvi i problemi del PC e rimuovi i virus ora in 3 semplici passaggi:
  1. Scarica lo strumento di riparazione per PC Restoro che viene fornito con tecnologie brevettate (brevetto disponibile Qui).
  2. Clic Inizia scansione per trovare i problemi di Windows che potrebbero causare problemi al PC.
  3. Clic Ripara tutto per risolvere i problemi che interessano la sicurezza e le prestazioni del tuo computer.
  • Restoro è stato scaricato da 0 lettori questo mese.

L'istruzione Try-Catch in PowerShell

gestisce gli errori e le eccezioni nel codice. Se Try-Catch non funziona come previsto su PowerShell, può essere frustrante.

In questa guida, tratteremo tutti i modi per risolvere il problema insieme alle probabili cause del problema. Iniziamo!

Cosa causa il problema di Try-Catch non funzionante in PowerShell?

Potrebbero esserci vari motivi per cui l'istruzione non funziona su PowerShell. Ecco alcuni dei più comuni:

  • Predefinito ErrorAction impostato - Se la ErrorAction è impostato su Continua, allora Try-Catch non funzionerà come previsto.
  • Errori di sintassi – Se la sintassi utilizzata non è corretta, la formattazione non è corretta o mancano parole chiave, Try-Catch non funzionerà.
  • Cmdlet o comportamento della funzione – Alcune funzioni e cmdlet vengono forniti con il loro comportamento di gestione degli errori, che potrebbe non essere compatibile con Try-Catch.
  • Logica errata o uso di variabili – Se c'è un uso improprio di variabili o una logica errata, allora Try-Catch non funzionerà.

Cosa posso fare se Try-Catch non funziona su PowerShell?

1. Controlla la sintassi

  1. Innanzitutto, devi verificare se hai utilizzato la sintassi corretta per la versione di PowerShell che stai utilizzando.
  2. Successivamente, verifica di aver posizionato i blocchi Try and Catch nella sequenza corretta.
  3. La sintassi di base per Try-Catch è menzionata di seguito. Sostituisci # codice da eseguire qui con il codice e # codice di gestione degli errori qui con il codice di gestione degli errori:

Tentativo {
# codice da eseguire qui
}
Presa {
# codice di gestione degli errori qui
}

2. Controlla se stai intercettando un errore specifico 

È necessario verificare se si stanno intercettando errori specifici che si desidera gestire e non tutti gli errori. Segui questi passaggi per fare lo stesso:

  1. premi il finestre chiave, tipo PowerShell, e clicca Esegui come amministratore.Sceneggiatura
  2. Per intercettare un errore, è necessario utilizzare il file $ variabile nel blocco Catch per accedere alle informazioni sull'errore generato. Controlliamo l'esempio dello stesso per capire meglio: Tentativo {
    Get-ChildItem -Percorso C:\DoesNotExist
    }
    Presa {
    if ($_.Eccezione. GetType().Name -eq "DirectoryNotFoundException") {
    Write-Output "Directory non trovata."
    }
    altro {
    lancia $_.Exception|
    }
    }

3. Imposta il valore di ErrorAction 

Il valore predefinito per ErrorAction è Continua; tuttavia, affinché Try-Catch funzioni, è necessario impostare il valore ErrorAction su Stop. Per fare ciò, attenersi alla seguente procedura:

  1. Aprire PowerShell come amministratore.
  2. È necessario utilizzare il cmdlet Set-StrictMode o il parametro ErrorAction sui singoli cmdlet. Per capirlo meglio, vediamo un esempio:
Prova Catch con ErrorAction Arresta PowerShell

Tentativo {
Get-ChildItem -Path C:\DoesNotExist -ErrorAction Stop
}
Presa {
Write-Output $_.Exception. Messaggio
}

Leggi di più su questo argomento
  • Ecco come recuperare la tua chiave BitLocker da OneDrive
  • Come utilizzare Phone Link per iPhone su Windows 11
  • DaVinci Resolve Utilizzo elevato della CPU: come ridurlo

4. Utilizzare il tipo di eccezione corretto

È importante utilizzare le eccezioni corrette quando si utilizza Try-Catch, in quanto può gestire solo le eccezioni di System. Tipo di eccezione. Se hai utilizzato non-System. Errori di eccezione, quindi Try-Catch non funzionerà.

Per quanto riguarda non System. Eccezione, è necessario utilizzare il meccanismo di gestione degli errori del framework NET o rilevare l'errore.

5. Evitare la terminazione dello script 

Se il tuo script viene terminato prima di raggiungere il blocco Catch, Try-Cach non avrà la possibilità di gestire l'errore. Per evitare la chiusura dello script, attenersi alla seguente procedura:

  1. Lancio PowerShell con diritti di amministratore.
  2. Devi usare il Continua dichiarazione dopo il Presa bloccare. Capiamolo con un esempio:
prova a catturare finalmente

Tentativo {
Get-ChildItem -Percorso C:\DoesNotExist
}
Presa {
Write-Output $_.Exception. Messaggio
Continua
}

6. Usa il Try-Catch-Finally

 Se l'istruzione Try-Catch continua a non funzionare, è possibile utilizzare invece il costrutto Try-Catch-Finally. Ciò garantisce che il codice venga eseguito fino al completamento, anche se viene generata un'eccezione.

  1. Aprire PowerShell come amministratore.
  2. Digita il comando con Try-Catch-Finalmente. Ecco un esempio per capire meglio lo script:

Tentativo {
# Il tuo codice qui

Cattura [Sistema. Eccezione] {
# Codice di gestione delle eccezioni qui

Finalmente {
 # Codice di pulizia qui
}

Quindi, questi sono i modi in cui puoi risolvere il problema di Try Catch non funzionante su PowerShell. Se hai domande relative a Try-Catch, menzionale nella sezione commenti qui sotto. Saremo felici di aiutarti!

Se vuoi sapere come impedire la chiusura di PowerShell dopo aver eseguito uno script, puoi leggere questo.

Hai ancora problemi? Risolvili con questo strumento:

SPONSORIZZATO

Se i suggerimenti di cui sopra non hanno risolto il tuo problema, il tuo PC potrebbe riscontrare problemi Windows più profondi. Noi raccomandiamo scaricando questo strumento di riparazione del PC (valutato Ottimo su TrustPilot.com) per affrontarli facilmente. Dopo l'installazione, è sufficiente fare clic su Inizia scansione pulsante e quindi premere su Ripara tutto.

Windows non riesce a trovare PowerShell.exe: 5 modi per risolverlo

Windows non riesce a trovare PowerShell.exe: 5 modi per risolverloPowershellWindows 11

Prova ad aggiornare PowerShell all'ultima versioneWindows PowerShell è un potente strumento di scripting e automazione che consente di eseguire attività amministrative all'interno di Windows.Se sta...

Leggi di più
Come abilitare l'esecuzione di script su Windows 10

Come abilitare l'esecuzione di script su Windows 10PowershellWindows 10

Puoi utilizzare l'app Impostazioni per attivarlaL'abilitazione degli script in esecuzione su Windows 10 consente di eseguire ed eseguire vari tipi di script, come script PowerShell o file batch.Puo...

Leggi di più
Make: Comando non trovato Errore: come risolverlo

Make: Comando non trovato Errore: come risolverloPowershellWindows 11

Installa make utilizzando PowerShell quando riscontri questo problemaÈ possibile riscontrare l'errore make: comando non trovato su numerosi sistemi operativi.L'errore può verificarsi a causa della ...

Leggi di più