Saturday 4 April 2015

Calling Powershell from C#.

Calling Powershell from C#



In the solution explorer, add a project reference to the System.Management.Automation. I always found this in 





using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Management.Automation;
using System.Management.Automation.Host;
using System.Management.Automation.Provider;
using System.Management.Automation.Runspaces;
using System.Collections.ObjectModel;


namespace PowerShell_Call
{
    class Program
    {

        public static string name(string args)
        {

            using (PowerShell powershell = PowerShell.Create().AddCommand("Get-Process").AddArgument(args))
            {
             
                foreach (PSObject result in powershell.Invoke())
                {
                    return result.Members["id"].Value.ToString();
                 
                                 }
            }

            return "";
         

        }    
     
     
        static void Main(string[] args)
        {

            string x = "apnmcp";
            string v=name(x);          
            Console.WriteLine("The value is {0}", v);
            Console.ReadLine();

        }
    }
}

Output :

Console Application


Powershell Output.


No comments:

Post a Comment

ServiceNow onboarding Sailpoint