Una vez hize un truco y en si era que al intentar cerrar la aplicacion se volvia a prender en el evento query_unload
Por ejemplo que al dar click en algun boton este se ponga enabled = false y en el evento query_unload se revisa si el boton esta enabled = false entonces si se cierra, sino, entonces se hace un cancel = true y asi se cancela
El problema es que lo acabo de hacer y no me funciona..
Otra cosa es poner 2 aplicaciones en memoria. La aplicacion 1 revisa si existe la aplicacion 2, no se si este truco es el que hace el Norton Antivirus 2005, ya que versiones anteriores no tenian eso
Para ver las aplicaciones en memoria checa esta respuesta :
http://lawebdelprogramador.com/news/mostrar_new.php?id=96&texto=Visual+Basic+Avanzado&n1=293530&n2=1&n3=0&n4=0&n5=0&n6=0&n7=0&n8=0&n9=0&n0=0