データバックアッププログラムを作成しています。一部のファイルが実行中のプロセスによってまだ使用されている間に、あるフォルダーから別のフォルダーにファイルをコピーする必要があります。実行中のプロセスがファイルアクセスを共有する場合は問題ありません。ただし、ファイルが共有されていない場合は例外が発生します。(FileShare.None)
C#で非共有ファイルを読み取る方法があるかどうか疑問に思っています。
ありがとう、
Vista以降を使用している場合のテクニックがあります。ボリューム シャドウ コピー機能を使用できます。ただし、C# で作業するのは面倒なので、私が提供できるのは参考文献だけです。ただし、ソリューションを開発するのではなく、ソリューションを管理する場合は、Windows バックアップを使用して、スケジュールに従ってファイルをコピーできます。
リンク:
内部の C# は、ファイル共有動作など、オペレーティング システムが提供するファイル アクセス操作を使用します。したがって、C# はこれを超えることはできないと思います。