Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Problema con cancellazione file
martedì 03 gennaio 2006 - 10.34
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
valezz
Profilo
| Newbie
34
messaggi | Data Invio:
mar 3 gen 2006 - 10:34
Ciao a tutti e buon anno!
Ho piccolo problema con la cancellazione di un file.
Questo file è una immagine che assegno ad un picturebox tramite la chiamata:
PictureBoxImmagine.Image = Image.FromFile(_percorso_img & "image.jpg")
successivamente clicco su un button che mi scatena la seguente porzione di codice:
File.Delete(_percorso_img & "image.jpg")
Se non associo l'immagine al picture box non ci sono problemi, il file viene rimosso perfettamente.
Associandolo mi dice che il file è usato da un altro processo.
Quindi il problema è la chiamata image.fromfile
Come posso fare per liberare il file dopo aver associato l'immagine al picturebox?
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 3 gen 2006 - 11:09
Prova a mettere a nothing l'image prima di cancellare il file
valezz
Profilo
| Newbie
34
messaggi | Data Invio:
mar 3 gen 2006 - 11:16
ho provato sia a mettere PictureBoxImmagine.Image = nothing che ad associare un'altra immagine ma nn cambia nulla!
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 3 gen 2006 - 11:21
Prova la seguente cosa:
Nel blocco che utilizzi per caricare l'immagine definisci una variabile di tipo immagine (new).
Carica il bitmap sull'immagine
Carica l'immagine sulla picture
Annulla la variabile immagine
valezz
Profilo
| Newbie
34
messaggi | Data Invio:
mar 3 gen 2006 - 11:34
ciao, ho provato così ma senza risultati:
Dim _image As Image
_image = Image.FromFile(_percorso_img & "image.jpg")
PictureBoxImmagine.Image = New Bitmap(_image)
_image = Nothing
sempre il solito problema..anche se provo a eliminare il file manualmente dalla cartella mi dice che è usato da un'altro processo, devo chiudere l'applicazione per sbloccarlo!
valezz
Profilo
| Newbie
34
messaggi | Data Invio:
mar 3 gen 2006 - 11:41
credo di aver svelato il mistero:
"Image.FromFile keeps the file open. Get the file using a file stream and use Image.FromStream then explicitly close the stream."
Provo e ti faccio sapere!
valezz
Profilo
| Newbie
34
messaggi | Data Invio:
mar 3 gen 2006 - 11:52
funziona!
scrivo il codice che potrebbe essere di aiuto a qualcuno:
Dim _image As Stream
_image = File.OpenRead(_percorso_img & "image.jpg")
PictureBoxImmagine.Image = Image.FromStream(_image)
_image.Close()
:-)
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 3 gen 2006 - 11:53
Molto bene, sono contento che vengano pubblicate le soluzioni :)
valezz
Profilo
| Newbie
34
messaggi | Data Invio:
mar 3 gen 2006 - 12:55
piccolo fix:
Dim _image As Stream
_image = File.OpenRead(_percorso_img & "image.jpg")
PictureBoxImmagine.Image = new bitmap(Image.FromStream(_image))
_image.Close()
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !