Chiudere correttamente un programma, scaricando tutti i Form
Come chiudete il Vostro
programma Visual Basic? Utilizzate il metodo End?
Vi spiegherò perché utilizzare il metodo End non sia il miglior modo di
chiudere un Vostro programma. E' un fatto non documentato che utilizzando il
metodo End non vengono completamente rimossi dalla memoria tutti i Form.
Ciò significa che il Vostro programma non rilascia tutte le risorse agli altri
processi quando viene chiuso con il metodo End. Il solo modo per chiudere
completamente il programma è di scaricare ciacuno dei Form con il metodo Unload.
Il codice sottostante esegue un controllo attraverso tutti i Form caricati e li
scarica uno ad uno. Così velocemente non essendovi Form caricati, il
Vostro programma verrà chiuso.
Public Sub UnloadAllForms()
Dim Form As Form
For Each Form In Forms
If Form.Name <> "questoform" And Form.Name
<> "formdiAvvio" Then
Unload frm
Set Form = Nothing
End If
Next
End Sub
E' meglio chiamare questa procedura dall'evento Unload del Vostro Form principale, in questo caso togliere il controllo su Form.Name="questoform" (anche se è indifferente).
Testato su: Tutti i Sistemi operativi