フォルダの変更を監視する方法を試してみるのに問題があります。これは私が持っているところまでです:VB.net/WPFでフォルダを見る
Class MainWindow
<PermissionSet(SecurityAction.Demand, Name:="FullTrust")> _
Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
Dim Path As String = "C:\Temp"
' Create a new FileSystemWatcher and set its properties.
Dim watcher As New FileSystemWatcher()
watcher.Path = Path
' Watch for changes in LastAccess and LastWrite times, and
' the renaming of files or directories.
watcher.NotifyFilter = (NotifyFilters.LastAccess Or NotifyFilters.LastWrite Or NotifyFilters.FileName Or NotifyFilters.DirectoryName)
' Only watch text files.
watcher.Filter = "*.txt"
' Add event handlers.
AddHandler watcher.Changed, AddressOf OnChanged
AddHandler watcher.Created, AddressOf OnChanged
AddHandler watcher.Deleted, AddressOf OnChanged
AddHandler watcher.Renamed, AddressOf OnRenamed
' Begin watching.
watcher.EnableRaisingEvents = True
End Sub
' Define the event handlers.
Private Shared Sub OnChanged(ByVal source As Object, ByVal e As FileSystemEventArgs)
' Specify what is done when a file is changed, created, or deleted.
MsgBox("File: " & e.FullPath & " " & e.ChangeType)
End Sub
Private Shared Sub OnRenamed(ByVal source As Object, ByVal e As RenamedEventArgs)
' Specify what is done when a file is renamed.
MsgBox("File: {0} renamed to {1}", e.OldFullPath, e.FullPath)
End Sub
End Class
問題は、プログラムがエラーコードなしで終了するフォルダに変更が発生したときです。私はいくつかの関連記事を読んだことがあります。スレッドセーフと関係があることは分かっています。しかし、私はこのプログラムを "スレッドセーフ"にする方法は知らなかった。誰か助けてくれますか?ありがとう!
クラッシュする必要があります: 私は問題があると思いますか?ヌル参照? –
申し訳ありませんが、 "クラッシュ"しないので、プログラムはエラーメッセージなしで終了します。 – qu1ckdry
この種のエラーを将来的にキャッチするには、「共通言語ランタイム例外」の「例外がスローされたときに中断する」を設定します。 Visual Studioのデバッグメニューの[例外...]ウィンドウ – perfectionist