Einfacher Listbox Ftp Browser für Fritzbox Nas ( private ) Mediathek ?

  • VB.NET

    Einfacher Listbox Ftp Browser für Fritzbox Nas ( private ) Mediathek ?

    ACHTUNG : FTP - Wegen Passwort Sicherheit nur für Private Zwecke verwenden !

    Suche nach einfachen FTP Browser .

    VB.NET-Quellcode

    1. Option Strict On
    2. Imports System.Text
    3. Imports System.Net
    4. Public Class Form1
    5. Dim ftp_pfad, username, password As String
    6. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    7. ftp_pfad = "xxxxxx/FRITZ/mediabox/Video_Streams/"
    8. username = "xxxxxx"
    9. password = "xxxx"
    10. ftp_ordner_auslesen()
    11. End Sub
    12. Dim selectet_listbox_eintrag As String
    13. Dim ausführbare_datei As String
    14. Dim builder As New StringBuilder
    15. Private Sub ListBox1_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
    16. If Not ListBox1.SelectedItems.Count = Nothing AndAlso ListBox1.SelectedItem.ToString = "Verbindungsfehler !" Then
    17. ftp_ordner_auslesen()
    18. End If
    19. If Not ListBox1.SelectedItems.Count = Nothing AndAlso Not ListBox1.SelectedItem.ToString = "" AndAlso Not ListBox1.SelectedItem.ToString = "Verbindungsfehler !" Then
    20. If Not ListBox1.SelectedItem.ToString = "[ Übergeordnetes Verzeichnis ]" Then
    21. ausführbare_datei = IO.Path.GetExtension(ListBox1.SelectedItem.ToString)
    22. If ausführbare_datei = "" Then
    23. builder.Append(ListBox1.SelectedItem.ToString & "/").ToString()
    24. ftp_ordner_auslesen()
    25. End If
    26. 'vlc_play()
    27. Else
    28. Try
    29. Dim result As String = ""
    30. Dim ss As String = builder.ToString.Substring(0, builder.ToString.LastIndexOf("/"))
    31. builder.Clear()
    32. result = ss.Substring(0, ss.LastIndexOf("/")) & "/"
    33. builder.Append(result)
    34. Catch ex As Exception
    35. builder.Clear()
    36. End Try
    37. ftp_ordner_auslesen()
    38. End If
    39. End If
    40. End Sub
    41. Private Sub ftp_ordner_auslesen()
    42. If BackgroundWorker1.IsBusy = True Then
    43. BackgroundWorker1.CancelAsync()
    44. End If
    45. If BackgroundWorker1.IsBusy = False Then
    46. BackgroundWorker1.RunWorkerAsync()
    47. ListBox1.Items.Clear()
    48. ListBox1.Items.Add("Bitte warten ...")
    49. End If
    50. End Sub
    51. Dim list_ende As String
    52. Dim liste As New List(Of String)
    53. Private Sub BackgroundWorker1_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
    54. liste.Clear()
    55. Try
    56. Dim Request As Net.FtpWebRequest = CType(Net.FtpWebRequest.Create(New Uri(ftp_pfad & builder.ToString)), FtpWebRequest)
    57. Request.Credentials = New NetworkCredential(username, password)
    58. Request.Method = Net.WebRequestMethods.Ftp.ListDirectory
    59. Dim Response As Net.FtpWebResponse = CType(Request.GetResponse(), FtpWebResponse)
    60. Using myReader As New IO.StreamReader(Response.GetResponseStream(), System.Text.Encoding.Default)
    61. Do While myReader.EndOfStream = False
    62. liste.Add(myReader.ReadLine())
    63. Loop
    64. End Using
    65. Catch ex As Exception
    66. If Not builder.ToString = "" AndAlso Not ex.Message.ToString = "Die Verbindung mit dem Remoteserver kann nicht hergestellt werden." Then
    67. list_ende = "[ Übergeordnetes Verzeichnis ]"
    68. End If
    69. If ex.Message.ToString = "Die Verbindung mit dem Remoteserver kann nicht hergestellt werden." Then
    70. list_ende = "Verbindungsfehler !"
    71. builder.Clear()
    72. End If
    73. End Try
    74. End Sub
    75. Private Sub BackgroundWorker1_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted
    76. ListBox1.Items.Clear()
    77. liste.Sort()
    78. If Not liste.Count = Nothing Then
    79. If Not builder.ToString = "" Then
    80. ListBox1.Items.Add("[ Übergeordnetes Verzeichnis ]")
    81. End If
    82. For Each video_liste As String In liste
    83. ListBox1.Items.Add(video_liste)
    84. Next
    85. Else
    86. ListBox1.Items.Add(list_ende)
    87. End If
    88. End Sub
    89. End Class



    ZB:

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Private Sub vlc_play()
    2. Select ausführbare_datei.ToLower
    3. Case ".mp4"
    4. Dim pr() As Process = Process.GetProcessesByName("vlc")
    5. If pr.Length > 0 Then
    6. pr(0).Kill()
    7. End If
    8. If My.Computer.FileSystem.FileExists("C:\Program Files (x86)\VideoLAN\VLC\vlc.exe") Then
    9. Using player As New Process()
    10. player.StartInfo.FileName = "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"
    11. player.StartInfo.Arguments = " -vvv " & ftp_pfad & builder.ToString & ListBox1.SelectedItem.ToString
    12. player.Start()
    13. End Using
    14. End Select
    15. End Sub

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „TVX“ ()