Autor
|
Tema: mantener consola (Leído 3,843 veces)
|
dimitrix
|
Hola, haber si me explico, necesito manterner la consola, por ejemplo si pongo el codigo: Shell "netstat" Que cuando termine no se cierre
|
|
|
En línea
|
|
|
|
soplo
Ex-Staff
Desconectado
Mensajes: 3.592
Debian rool'z
|
Primero declaramos la función en declaraciones Private Declare Function ShellExecute Lib "shell32.dll" Alias _ "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Ahora cuando necesites en ese formulario ejecutas sub command1_click() dim res as long res = ShellExecute(Me.hwnd, "Open", "c:\windows\system32\netstat.exe","", "", 1) end sub
|
|
|
En línea
|
Callar es asentir ¡No te dejes llevar!
|
|
|
dimitrix
|
Sorry soplo pero se cierra
|
|
|
En línea
|
|
|
|
soplo
Ex-Staff
Desconectado
Mensajes: 3.592
Debian rool'z
|
Acabo de ver que eso tampoco vale porque también se cierra. Supongo que debes guardar el resultado en un archivo y conservar el archivo Private Declare Function ShellExecute Lib "shell32.dll" Alias _ "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Ahora ejecutar el netstat sabiendo que se cerrará, pero guardando el resultado en un archivo [code]shell "netstat >Salida.Txt",vbhide Meter el resultado en el block de notas sub command1_click() dim res as long res = ShellExecute(Me.hwnd, "Open", "salida.txt","", "", 1) end sub [/code]
|
|
|
En línea
|
Callar es asentir ¡No te dejes llevar!
|
|
|
dimitrix
|
Pero donde coloco el: shell "netstat >Salida.Txt",vbhide Yo lo pongo así y no funciona: Private Declare Function ShellExecute Lib "shell32.dll" Alias _ "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Sub command1_click() Dim res As Long res = ShellExecute(Me.hwnd, "Open", "salida.txt", "", "", 1) End Sub
|
|
|
En línea
|
|
|
|
Syphroot
Desconectado
Mensajes: 268
All You Need To Do Is Follow The Worms
|
Has intentado algo asi:?? Shell "cmd /k netstat", vbNormal
Creo tambien se puede con la api ShellExecute
|
|
|
En línea
|
|
|
|
soplo
Ex-Staff
Desconectado
Mensajes: 3.592
Debian rool'z
|
Pero donde coloco el:
shell "netstat >Salida.Txt",vbhide Pues donde quieras ejecutar el netstat. Eso lo que hace es ejecutarlo sin mostrar nada, pero deja el resultado en un archivo llamado salida.txt Cuando quieres mostrar eso lo que haces es sacar el block de notas con ello.
|
|
|
En línea
|
Callar es asentir ¡No te dejes llevar!
|
|
|
|
|
|