Newsgroup: it.comp.lang.visual-basic
Titolo: Quando capita che il programma non si chiude?

Ciao a tutti,
ho un problema di cui non riesco a trovare la causa in quanto non appare
nessun errore.
Quando avvio il programma scritto in VB, inizio a usarlo aprendo alcuni
finestre, poi premo sulla X di chiusura  il programma viene tolto dallo
schermo ma rimane in memoria sul TaskManager e sono costretto a Terminarlo
per chiuderlo!
Se avvio il programma da dentro VB succede la stessa cosa e l'unico modo per
chiuderlo e quello di premere il quadratino blu.
Mi sapete spiegare come risolvere questo problema?
Ringrazio tutti in anticipo.
Ciao da Emiliano.

 costretto a Terminarlo per chiuderlo!
Sul queryunload della form principale, cicla sulla collection forms facendo
l'unload di tutte.
Verifica inoltre, se usi roba asincrona tipo il Datareport, di distruggerlo
correttamente.
Ciao
Alberto

 Ciao da Emiliano.
ciaociao

 è aperto ma non visibile
quindi fai come ha detto Alberto
;-)

Non vorrei essere scortese, ma il programma non si chiude quando uno non
legge i post precedenti.... ogni settimana c'è qualcuno che chiede sempre le
stesse cose!
Ciao, Vincenzo


Ciao Alberto ti ringrazio per l'aiuto,
ho inserito sulla queryunload dell'MDIForm il comando END e adesso funziona
anche se probabilmente č una forzatura.
Ciao e grazie
Emiliano

 Emiliano
ciaociao


Lo hai detto tu... č venerdi! :-))
Ciao

 Va beh che è venerdì, ma perchè non vuoi scaricare tutti i form?
vabbe' nei post vecchi ne avra' beccato uno mio ^_^
Cmq Emiliano ti spiego meglio l'indizio :
"
dim f as form
for each f ...
"
ok provalo a cercare nei post vecchi e ti uscira' il codice bello e pronto!
-- 
-Gigio@Work(?)-

 "
Signore e signori, ha inizio la caccia al tesoro! venghino venghino!
Chi per primo scarica 10 forms avrà diritto ad un Do While omaggio!
Accorrete numerosi!
eheheheh.....
...è venerdì anche per me! ;-)
ciaociao

Come venerdi scorso riapriamo il discorso sull'uso del ciclo For o Do
While??
... a tal proposito la guida di VB nella parte riguardante l'ottimizzazione
del codice, dice qualcosa.... vediamo chi è bravo?
Ciao, Vincenzo

 Ciao, Vincenzo
ciaociao

 l'ottimizzazione del codice, dice qualcosa.... vediamo chi è bravo?
mi sono appena asciugato la bauscina dalla boccae ho staccato la guancia
dalla scrivania e mi tocca leggere ste cose ? bha, a dopo mi fo un
sonnellino !
-- 
-Gigio@Work(?)-

 >
Cosa intendi per scarica tutti i form?
Io ho utilizzato Form1.hide - form2.hide ecc. per tutti.... ma non funziona
lo stesso.
Ciao
Emiliano


NOOOOOOOOOOOOOOOOOOO!!!!
Con Hide li rendi invisibili, devi usare Unload Form1 , Unload Form2
Ciao, Vincenzo

 Emiliano
ciaociao


Scusatemi per l'ignoranza ma ho sempre utilizzato HIDE senza problemi :-((((
Di Unload non avevo mai sentito parlare nemmeno al corso di VB che ho fatto
1,5 anni fa....
Mi rendo conto che ho ancora tanto da imparare, ma la volontà non manca....
:-))
E per questo ringrazio tutto il NG.
Ciao e grazie.
Emiliano

 E per questo ringrazio tutto il NG.
gia', sei con noi da un bel po, il meglio che posso consigliarti e' il libro
di Balena su vb6, se ti compri il libro del Net, dentro il cd trovi anche
quello del vb6 , paghi1 impari 2 ^_-
-- 
<Gigio2K>
--- 
www.g2kweb.it
 ---
Nokia -> I.T.H.N. -> 
http://www.ithn.it/
VB -> I.C.L.VB -> 
http://www.it-lang-vb.net/

 Prova a mettere un comando end nell'evento Unload della form.
emm emm, l'End e' consigliabile non usarlo mai, io ed altri lo usiamo per un
eccesso di pignoleria subito dopo l'aver scaricato tutte le form con un loop
sull'insieme Forms !


 sull'insieme Forms !
Come mai?
Ricky

 quello del vb6 , paghi1 impari 2 ^_-
Ok, grazie,
cercherň di comprarlo al piů presto.
Ciao
Emiliano

 Come mai?
perche' l'end FORZA la chiusura del programma e il conseguente scaricamento
dalla memoria, diciamo che e' come spegnere un pc staccando la spina, non
credi sia grezzo ?
invece se prima spegni il pc (Scarichi con unload tutte le form) e poi
stacchi la spina (end) e' solo un eccesso ma cmq non rischi di rovinare il
pc ^_^
PS: a volte in alcune condizioni un end fa andare in crash il programma , e
da quel che ne so non fa eseguire nemmeno le _queryunload ... faccio subito
una prova e ti dico !


 _queryunload ... faccio subito una prova e ti dico !
ecco, apri una form con 2 commandbutton e prova questo codice premendo prima
sul primo e poi ripeti ciccando sul secondo con l'end:
'-----------------------------------
Private Sub Command1_Click()
 Unload Me
End Sub
Private Sub Command2_Click()
 End
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
 MsgBox "Scarico la form"
End Sub
'-----------------------------------
