elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Esperar a la ventana DOS
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Esperar a la ventana DOS  (Leído 1,484 veces)
arfgh

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Esperar a la ventana DOS
« en: 31 Julio 2013, 21:25 pm »

imaginad que ejecutamos un comando en una ventana dos. Por ejemplo 'powercfg /list'

existe alguna manera programáticamente de saber que el comando se ha terminado de ejecutar ? O sea, que el sistema ha terminado de ejecutar dicho comando.

He intentado waiforsingleoject sin éxito.


En línea

Stakewinner00


Desconectado Desconectado

Mensajes: 1.426



Ver Perfil WWW
Re: Esperar a la ventana DOS
« Respuesta #1 en: 31 Julio 2013, 22:07 pm »

Los comandos son programas normales que cuando terminan devuelven el control al programa que les llamo. Para los programas que no funcionan en segundo plano solo se me ocurre ver si cuando termina un comando te devuelve la ruta actual o no.

Saludos.


En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.969


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Esperar a la ventana DOS
« Respuesta #2 en: 31 Julio 2013, 22:50 pm »

http://stackoverflow.com/questions/5685972/how-to-wait-for-a-shell-process-to-finish-before-executing-further-code-in-vb6
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

arfgh

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Re: Esperar a la ventana DOS
« Respuesta #3 en: 31 Julio 2013, 23:01 pm »

no sirve amigos...

cuando se usa el waitforsingleobject infinite, desde nuestro programa, estamos esperando para siempre y pasamos de ahí.
En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Esperar a la ventana DOS
« Respuesta #4 en: 1 Agosto 2013, 21:42 pm »

Tenes que usar el waitforsingleobject tienes que asegurarte que el proceso no se interrumpe en ningun momento (ej: que no aparezca el "presione una tecla para continuar...")

Encontre esto en mi biblioteca de codigos
Código
  1. Private Const SW_HIDE = 0
  2. Private Const WAIT_TIMEOUT = &H102
  3. Private Declare Function ShellExecuteExA Lib "shell32" (lpExecInfo As SHELLEXECUTEINFO) As Long
  4. Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
  5.  
  6. Private Type SHELLEXECUTEINFO
  7.  cbSize As Long
  8.  fMask As Long
  9.  hwnd As Long
  10.  lpVerb As String
  11.  lpFile As String
  12.  lpParameters As String
  13.  lpDirectory As String
  14.  nShow As Long
  15.  hInstApp As Long
  16.  lpIDList As Long
  17.  lpClass As String
  18.  hkeyClass As Long
  19.  dwHotKey As Long
  20.  hIcon As Long
  21.  hProcess As Long
  22. End Type
  23.  
  24. Public Sub ShellWait(ByVal sFile As String, ByVal sParams As String, ByVal sDir As String)
  25.    Dim Retval As Long, ShExInfo As SHELLEXECUTEINFO
  26.    With ShExInfo
  27.        .cbSize = Len(ShExInfo)
  28.        .fMask = 0
  29.        .hwnd = 0
  30.        .lpVerb = "open"
  31.        .lpFile = sFile
  32.        .lpParameters = sParams
  33.        .lpDirectory = sDir
  34.        .nShow = SW_HIDE
  35.    End With
  36.  
  37.    Retval = ShellExecuteExA(ShExInfo)
  38.    If Retval = 0 Then
  39.        Call MsgBox("Error :(")
  40.    Else
  41.        Do
  42.            DoEvents
  43.        Loop Until WaitForSingleObject(ShExInfo.hProcess, 0) < WAIT_TIMEOUT
  44.    End If
  45. End Sub
  46.  
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Esperar por Accion?
Programación Visual Basic
DarkMatrix 2 1,669 Último mensaje 19 Agosto 2009, 21:04 pm
por DarkMatrix
abrir un ventana emergente y una nueva ventana al tiempo con un solo clip
Desarrollo Web
virtualpc 5 3,097 Último mensaje 18 Noviembre 2012, 22:32 pm
por virtualpc
Hacer esperar al programa.
Programación C/C++
cNoob 4 1,322 Último mensaje 28 Junio 2016, 00:50 am
por ianmorar03
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines