将Powershell命令输出保存到列表框

时间:2017-08-21 07:26:42

标签: c# powershell user-interface listbox

尝试使用 c#编写一些GUI程序。

我需要执行一些Powershell命令(如Get-ContentFilterPhrase)并将其输出添加到列表框中。 我现在能够获得的所有内容只是我列表框第一行中的(收藏)

请有人描述如何做到这一点。

这是我的一次尝试:

var rulelist = new List<string>();
        var rsConfig = RunspaceConfiguration.Create();
        using (var myRunSpace = RunspaceFactory.CreateRunspace(rsConfig))
        {
            PSSnapInException snapInException = null;
            var info = rsConfig.AddPSSnapIn("Microsoft.Exchange.Management.PowerShell.E2010", out snapInException);

            myRunSpace.Open();

            using (var ps = PowerShell.Create())
            {
                ps.AddScript("Get-ContentFilterPhrase | Where-Object {$_.Influence -Match 'BadWord'}| Format-Table -Property Phrase");
                var results = ps.Invoke();
                foreach (var result in results)
                {
                    rulelist.Add(result.ToString());
                }
            }
            listBox1.Items.Add(rulelist);
        }

0 个答案:

没有答案