How to call PowerShell cmdlets from C # in Visual Studio
1 answer
Yes, you can call cmdlets from your C # code.
You will need these two namespaces:
using System.Management.Automation;
using System.Management.Automation.Runspaces;
Open the gap:
Runspace runSpace = RunspaceFactory.CreateRunspace();
runSpace.Open();
Create a pipeline:
Pipeline pipeline = runSpace.CreatePipeline();
Create a command:
Command cmd= new Command("APowerShellCommand");
You can add parameters:
cmd.Parameters.Add("Property", "value");
Add it to your pipeline:
pipeline.Commands.Add(cmd);
Run command (s):
Collection output = pipeline.Invoke();
foreach (PSObject psObject in output)
{
....do stuff with psObject (output to console, etc)
}
Does this answer your question?
+7
source to share