Überwachung von Orten

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Nibel.

    Überwachung von Orten

    Hallo

    Ich habe dieses Scripts einmal geschrieben und es funktionierte auch prima, als ich es heute wieder einmal testen wollte kommt immer eine Fehlermeldung: " Das angegebene Pfadformat wird nicht unterstützt." zu der Zeile:

    VB.NET-Quellcode

    1. oStream = New IO.StreamWriter(sFile)

    Ihr könnt es ja mal bei euch testen ob es funktioniert, und dann ein einfach eine Antwort schreiben.

    VB.NET-Quellcode

    1. Imports System.IO
    2. Public Class Form1
    3. Private watchPath As String = "c:/"
    4. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    5. Dim watcher As New FileSystemWatcher(watchPath)
    6. watcher.NotifyFilter = NotifyFilters.LastAccess Or NotifyFilters.FileName
    7. watcher.Filter = "*.*"
    8. AddHandler watcher.Changed, AddressOf OnChanged
    9. AddHandler watcher.Created, AddressOf OnChanged
    10. AddHandler watcher.Deleted, AddressOf OnChanged
    11. AddHandler watcher.Renamed, AddressOf Onrenamed
    12. watcher.SynchronizingObject = Me
    13. watcher.EnableRaisingEvents = True
    14. End Sub
    15. Private Sub OnChanged(ByVal Source As Object, ByVal e As FileSystemEventArgs)
    16. ListBox1.Items.Add("Datei: " & e.FullPath() & " " & e.ChangeType.ToString())
    17. End Sub
    18. Private Sub Onrenamed(ByVal Source As Object, ByVal e As RenamedEventArgs)
    19. ListBox1.Items.Add("Datei: " & e.OldFullPath() & " umbenannt in " & e.FullPath)
    20. End Sub
    21. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    22. Dim sFile As String
    23. sFile = Application.StartupPath & "C:\system32-liste.dat"
    24. ListBox_Save(ListBox1, sFile)
    25. End Sub
    26. Public Sub ListBox_Save(ByVal ListBox As ListBox, ByVal sFile As String)
    27. ' Inhalt einer ListBox speichern
    28. Dim oStream As IO.StreamWriter
    29. Dim i As Short
    30. oStream = New IO.StreamWriter(sFile)
    31. For i = 0 To ListBox.Items.Count - 1
    32. oStream.WriteLine(ListBox.Items(i))
    33. Next
    34. oStream.Close()
    35. End Sub
    36. Public Sub ListBox_Read(ByVal ListBox As ListBox, _
    37. ByVal sFile As String)
    38. ' Inhalt einer ListBox speichern
    39. Dim oStream As IO.StreamReader
    40. Dim sLine As String
    41. ' ListBox löschen
    42. ListBox.Items.Clear()
    43. ' Existsiert die Datei?
    44. Dim oFile As New IO.FileInfo(sFile)
    45. If oFile.Exists() = True Then
    46. oStream = New IO.StreamReader(sFile)
    47. ' Datei zeilenweise auslesen
    48. Do
    49. sLine = oStream.ReadLine()
    50. If IsNothing(sLine) Then Exit Do
    51. ListBox.Items.Add(sLine)
    52. Loop
    53. oStream.Close()
    54. End If
    55. End Sub
    56. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    57. Form2.Show()
    58. End Sub
    59. End Class


    Verschoben, da ein nicht funktionierender Code kein Tipp sein kann.

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

    als ich es heute wieder einmal testen wollte kommt immer eine

    das kann nicht funz ....

    VB.NET-Quellcode

    1. Private watchPath As String = "c:\"

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „SystemUnknow“ ()

    VB.NET-Quellcode

    1. sFile = Application.StartupPath & "C:\system32-liste.dat"

    Das ergibt ja auch keinen Sinn. Da stände dann "C:\blabla\blu\C:\system32-liste.dat"
    Ich denk mal, das ist einfach nur ein Denkfehler und du musst das C: entfernen...

    So solte es klappen:

    VB.NET-Quellcode

    1. sFile = Path.Combine(Application.StartupPath , "system32-liste.dat"