Вывести результат работы скрипта 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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5