Visual Basic para Aplicaciones - Ejecutar arhivo .bat

Life is soft - evento anual de software empresarial
 
Vista:

Ejecutar arhivo .bat

Publicado por juan torres (1 intervención) el 15/03/2005 16:51:48
estoy ejecutando un archi por lostes (.bat), por la instruccion shell de Visual Basic, la ejecuto minimizada. Tengo el problema que las ventanas MSDOS no se cierran una vez ejecutado el BAT
¿ Necesito cerrar las ventanas MSDOS automaticamente?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ejecutar arhivo .bat

Publicado por Goran_lll (1 intervención) el 15/03/2005 23:19:22
Si sabes como se llama la ventana ms-dos a cerrarr, si siempre se llama igual o sabes como varia su nombre prueba con esto(Usamos la API):

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_CLOSE = &H10
Private Const SW_SHOW = 5
Private Sub Limpia_MS_DOS()
Dim winHwnd As Long
Dim RetVal As Long
winHwnd = FindWindow(vbNullString, "nombre de la ventana a cerrar")
Debug.Print winHwnd
If winHwnd <> 0 Then
RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)
End If
End Sub

SALU2 :-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar