Programación General > Visual Basic 6.0 e inferiores

 Procesos Paralelos

<< < (2/3) > >>

Brroz:
Hola.

Crea otro ejecutable distinto, un subprograma, vamos, que realice esa labor que tarda tanto. Llámalo desde la aplicación principal de una forma similar a esta:


--- Código: Text --- Option Explicit Private Const STILL_ACTIVE = &H103Private Const PROCESS_QUERY_INFORMATION = &H400 Private Declare Function OpenProcess Lib &#34;kernel32&#34; (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessID As Long) As Long Private Declare Function GetExitCodeProcess Lib &#34;kernel32&#34; (ByVal hProcess As Long, lpExitCode As Long) As Long Private Declare Sub Sleep Lib &#34;kernel32&#34; (ByVal dwMilliseconds As Long) Private Sub ExecProceso(Byval ExeFileName As String)     On Error GoTo Err_Exec        Dim lPId As Long, lRc As Long    lPId = OpenProcess(PROCESS_QUERY_INFORMATION _    , False, Shell(ExeFileName, vbNormalFocus))    Do        GetExitCodeProcess lPId, lRc        Sleep 100        DoEvents    Loop While lRc = STILL_ACTIVE        MsgBox &#34;Proceso finalizado&#34;        Exit Sub    Err_Exec:    MsgBox &#34;Fallo sometiendo proceso '&#34; & ExeFile & &#34;'.&#34; & String(2, vbCrLf) _    & &#34;(&#34; & Err.Number & &#34;) &#34; & Err.Description, vbCritical, &#34;Ejecutar&#34; End Sub  
Abur.

jhonilson:
Pues la manera mas sencilla de hacer lo que quieres es asi:

 sub command1_click()
     call command2_click()
ens sub

Con esto al presionar el boton 1 haces que se presione el 2. :hola:

Brroz:
Tronco, pero ¿has leido aunque sea por encima lo que necesita José...?

jhonilson:
Si en las operaciones incluidas en el command2 no hay variables que esten siendo utilizadas por el command1 no deberia de tener problemas.

ArKaNtOs:
Mira jhonilson a lo que se refiere el es a hacer dos cosas a la vez, en su caso es que mientras este haciendo un proceso largo pueda realizar otro, lee un poquito los mensajes plz, para que asi tus respuestas sirvan  ;)  :D

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa