いくつかのフォルダーの変更、作成、および削除を監視するWindowsサービスに取り組んでいます。小さな変更がないか単一のファイル(構成設定を含むXMLファイル)を監視する1人のウォッチャーを除いて、すべてうまく機能します。
Windowsサービスコードを取得して、ファイルシステムウォッチャー用の開始/停止ボタンを備えた単純なWindowsアプリケーションに入れて、ステップスルーしてみました。XML構成ファイルのファイル変更を検出することはありません。変更は実際に行われており、ファイルの「変更日」が更新されています。
XmlEventReferences = New System.IO.FileSystemWatcher()
XmlEventReferences.Path = "C:\XmlReferences\"
XmlEventReferences.Filter = "*.xml"
XmlEventReferences.NotifyFilter = IO.NotifyFilters.FileName
AddHandler XmlEventReferences.Changed, AddressOf ReloadEventReferences
AddHandler XmlEventReferences.Created, AddressOf ReloadEventReferences
AddHandler XmlEventReferences., AddressOf ReloadEventReferences
XmlEventReferences.EnableRaisingEvents = True
これはコードの一部であり、これはXMLファイルのサンプルです。
<EventReference>
<ER_EL_NUMBER>1</ER_EL_NUMBER>
<ER_SEND_TO_DATABASE>true</ER_SEND_TO_DATABASE>
<ER_ACTIVATE_ALARM>true</ER_ACTIVATE_ALARM>
<ER_DESCRIPTION />
</EventReference>