Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    C# Controllo try catch non funziona

    Ciao a tutti,
    Sono nuovo del forum,
    Sto pasando un programma che ho creato all interno di una DLL e sono imbattuto in un problema: Il mio codice prevede un controllo try/catch che controlla la presenza di un file, questo funzionava finche' lo uso nella precedente versione winform, ma se faccio il debug dell'altro progetto che contiene la DLL del primo se il file no e' presente mi viene generata un' eccezione che non dovrebbe esserci perche' controllata dal comando catch

    Il codice e' questo:
    codice:
                string fileconfigurazione = null;
                var path = @"C:\a\file.txt";
    
                // Controllo quantita' e tipo di periferiche
    
                try
                {
                    fileconfigurazione = File.ReadAllText(path);
                }
                catch
                {
                    FileNontrovato = true;
                }
    mettendo un punto di interruzione all' inizio dello stesso e procedendo passo-passo vedo che anche se il file non esiste il programma tenta di eseguire il contenuto di try, genera l'eccezione e poi passa al contenuto di catch.

    Mi potete aiutare pr favore?
    Grazie

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Non è molto chiaro il problema, ad ogni modo è normale che il codice contenuto tra le parole try...catch venga eseguito, poiché quello si tratta del codice "protetto" che viene controllato e che provoca il passaggio alla parte del "catch" quando viene sollevata un'eccezione.

    Dai un'occhiata alla documentazione per vedere qualche esempio e delucidazione in più in merito.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    ciao il problema e' che il codice tenta di eseguire il contenuto di try, e se non riesce crea un eccezione, senza tener conto del contenuto di catch

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da 82_marco
    ciao il problema e' che il codice tenta di eseguire il contenuto di try, e se non riesce crea un eccezione, senza tener conto del contenuto di catch
    Il codice nel catch viene eseguito se il codice tra try...catch solleva un'eccezione, e questo è garantito.

    Se ciò non avviene, ricontrolla il codice o ciò che avviene poiché l'eccezione potrebbe essere catturata altrove o esserci qualche altro problema non verificabile qui perché magari il codice è diverso da quello reale.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    ciao
    se uso lo stesso codice in una winform funziona correttamente, non riesco a capire il problema

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.