私はしばらくの間これに苦労しています。File.Copy メソッドを呼び出した後、ファイルにアクセスできません。これが私が試したものです:
File.Copy(sourceFile, destinationFile, true);
FileStream fs = File.Open(destinationFile, FileMode.Open);
2 行目で UnauthorizedAccessException を取得しています。それは言う:パスへのアクセス...が拒否されました。ここに記載されている提案も試しましたが、うまくいきませんでした。
どんな助けでも大歓迎です。
編集:これが私が見つけたものです。私がこれを行う場合:
File.Copy(sourceFile, destinationFile, true);
FileStream fs = File.Open(destinationFile, FileMode.Open, FileAccess.Read);
例外をスローしません。アクセスしようとしているファイルは読み取り専用です。そこで、次のように読み取り専用属性を削除しようとしました。
File.Copy(sourceFile, destinationFile, true);
FileInfo fileInfo = new FileInfo(destinationFile);
fileInfo.IsReadOnly = false;
FileStream fs = File.Open(destinationFile, FileMode.Open, FileAccess.ReadWrite);
そして、以前と同じ例外が発生します。ちなみに、ファイルを手動で開いて編集できるかどうかを確認しましたが、できます。もちろん、読み取り専用チェックボックスをオフにすると。また、デバッグ中に 3 行目の直後に Windows エクスプローラーでファイル属性を確認したところ、ファイルは読み取り専用ではなくなりました。すべてをチェックしたところ、4行目で例外がスローされる理由がわかりません。