您的位置:首页 > 运维架构 > Shell

Asp.net使用powershell管理hyper-v

2015-11-02 21:09 555 查看
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Management.Automation;
using System.Management.Automation.Runspaces;
using System.Collections.ObjectModel;
using System.Text;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}

protected void Button1_Click(object sender, EventArgs e)
{

RunspaceConfiguration rconfig = RunspaceConfiguration.Create();
PSSnapInException Pwarn = new PSSnapInException();

Runspace runspace = RunspaceFactory.CreateRunspace();
string test = "Import-Module VirtualMachineManager\r\n";
runspace = RunspaceFactory.CreateRunspace(rconfig);
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.AddScript(test);
try
{
var results = pipeline.Invoke();

using (Pipeline pipe = runspace.CreatePipeline())
{
//Start-VM -name XXXXX
Command cmd = new Command("Start-VM");
cmd.Parameters.Add("Name", "test_machine2");
pipe.Commands.Add(cmd);
var result = pipe.Invoke();
Label1.Text = results.ToString();
}
}
catch (Exception ex)
{
throw ex;
Label1.Text = ex.ToString();
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: