2
respostas

Duvida

Instrutor, Obrigado pelo conteudo bem explicado....

porém estou querendo executar comando do PowerShell para iniciar, parar e etc via C#(será aplica em WindowsForms), teria algum conteudo direcionado a isso?

Quando executo o codigo a Baixo meu retorno do hadErros é true. acredito que seja por conta de não ser adm... poderia me direcionar?

obs: o objetivo do botão é reiniciar o serviço

private void button2_Click(object sender, EventArgs e)
        {
            InitialSessionState initial = InitialSessionState.CreateDefault();
            Runspace runspace = RunspaceFactory.CreateRunspace(initial);
            runspace.Open();
            try
            {
                PowerShell ps = PowerShell.Create();
                ps.Runspace = runspace;
                ps.AddCommand("Start-Service");
                ps.AddParameter("Name", "Spooler");
       

                //ps.AddCommand("Remove-Item"); //QUEUE
                //ps.AddStatement();
                //ps.AddCommand("Get-Service"); //START
                //ps.AddParameter("Name", "spooler*");
                //ps.AddCommand("Start-Service");

                ps.Invoke();
                MessageBox.Show(ps.HadErrors.ToString());
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            
        }
2 respostas
private void button2_Click(object sender, EventArgs e)
        {
            InitialSessionState initial = InitialSessionState.CreateDefault();
            Runspace runspace = RunspaceFactory.CreateRunspace(initial);
            runspace.Open();
            try
            {
                PowerShell ps = PowerShell.Create();
                ps.Runspace = runspace;
                ps.AddCommand("Start-Service");
                ps.AddParameter("Name", "Spooler");


                //ps.AddCommand("Remove-Item"); //QUEUE
                //ps.AddStatement();
                //ps.AddCommand("Get-Service"); //START
                //ps.AddParameter("Name", "spooler*");
                //ps.AddCommand("Start-Service");

                ps.Invoke();
                MessageBox.Show(ps.HadErrors.ToString());
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }


        }

Olá Antonione, tudo bem com você?

Peço desculpas pela demora em obter um retorno.

Fico feliz em ver a sua dedicação e empenho para colocar em prática o que está aprendendo junto da Alura, assim como agradeço o seu feedback sobre o curso. Atualmente na Alura não temos um curso específico que aborda sobre a execução de comandos do PowerShell utilizando C#, mas deixo abaixo alguns artigos que serão um bom ponto de partida para a implementação do seu código, basta acessar os links apresentados abaixo:

Observação: Os conteúdos recomendados estão em inglês, comum na área da tecnologia, utilize o tradutor para melhor compreensão.

Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software