![]() |
Neste artigo vou mostrar como usar a classe Process e a classe ProcessStartInfo para iniciar um processo CMD e executar comandos. |
![]() |
A classe ProcessStartInfo é usada
junto com com a classe Process e quando você inicia um processo usando a
classe Process você tem acesso para processar as informações
disponíveis além de poder anexar um processo em execução.
Você pode usar o a classe ProcessStartInfo para ter um controle sobre
o processo a iniciar, neste caso, você deve definir pelo menos a propriedade
FileName quer seja manualmente ou quer esja usando o construtor.
Essas classes pertencem ao name namespace System.Diagnostics que contêm tipos que permitem interagir com processos do sistema, logs de eventos e medidores de desempenho.
O método Process.Start inicia um recurso de processo e o associa um component Process que fornece acesso a processos locais e remotos e permite que você inicie e pare os processos do sistema local.
Recursos Usados
Criando o projeto Windows Forms
Abra o VS 2017 Community e crie um novo projeto (File-> New Project) usando a linguagem C# e o template Windows Forms App (.NET Framework).
Informe um nome a seu gosto. Eu vou usar o nome WF_ProcessoCMD;
No formulário Form1 do projeto vamos usar basicamente 4 controles Buttons.
Disponha os controles conforme o leiaute da figura abaixo:
![]() |
A seguir inclua no formulário os seguintes namespaces:
using System;
using System.Diagnostics;
using System.Windows.Forms;
A seguir temos o código completo do formulário
Form1.cs :
namespace WF_ProcessoCMD
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnIniciarCMD_Click(object sender, EventArgs e)
{
//Define uma instância da classe ProcessStartInfo
ProcessStartInfo pro = new ProcessStartInfo();
//Define a propriedade FileName a ser iniciada
pro.FileName = "cmd.exe";
//inicia o processo
Process proStart = new Process();
// Define o nome do processo
proStart.StartInfo = pro;
// chama o método Start para começar
proStart.Start();
}
private void btnExecutarApp_Click(object sender, EventArgs e)
{
// Obtem o caminho que armazena os links favoritos
string meusCaminhosFavoritos =
Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
// Inicia o Firefox
Process.Start("firefox.exe");
// Exibe o conteudo da pasta favorites no navegador
Process.Start(meusCaminhosFavoritos);
}
private void btnExecutarAppArgumentos_Click(object sender, EventArgs e)
{
// Inicia o bloco de dados om o arquivo txt associado
Process.Start("notepad.exe", "C:\\dados\\txt\\FernandoPessoa.txt");
}
private void btnExecutarProcessoMinimizado_Click(object sender, EventArgs e)
{
//inicia o iexplorer minimizado (So funciona se ele estiver fechado)
//caso contrario abre a janela cheia
ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
startInfo.WindowStyle = ProcessWindowStyle.Minimized;
startInfo.Arguments = "www.macoratti.net";
Process.Start(startInfo);
}
}
}
|
Simples e funcional...
Pegue
o projeto completo aqui :
WF_ProcessoCMD.zip
"E Jesus
lhes respondeu: Meu Pai trabalha até agora, e eu trabalho também."
João 5:17
Veja os
Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique
e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ? |
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Visual Studio - Dica de produtividade - Quick Launch - Macoratti.net
Visual Studio - Dica de produtividade - Nuget - Macoratti.net
Terminal de linha de comando - Macoratti
Criando um serviço do Windows - Macoratti
C# - Tratando com serviços do Windows - Macoratti
C# - Agendando Tarefas no Windows - Macoratti
C# - Criando serviços para Windows com o TopShelf - Macoratti