我试图在c#中执行一个简单的powershell命令并输出结果。 Server 2016上的Powershell v5.1
PowerShell ps = PowerShell.Create();
ps.AddCommand("Get-DhcpServerInDC");
Collection<PSObject> results = ps.Invoke();
StringBuilder sb = new StringBuilder();
foreach (PSObject obj in results) {
sb.AppendLine(obj.ToString()); }
txt_adt_updateTextbox.Text = sb.ToString();
但我没有得到DHCP服务器及其IP地址的列表,而是得到了以下内容。
DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC DhcpServerInDC
答案 0 :(得分:0)
主机通常会在PowerShell中显示格式良好的列表/表,例如主机,控制台等。在这种情况下,您是主机,因此您需要进行格式化。
从文档看,您似乎应该找回WMI对象的集合。使用我以前的答案之一中显示的技术来获取所需的数据: