ハードドライブを定期的(スケジュール上)にバックアップ/フォーマットするプログラムを作成しています。フォーマット中、私はそれを取る第2の(同一の)ドライブを持っています。私がしたいのは、ドライブをフォーマットして(F:\と言う)、(この部分はオプションです...)F:\から他のドライブへのトラフィックをリダイレクトすることです(G:\と言う)。プログラムでCドライブでハードドライブをロックする
C#を使用してF:\ドライブを「ロック」して誰も読み書きできない方法がありますか?フォーマットを実行する直前に誰かがドライブに書き込もうとは思わない。今の私の目的のために、キーはドライブに書き込むことができないようにすることですが、私は完全なロック(読み書き)を好むでしょう。私はFile.Open(FullPath, FileMode.Open, FileAccess.ReadWrite, FileShare.None)
を使用して他の人がそれにアクセスできないようにするファイルを知っています。ドライブに似たものはありますか?
これが可能な場合は、ボーナスとして、F:\からG:\へのトラフィックをリダイレクトできる方法がありますか? (G:\は、ほぼリアルタイムでF:\から複製されているので、ファイルパスでFをGに置き換えるだけでOKですが、プログラムで可能かどうかはわかりません)。
は、フォーマット中にあなたがドライブに足すてみまし認識していませんよ?ドライブを「フォーマット」しないでください。 – dcg
フォーマットするとドライブがアンマウントされます。バックアップとフォーマットの開始との間には短い時間があります(*リアルタイム*の近くにバックアップされます)。ドライブをロックしてバックアップを取ってから、バックアップとフォーマットの間で何かがバックアップされている間、またはそれ以上に悪化するリスクなしにフォーマットを開始するようにしています。 – BrianH