Вывести результат работы скрипта PowerShell в ListView - Visual Basic .NET
Формулировка задачи:
Есть скрипт на powershell, который выводит список принтеров с домена:
результат его работы такой
Name ShareName PortName
---- --------- --------
Xerox-3250 Xerox-3250 10.57.1.162
Xerox-3250 Xerox-3250 10.57.1.161
Xerox-3250 Xerox-3250 10.57.1.165
нашел в интернете библиотеку System.Management.Automation, которая интегрирует powershell в vb.net, и выводит результат в текстовое поле. вот весь код:
ставил библиотеку вот отсюда:https://www.nuget.org/packages/System.Management.Automation/
результат выполнения всего кода такой(см. вложение). Выводиться в TextBox
все работает шикарно, но есть одно но. как можно (и возможно ли вообще) перепилить код так что бы информация выводилась по столбцам в ListView.
Пожалуйста, помогите! буду рад вашей помощи! Заранее большое спасибо!!!
Решение задачи: «Вывести результат работы скрипта PowerShell в ListView»
textual
Листинг программы
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
FillListView(TextBox1.Text, ListView1)
Label1.Text = "Всего принтеров: " & ListView1.Items.Count
End Sub
Public Sub FillListView(SourceText As String, LV As ListView)
LV.Clear()
Dim LINES() As String = SourceText.Split(New Char() {vbCrLf}, System.StringSplitOptions.RemoveEmptyEntries)
Dim Columns() As String = LINES(0).Split(New Char() {Space(1)}, System.StringSplitOptions.RemoveEmptyEntries)
For Each item In Columns : LV.Columns.Add(item).Width = 130 : Next
For i = 2 To LINES.Length - 1
If LINES(i).Trim.Length > 0 Then
Dim name As String = Strings.Left(LINES(i), 37).Trim
Dim sharename As String = Strings.Mid(LINES(i), 38, 40).Trim
Dim portname As String = Strings.Mid(LINES(i), 77, 36).Trim
LV.Items.Add(name).SubItems.AddRange({sharename, portname})
LV.Items(LV.Items.Count - 1).ImageKey = "printer.png"
End If
Next
End Sub
End Class