Oppure

Loading
14/11/15 13:25
io sbircerei sulla impostastioni del progetto (neela sezione sicurezza) e darei un'occhiata per vedere se trovo qualcosa di "strano"..... e le differenze tra un nuovo progetto e il tuo


Corretto. In un eventuale file app.config e/o nelle impostazioni relative alla gestione/generazione delle eccezioni.
14/11/15 14:03
bgiorgio
Ma porca pippa! Adesso entrambi i progetti sollevano l'eccezione.

Prima di tutto mi è sorto il dubbio che fosse tutto una mia svista, un colossale granchio. Ma... ho la prova del file generato nella cartella "C:\Users\<utente>\AppData\Local\VirtualStore\". Io manco sapevo dell'esistenza di questa cartella e quindi di certo il file non ce l'ho messo io in quel posto!

Se ora entrambi i progetti funzionano come dovrebbero, è proprio indispensabile capire cosa sia successo, ma adesso è ancora più difficile perché non riesco più a riprodurre l'errore.

Ottima l'intuizione sulle impostazioni del progetto, ma sono esattamente le stesse (curioso però che il problema sia sparito dopo averle controllate...).

Ugh! Adesso sto nuotando in mezzo all'oceano...
aaa
14/11/15 14:21
TheDarkJuster
Beh ora hai un progetto di prova che non lancia l'eccezione, e siccome è un progetto di prova puoi postarlo, così possiamo dare un'occhiata anche noi :D
aaa
14/11/15 14:50
bgiorgio
Entrambi i progetti LANCIANO l'eccezione...
Ultima modifica effettuata da bgiorgio 14/11/15 15:02
aaa
14/11/15 15:01
bgiorgio
Entrambi i progetti LANCIANO l'eccezione...
(ho postato doppio. Se possibile, rimuovere. Grazie.)
Ultima modifica effettuata da bgiorgio 14/11/15 15:04
aaa
14/11/15 19:11
TheDarkJuster
Oh, ok scusa. Beh..... meglio così....
aaa
15/11/15 10:24
Ultimo
Postato originariamente da bgiorgio:

Aggiornamento:

Lo stesso frammento di codice, se eseguito in un progetto nuovo risponde correttamente con l'eccezione intercettabile, rendendo tutto semplice e trasparente; se eseguito nel progetto "storico" (con un centinaio di classi all'interno), reindirizza il file nella cartella utente senza sollevare nessuna eccezione.

Proprio bene.

Entrambi i programmi eseguiti come utente, non come amministratore.

Pare che ci sia un malfunzionamento nel progetto che instaura un qualche tipo di risposta anomala da parte del programma. Reindirizzare un file senza darne avviso è ovviamente qualcosa di non accettabile.

Riguardo la piccola polemica qui sopra, mi spiace se ho scritto in una lingua poco comprensibile, ma il frammento di codice non comprende la parte di selezione del fileName solo per concentrare l'attenzione sulla parte critica. Ovviamente ci sarà la form di selezione e tutti i controlli sulla validità del path, la sua esistenza, la congruità dell'estensione e quant'altro.

La soluzione di escludere per confronto i path non ammessi la vedo una soluzione complessa e non affidabile. Per risolvere questioni come queste c'è "Try", è fatto apposta. Tutto il thread è riguardo al fatto che ho un progetto dove l'eccezione in alcuni casi non viene sollevata.



Adesso sei stato più chiaro, quindi hai usato il SaveFileDialog all'interno del Try
If ok Then GOTO Avanza else GOTO Inizia

16/11/15 9:01
bgiorgio
Postato originariamente da Ultimo:
Adesso sei stato più chiaro, quindi hai usato il SaveFileDialog all'interno del Try


In effetti non è così: la parte di codice relativa al SaveFileDialog non è all'interno del Try, ma è gestita prima del Try. Non ci si attende alcuna eccezione dall'esecuzione di quella parte del codice, ma solo una variabile stringa da utilizzare nel proseguo del programma. Una volta verificato che l'utente abbia dato l' "ok" e non il "cancel" e che la stringa del path non sia vuota, la parte relativa all'acquisizione dei dati si può ritenere conclusa e si passa alla gestione del file (all'interno del costrutto Try).

Comunque questo non ha nulla a che vedere con il problema che, tra l'altro, non sono più riuscito a riprodurre.
aaa