SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Sagutxo en Martes 20 de Marzo de 2007, 17:54

Título: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: Sagutxo en Martes 20 de Marzo de 2007, 17:54
Salu2.
1º.-
¿Es posible saber cuando termina un ejecución ShellEjecute?
Ejemplo:

   Está descomprimiendo y quiero que al terminar me mueva los rar a otra carpeta.

2º.- ¿Existe alguna .dll del WinRar con el que se pueda hacer lo mismo con código que con las dll zip.dll y unzip.dll?

Gracias.
 :smartass:  :comp:  :smartass:
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: Eternal Idol en Martes 20 de Marzo de 2007, 18:03
Proba con ShellExecuteEx que devuelve un HANDLE a proceso + WaitForSingleObject, igual lo mejor es usar esta ultima con CreateProcess.
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: RadicalEd en Martes 20 de Marzo de 2007, 18:23
Para la segunda.
http://www.elguille.info/colabora/vb/zip32dll.htm (http://www.elguille.info/colabora/vb/zip32dll.htm)
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: Sagutxo en Miércoles 21 de Marzo de 2007, 13:43
Salu2.
Eternal Idol, perdona mi ignorancia, pero no he conseguido saber como hacerlo :(, podrías ser un poquito mas explicito por favor. Perdón, espero no molestar.

Radical Ed:

los Zip ya tengo y uso,  ¿es que esa dll, unzip.dll, es capaz de descomprimir .RAR tambien?

Gracias.
 :comp:  :smartass:  :comp:
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: Eternal Idol en Miércoles 21 de Marzo de 2007, 13:56
Cita de: "Sagutxo"
Eternal Idol, perdona mi ignorancia, pero no he conseguido saber como hacerlo :(, podrías ser un poquito mas explicito por favor. Perdón, espero no molestar.
 
Busca algun ejemplo de ShellExecuteEx en VB (hace muchisimo que no uso VB), esta te devolvera en una estructura un campo de tipo HANDLE y ese campo lo podes pasar como parametro a la funcion WaitForSingleObject junto a la constante INFINITE para que espere hasta que el programa termine, asi de simple.
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: cpmario en Miércoles 21 de Marzo de 2007, 16:17
Encontré esto, espero te sirva:

http://support.microsoft.com/kb/129796 (http://support.microsoft.com/kb/129796)

 :comp:
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: Eternal Idol en Miércoles 21 de Marzo de 2007, 16:31
Cita de: "cpmario"
Encontré esto, espero te sirva:
http://support.microsoft.com/kb/129796 (http://support.microsoft.com/kb/129796)
Ahi hay un ejemplo de CreateProcess + WaitForSingleObject que es el mejor metodo.
Título: Re: Saber Cuando Termina Un Ejecución Shellejecute
Publicado por: Sagutxo en Miércoles 21 de Marzo de 2007, 18:02
Salu2. Muchas gracias, me pongo a investigarlo ya mismo.
 :smartass:  :comp:  :smartass: