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
Lavorare con AppDomain differenti
lunedì 09 ottobre 2006 - 22.08
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
LoZio
Profilo
| Newbie
1
messaggi | Data Invio:
lun 9 ott 2006 - 22:08
Salve a tutti,
mi sono appena iscritto e vorrei porvi un quesito che mi sta attanagliando da alcuni giorni.
Sto sviluppando una procedura con VB.NET che abbia la possibilità di autoaggiornarsi. L'utilizzo di ClickOnce è escluso perché non so a priori come saranno formati i miei pacchetti di installazione.
Mi spiego meglio: il programma principale è uno standard exe con una serie di menù creati tramite le informazioni presenti a Database. Facendo doppio click su un oggetto presente a menù verifico che sia presente una nuova versione sul Server a cui sono connesso: se esiste (basandomi su data e versione) eseguo il download e l'avvio, altrimenti vado avanti con quello che ho in locale. Tutto funziona bene al primo giro; quando chiudo l'applicazione chiamata e faccio un finto aggiornamento (ricompilo l'assembly chiamato), il programma non si aggiorna in quanto l'assembly è ancora in uso perché si trova nell'appDomain principale.
A questo punto ho provato a fare un secondo appDomain in cui ho creato l'instanza dell'assembly chiamato (facendo myDomain.CreateInstanceAndUnwrap) ma comunque mi viene alzata l'eccezione di accesso negato in quanto l'assembly è ancora in uso. Mi sono messo a spulciare il codice ed ho trovato che se anche carico l'assembly nel nuovo appDomain, una seconda copia mi viene comunque caricata nel domain principale e quindi, anche facendo l'Unload di myDomain, l'assembly non viene rilasciato.
Spero di essere stato chiaro nella spiegazione.
Alberto
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 !