Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015

Iniciado por NightExperience, 26 Febrero 2016, 16:37 PM

0 Miembros y 1 Visitante están viendo este tema.

NightExperience

hola muy buenas soy nuevo en este foro y quisiera saber si alguien me podria ayudar a corregir mi codigo ya que antes usaba la version 2010 y usaba el siguiente codigo para ejecutar un comando de cmd el cual era
Código (vbnet) [Seleccionar]
Dim Comando As String
comando = "El comando"
shell ("cmd.exe /k  & comando")

pero al poner esto en esta nueva version da errores de build
quisiera alguien poder ayudarme con este problema
al principio de todo comienzo con este codigo el cual es de un button

Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }

       private void button1_Click(object sender, EventArgs e)
       {

       }

       private void button2_Click(object sender, EventArgs e)
       {

       }
   }
}

"Ampliando Conocimientos"

Eleкtro

#1
Las preguntas sobre Vb.Net van en el foro de .Net, y los códigos deben ir en sus respectiva etiqueta..

1. ¿Cuales son esos errores del compilación?. si no especificas los mensajes de error... no se como esperas que te lo solucionen.

2. ¿La pregunta que formulas es sobre el primer código escrito en Vb.Net, o sobre el segundo código escrito en C#?.

De todas formas, la metodoliogía óptima para iniciar un proceso es mediante la class System.Diagnostics.Process.

Vb.Net:
Código (vbnet) [Seleccionar]
Using p As New Process

   With p
       .StartInfo.FileName = "cmd.exe"
       .StartInfo.Arguments = "/K ""Dir /B *.*"""
   End With

   p.Start()
   p.WaitForExit()

End Using


C#:
Código (csharp) [Seleccionar]
using (Process p = new Process()) {

p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = "/K \"Dir /B *.*\"";

p.Start();
p.WaitForExit();

}


Saludos!








NightExperience

Mis disculpas señor moderador mi nivel de ignorancia provoco estas confusiones como dije anteriormente soy nuevo en el foro y no sabia lo de etiquetas y lugares de ubicación de los temas pero eso no es excusa tratare de mejorar para su mayor entendimiento del problema desde ya muchísimas gracias y aunque no logre entender como ejecutar un comando con el código de C# tratare de tener algo de lógica desde ya muchas gracias   ;-)  ;-) ;-)
"Ampliando Conocimientos"

Eleкtro

Cita de: mastergma en 26 Febrero 2016, 17:20 PMaunque no logre entender como ejecutar un comando con el código de C# tratare de tener algo de lógica

Si hay algo que no entiendas, ¡pregunta!. para eso estamos.

Saludos!








NightExperience

CitarAunque no logre entender como ejecutar un comando con el codigo de C# tratare de tener algo de logica
Con Ello me referia a que no logre entender lo de los codigos osea como ejecuto el comando que deseo en este caso el comando es el start :-\
"Ampliando Conocimientos"

Eleкtro

Cita de: mastergma en 26 Febrero 2016, 17:53 PM
Con Ello me referia a que no logre entender lo de los codigos osea como ejecuto el comando que deseo en este caso el comando es el start :-\

¿el comando Start?, ¡es completamente innecesario!. Imagina que la class Process es un equivalente avanzado del comando Start de Batch, no debes recurrir a ese lenguaje inferior para poder hacer lo mismo.

Con el código que te indiqué arriba ya puedes iniciar el archivo executable que quieras, pero de todas formas te dejo otra alternativa más simple:
Código (csharp) [Seleccionar]
System.Diagnostics.Process.Start("archivo executable", "argumentos");

Saludos!








NightExperience

Muchísimas Gracias!! Logre entender pero lo que yo quiero hacer es abrir una pagina de Internet por ejemplo con batch ponías start www.google.com y abría la pagina seria el mismo proceso para esto?
"Ampliando Conocimientos"

Eleкtro

#7
Cita de: NightExperience en 26 Febrero 2016, 18:37 PM
Muchísimas Gracias!! Logre entender pero lo que yo quiero hacer es abrir una pagina de Internet por ejemplo con batch ponías start www.google.com y abría la pagina seria el mismo proceso para esto?

Exactamente lo mismo, usa el método Process.start("http://www.google.com/"), y la Shell de Windows ya se encargará de abrir el navegador por defecto (o programa asociado).

Saludos