ネットワーク共有 ( ) 内のフォルダーを監視するサービスを作成し\\\\machinename\abc\
、新しいファイルが追加されるたびに、そのファイルに対して何かを行います。
コード自体は、テスト ハーネスから実行すると正常に動作しますが、サービスとして実行するとSystem.IO.FileNotFoundException
、新しいファイルがネットワーク フォルダーに追加された瞬間にサービスがクラッシュします。
サービスはユーザー名とパスワードを使用してユーザーとして実行されているため、特にVS内からテストハーネスからコードを実行するときにこの問題がないことを考えると、何が起こっているのかわかりません。
******編集******** 問題を解決したことを追加したかっただけです。重要なのは、ファイルを処理する前にファイルが読み取り可能であることを確認することです (つまり、ループ内に try-catch ステートメントを記述し、ファイルの FileStream オブジェクトを取得しようとします)。また、テスト ハーネスからサービスを実行したときには、何らかの奇妙な理由でこれが問題にならなかったことも注目に値します。とにかく問題が解決してよかったです!