Recuperar Salida de un comando DOS con .net 2008
Tenemos una caja de texto con el name “ElComando” en la que el usuario escribirá el comando a ejecutar.
Tenemos un botón con el name “Enviar” que seráel que manda y recibe el comando que el usuario ha escrito
Tenemos un RichtTextBox con el name “Pantalla” en la que pintaremos el resultado del comando ejecutado.
El código:
Public ClassForm1
Private Sub Enviar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Enviar.Click
If ElComando.Text = "" Then
Exit Sub
End If Pantalla.Text = ""
Dim Respuesta As String = EjecutarComandoDos(ElComando.Text)
Pantalla.AppendText(Respuesta)
Respuesta = EjecutarComandoDos("cd")
Pantalla.AppendText(Chr(13) & Respuesta)
Pantalla.SelectionStart = Pantalla.Text.Length - 1
Pantalla.ScrollToCaret()
ElComando.Text = ""
ElComando.Focus()
End Sub
Public Function EjecutarComandoDos(ByVal Comando As String) As String
' COMPROBAMOS QUE LA VARIABLE QUE GUARDA EL COMANDO A EJECUTAR, TIENE CONTENIDO
If Comando = ""Then
EjecutarComandoDos = ""
' SALIMOS DE LA FUNCION
Exit Function
End If
Try
' TODO EL COMANDO QUE SE MANDA EJECUTAR, SECONSIDERA COMO PARAMETRO YA QUE TODOS LOS COMANDOS
' SE LANZAN CON EL COMANDO COMUN CMD /C, Y EL PARAMETRO "/C" SE UNE AL COMANDO SOLICITADO PARA
' EJECUTAR COMO PARTE DE LOSPARAMETROS
' CONFIGURAMOS EL PROCESO A EJECUTAR CON EL COMANDO Y LOS PARAMETROS. LA PROPIEDAD "Comando"
' NOS DEVUELVE EL CONTENIDO DEL COMANDO
Dim startInfo As NewSystem.Diagnostics.ProcessStartInfo("cmd", "/c " & Comando)
' PARA PODER MANIPULAR LA SALIDA INDICAMOS QUE NO SE EJECUTE SHELL
startInfo.UseShellExecute = False...
Regístrate para leer el documento completo.