Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: NightExperience en 26 Febrero 2016, 16:37 pm



Título: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: NightExperience en 26 Febrero 2016, 16:37 pm
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
  1. Dim Comando As String
  2. comando = "El comando"
  3. 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
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10.  
  11. namespace WindowsFormsApplication1
  12. {
  13.    public partial class Form1 : Form
  14.    {
  15.        public Form1()
  16.        {
  17.            InitializeComponent();
  18.        }
  19.  
  20.        private void button1_Click(object sender, EventArgs e)
  21.        {
  22.  
  23.        }
  24.  
  25.        private void button2_Click(object sender, EventArgs e)
  26.        {
  27.  
  28.        }
  29.    }
  30. }


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: Eleкtro en 26 Febrero 2016, 16:59 pm
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
  1. Using p As New Process
  2.  
  3.    With p
  4.        .StartInfo.FileName = "cmd.exe"
  5.        .StartInfo.Arguments = "/K ""Dir /B *.*"""
  6.    End With
  7.  
  8.    p.Start()
  9.    p.WaitForExit()
  10.  
  11. End Using

C#:
Código
  1. using (Process p = new Process()) {
  2.  
  3. p.StartInfo.FileName = "cmd.exe";
  4. p.StartInfo.Arguments = "/K \"Dir /B *.*\"";
  5.  
  6. p.Start();
  7. p.WaitForExit();
  8.  
  9. }

Saludos!


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: NightExperience en 26 Febrero 2016, 17:20 pm
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   ;-)  ;-) ;-)


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: Eleкtro en 26 Febrero 2016, 17:50 pm
aunque 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!


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: NightExperience en 26 Febrero 2016, 17:53 pm
Citar
Aunque 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 :-\


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: Eleкtro en 26 Febrero 2016, 18:28 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
  1. System.Diagnostics.Process.Start("archivo executable", "argumentos");

Saludos!


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: 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?


Título: Re: Ejecutar Comandos De Cmd.exe en Visual Studio Community 2015
Publicado por: Eleкtro en 26 Febrero 2016, 19:11 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