Sv Community El Salvador

Soporte y Tecnología => Programación => VB => Topic started by: ernestoelunico on October 13, 2008, 04:17:51 am

Title: no se descarga el proceso de mi progrma
Post by: ernestoelunico on October 13, 2008, 04:17:51 am
estaba haciendo una pequeña prueva con una aplicacion que hice en vb6 y me ocurrio que cuando lo cerra desde la "X" me cerraba la ventana pero el proceso aun seguia abierto

tengo entendido que para que se descargue de la memoria debo de usar
private sub form_unload()
call cmdsalir_click()
end sub
pero la pregunta es no se podria pones en ves de eso en nombre del proceso para que cerrar este proceso

otra cosa mi progrma cuenta como por 20 formularios pero no todos tienen el boton salir
segun pienso creo que deberia crear una rutina global en unmodulo
y llamarla de de private sub form_unload()
o seria mejor desactivar las x de las ventanas aunque no se como
o poner en los private sub form_unload() end
funcionara??? creo que no porque entonces me finalizaria la aplicacion cuando descargo formularios de la memoria o cuando cierro un formulario que y no ocupo ...... :shock: :shock:


no se que opinan ustedes porque yo a pesar de todo esto que escribe me siento mas confundio que los que lo van a leer :sorry:
disculpen la confucion y muchas gracias
Title: Re: no se descarga el proceso de mi progrma
Post by: vlad on October 13, 2008, 06:17:00 am
Lo que pasa es que una aplicación de VB6 termina hasta que todos los formularios son descargados adecuadamente o se encuentra la instrucción "End" (que significaría: terminar el programa sin importar que).

A través de los años he encontrado que el método más sano para terminar un programa en VB6 es hacer un procedimiento de terminar, que descargue formulario por formulario y luego ejecute "End".

Ojo que cualquier modulo de clase debe ser destruido manualmente! (con set cClaseDeclarada = Nothing)

Para lo de los formularios tenes que hacer una iteración a través de cada formulario abierto, ocupando la colección "forms".
tengo entendido que para que se descargue de la memoria debo de usar
private sub form_unload()
call cmdsalir_click()
end sub
Esto es cierto si y solo si cmdSalir_click tiene la rutina adecuada para terminar todo el programa.



Tema marcado como relacionado a este:
Ayuda VB 6.0 y Excel (http://www.svcommunity.org/forum/index.php?topic=61859.msg431335#msg431335)
Title: Re: no se descarga el proceso de mi progrma
Post by: ernestoelunico on October 20, 2008, 10:04:49 pm
¿Cual seria la mejor rutina o la mas apropiada para cerrar el programa y todo lo que posiblemente este abierto?

o mejor se podra desavilitar la "x" para evitar tanto lio asi obligo a usar el boton salir al usuario

y creo que no habria tanto lio

Title: Re: no se descarga el proceso de mi progrma
Post by: vlad on October 21, 2008, 06:35:10 am
Si queres deshabilitar la "X" pone "Cancel = 1" en el evento form_unload
Title: Re: no se descarga el proceso de mi progrma
Post by: ernestoelunico on October 21, 2008, 03:38:33 pm
puedo crear una funcion que contenga esto y llamarla al cargar el formulario???
Title: Re: no se descarga el proceso de mi progrma
Post by: vlad on October 21, 2008, 06:38:54 pm
No. Lo del Cancel = 1 a fuerza tiene que ir en el form_unload (el cancel es una variable que sirve para controlar la salida).