シンプルな C# アプリ (WPF) があり、新しい *.pdf のネットワークの場所をポーリングしています。アプリは昇格して実行されます。
ネットワークの場所は P:\ としてローカル PC にマップされているため、Directory.GetFiles("p:\", "*.pdf") を実行するだけで P:\ を監視するのは非常に簡単です。このテクニックはうまく機能します。
しかし、先日、「パス 'P:\' の一部が見つかりませんでした」(DirectoryNotFoundException) という例外に遭遇しました。
ドライブが PC にマップされていることに気付きましたが、IT 担当者が Windows エクスプローラーでドライブをクリックすると、ログインとパスワードが必要になりました。その後、エクスプローラーで P:\ を表示できましたが、アプリはまだ p: にアクセスできませんでした。
IT担当者にログイン/パスワードを削除してもらったところ、うまくいきました(ただし、再起動が原因だった可能性もありますが、よくわかりません)。
私を混乱させているのは、マップされた場所のパスワード保護を「有効にした」瞬間を認識していないため、いつ、なぜ、どのように機能しなくなったのかわかりません. パスワードで保護されていることすら知りませんでした。
それは私の非常に単純なはい/いいえの質問につながります: マップされたドライブが Windows エクスプローラーでパスワード保護されており、ユーザーがエクスプローラーでアクセスできるようにログイン/パスワードを入力した場合、私のアプリがユーザー/パス情報でログインする必要がありますか?
答えが「いいえ」の場合は、ユーザー/パスを使用して p:\ にアクセスするための適切な手法をググってみます。しかし、私の問題についての説明は大歓迎です。
ありがとう