■ 使い方

オプション画面 [→メインの画面処理中の画面上書き確認ダイアログ]

オプションダイアログは、FireFileCopyのダイアログ左下の▼ボタンを押して表示されるポップアップメニューより開くことができます。
起動(処理の開始) | 終了(処理の終了) | 操作 | 表示 | メモリ・I/O | ディスク | ドライブモード | ファイル属性 | リネーム | ベリファイ | ログ | アプリケーション | 互換性

■起動(処理の開始)

強制的にバックグラウンドで起動
起動時、フォアグラウンドにならないようにします。コマンドラインやファイラーなどから、バックグラウンド処理したいときに便利です。コマンドラインオプションの /bgに相当します。
ウィンドウ位置を記憶・復元する
前回終了時のウィンドウ位置を復元します。「最小化も記憶」をチェックすると最小化状態で終了した場合、次回も最小化状態で起動します。
多重起動
FireFileCopyの多重起動モードについて「許可する」「許可しない」「キューイング」から選択します。
「キューイング」にすると既にFireFileCopyが処理中のときは、その処理が終わるのを待って自動的に新たな処理を開始する、ということが可能です。なお「キューイング」設定時でもInsertキー(キーボード設定で変更可)を押しながら起動する、またはコマンドラインオプション /nq を指定して起動すると、キューイングされずに処理開始します。 (v4.7.0現在、複数の処理をキューイングさせた場合の処理順は変更できません。待機中に強制的に処理を開始したい場合は、タスクバーの右クリックメニューから「今すぐ実行」を選択します。
「移動」で同じドライブだったら警告する
同じドライブ間(c:→c:など)でのファイルの移動は、ディレクトリエントリの書き換えだけで良いため、FireFileCopyで処理を行なうより、エクスプローラなどで普通に移動を行なった方が高速になります。このチェックを外すと、同じドライブ間のファイルの移動でも「処理をやめますか?」という警告を出さず、強制的に処理(ファイルを読む→ファイルを書き込む)を行ないます。(この場合、ファイルが再配置されるためデフラグの効果があります)
処理を行う前の確認
「コピー」「移動」「同期」それぞれの処理を開始する前に確認するかどうかを設定します。「確認Lv1:メッセージボックスで確認」は「よろしいですか?」というメッセージボックスによる確認です。「確認Lv2:確認のキー入力が必要」はより慎重な方法で、処理前にダイアログが表示され、“yes”という文字列をキー入力しないと処理を開始しません。

■終了(処理の完了)

処理を中止するとき確認する
処理中止ボタンを押したとき、確認してから中止します。
処理が完了したら自動的に終了する
一連の処理が終わったら、FireFileCopyを勝手に終了します。「シェル/コマンドライン起動時のみ」をチェックすると、 シェル拡張やコマンドライン起動時(「送る」メニューや FireFileCopyアイコンへのファイルの D&Dで起動した時)のみ自動的に終了します。
既定の動作
処理完了時に音を鳴らしたり、シャットダウンしたり、任意のファイルを開いたり実行できます。詳しくは→タスクについて
終了時、起動時のフォアグラウンド状態を復元する
起動するときに、どのウィンドウがフォアグラウンドだったか記憶しておき、終了時にFireFileCopyからそのウィンドウへフォアグラウンドを渡します。コマンドラインなどから起動したときに有用です。

■操作

キーボード
キー押下をチェックするいくつかの状況で、お好みのキーを設定できます。

起動:多重起動の一時許可 (起動時にキーを押していると強制的に多重起動できます)

起動:すぐに処理開始しない (シェル拡張の右D&Dや、コマンドライン処理で自動的に処理が始まるような場合、起動時にキーを押していると、自動的に処理開始しません。処理開始前に拡張設定などをしたいときに使います)

処理開始:タイムスタンプの処理変更 (処理開始時にキーを押していると、タイムスタンプの処理モードを変更できます)

リネーム:リネーム名の入力 (リネーム時に、キーを押しているとリネーム名を手動入力できます)

上書き確認:サブ比較ツールを起動 (上書き確認ダイアログの[比較]ボタンを押すときに、キーを押していると別な比較アプリを呼び出せます)

Explorer右クリック:コピー/移動切替え (シェル拡張のコンテキストメニューで起動したとき、キーを押していると、設定(↓の「右クリックのモード」参照)に基づきコピー/移動を切り替えられます)

処理中:エラーメッセージのスキップ (処理中のエラーダイアログで、指定したキーを押しながらOKボタンを押すと、次回からのエラーメッセージを表示しません)

ファイル追加時(Ctrlキーを押しながらドロップしたとき)、ファイルリストウィンドウを自動で開く
Ctrlキーを押しながら処理するファイルをダイアログにドラッグすると、マウスカーソルが+となり、処理ファイルを追加登録できますが、このときファイルリスト画面を自動で開くようにできます。
シェル拡張(セットアップボタン押下)
拡張したい項目にチェックをし「更新」ボタンを押すことにより、シェル拡張(→シェル拡張について)がセットアップされます。どちらもチェックを外して「更新」ボタンを押すと、アンインストールされます。

NT4/2000/XP/Vista :この項目のセットアップには管理者権限が必要です。権限がない場合、ここは淡色表示になります。

右クリックのモード
右クリックメニューから「FireFileCopy...」を選択したとき、「移動」「コピー」のどちらのモードで起動するか、その決定法が指定できます。「FireFileCopy...」選択時、上のキーボード設定の「シェル拡張右クリック:モード切替え」で設定したキーが押されている場合、「コピー」と「移動」が切り替わります。

「通常=前回処理時と同じ・・・」では前回の処理がコピーなら「コピー」で、移動なら「移動」モードを選択した状態で起動します。「通常=コピー・・・」では、キーが押されていないときは「コピー」を選択した状態で起動します。

メニュータイプ
デフォルトのメニュー項目で使用する「シンプルメニュー」と、独自コマンドのメニュー項目を追加したり、メニューをサブメニュー化したりできる「ユーザ定義メニュー」が選択できます。
シェル拡張DLLとして、前者はffc_shell.dll、後者はffc_shell2.dllを使用します。ユーザ定義メニュー有効時はレジストリ(HKEY_CURRENT_USER\Software\FireFileCopy\ShellMenu)にメニュー構造を保持します。

■表示

デフォルトで表示する処理先
メインダイアログの処理先のデフォルト表示をどのようにするかを選択します。任意のフォルダも選択できます。
処理先選択ダイアログにも適用する
上の設定を、処理先選択ダイアログにも適用します。チェックしない場合は従来どおり、Windows標準の規則に従い処理先選択ダイアログを開きます。
処理先選択ダイアログのサイズを記憶する
処理先選択ダイアログの表示サイズを記憶し、次回表示時に復元します。表示サイズの変更ができない古いOS(Windows95/NT4)では、この設定は無視されます。
メッセージの通知方法
各種メッセージボックスや上書き確認ダイアログなどを表示するときに「最前面で表示」「なるべくフォアグラウンド化する」「最小化されていたら復元する」などができます。
処理中の転送速度表示

「元→先の転送速度」は処理元から処理先に何MB/secで転送されているかを表示し、感覚的にはネットワークの転送速度のようなものです。(v3.9.2まではこの方法)
「読み書き速度の平均」は物理的なメディアの読み書き速度が直感的に分かる表示法です。例えばREAD/WRITEともに20MB/secのHDDで100MBのファイルをコピーした場合、読み出しに5秒、書き込みに5秒の計10秒かかりますので、前者の表示では10MB/secとなります。後者ではそのまま20MB/secと表示します。
「個別の読み書き速度」は処理元・処理先のそれぞれの読み書き速度を表示します。

別HDDモードのときは「元→先の転送速度」=「読み書き速度の平均」となります。

メイン画面の処理優先度表示をカラーにする
ダイアログのGo!ボタン上の処理優先度表示をカラー表示することにより、現在の処理優先度を分かりやすく表示します。表示色は↓の「色のカスタマイズ」で変更できます
色のカスタマイズ
いくつかの表示色を変更できます。(FFC.ini編集)

■ メモリ・I/O

最大確保量
ここで指定した以上の物理メモリは確保しません。最大99MBまで指定できます。 空きメモリがたくさんあるからといって、必要以上にメモリを確保してもメモリ確保・解放に時間がかかるだけで高速にはなりません。(→FAQの「バッファサイズを、もっと大きくして高速化できないのか?」参照)  もちろん、ここで例えば 60MBと指定しても、空きメモリが 50MBしかないときはそれ以下しか確保できません。
警告量
バッファサイズがここで指定したサイズを下回りそうなときは警告します。メモリクリーナなどの外部アプリケーションを登録しておくと、警告後にそれを起動し、空きメモリが空くのを待つことができます。
確保したメモリのロック(NT4/2000/XP/Vista)
このオプションは NT系のOSで、数10MB以上のメモリを確保して処理するときに推奨です。FireFileCopyプロセスのワーキングセット(割り当てられるメモリ)サイズを増やし、メモリを確保した分だけロックします。 またメモリをロックすることにより、処理中のページフォールトも減少します。

注意点:
内部サイズをI/Oバイト数の整数倍に調整する
ファイルデータのI/Oに使う内部バッファのサイズ(≒確保バッファサイズ)を、下記の「一度のI/O要求で扱う最大バイト数」の整数倍に調整します。半端なサイズのI/O要求が若干減るため、高速化になる場合があります。なお、このオプションをONしている場合、確保するバッファサイズが「最大確保量」よりも少し少ないサイズになる場合があります。
一度のI/O要求で扱う最大バイト数
一度のI/O要求(ReadFile/WriteFile API)によって読み書きする最大バイト数です。 サイズが大きいほうが、大きいファイルを処理するときのスループットが高くなる傾向にあります。8192kBで問題が無ければ、そのままでOKです。NT系OSでリソース不足のエラーが発生する場合、ドライバの不具合などで読み書き時に問題が生じる場合などは、値を下げてみてください。
デフォルトの処理優先度

ファイル処理スレッドのデフォルト優先度を指定します。優先度はFireFileCopyダイアログのGo!ボタン上のエリア、あるいはコマンドラインオプション /tp: で一時的に変更もできます。低スペックマシンなどは優先度を下げると、処理中のストレスが軽減するかもしれません。

wait x1〜x3は処理に逐一ウェイトを入れるとともに、上記の最大I/Oサイズを小さくし、低速で処理するモードです。x3が一番低速になります。遅くともいいから、処理中のディスク負荷をとにかく下げたい場合などに効果的です。

Vista :Low、Idle、wait x1〜x3にした場合は、Low Priority I/O(ディスクアイドル時に処理を行うI/Oモード)となります。

WRITEバッファリング

小さいファイルやネットワークへの書き込みの場合は、一般的に WRITEバッファ(OSによるバッファリング)を使って書き込む、すなわち遅延書き込みを行なう方が高速になります。ただ、小さいファイルだけの場合は遅延書き込みさせたほうが高速なのですが、小〜中ファイルが混在した状況では、一定のファイルサイズ以下はWRITEバッファ無しで、それ以上は有りと一律に制御しても逆に遅くなるようですので、その辺のアルゴリズムを工夫しています。(まだチューニングの余地あり)

デフォルトではHDDなどの固定ドライブはWRITEバッファリング無し、リムーバブルドライブなどはWRITEバッファリング有りとして いますが、HDDでもバッファリング有りの方が速いなど、環境によって状況は変わってきます。ドライブ毎に手動設定もできるので、チューニングのポイントとなります。(→デバイス設定

またファイルをコピーした際、エクスプローラでは問題無いのに、本ソフトでは問題が生じる(ファイルが壊れる等)場合は、多くの場合、ドライバ側に原因があります。根本的には、その修正を待たなければなりませんが、WRITEバッファリングモードを変えると改善する場合がありますので、その場合にも手動設定をお試しください。


■ ディスク

WRITE前にディスク領域を予約し、断片化を抑える

書き込み操作をする前に、ファイルサイズ分のディスク領域を明示的に予約し、なるべくディスクの連続領域に内容を書き出すようにして、断片化を抑制します。

この操作によるオーバーヘッドは極小さいので、通常は「する」のままでよいでしょう。また kBオーダーの小ファイルは、このような予約を行わなくとも連続領域に書かれることが多いので、指定したファイルサイズ以下の小ファイルは予約を行わないようにできます。なおクラスタサイズ(4kBなど)より小さくしても意味をなしません。

WRITE前に全ファイル作成を先に行い、ディレクトリの断片化を抑える
処理前にディレクトリの断片化が少なくなるようなアルゴリズムにより全ファイルを作成してディレクトリの断片化を抑制します。本処理の開始までに時間がかかることがあります。また処理途中で中止した場合も、中止に時間がかかる場合があります。
「移動」時の処理元の削除タイミング

移動時に処理元のファイルをいつ削除するかを指定します。「後でまとめて」はコピーが完了したファイルについて、区切りの良いタイミングで処理元を削除します。こちらの方が削除するタイミングが遅いので、何かあ ったときに、やや安全です。「WRITE後すぐ」は書き込み後すぐに削除します。

ベリファイ有効時はベリファイ完了時点で削除します。

「同期」時の処理先の削除タイミング
同期(ミラーリング)時に処理先のファイルをいつ削除するかを指定します。既定は「処理の最後」です。「ディスク容量に余裕が〜」は基本的には「処理の最後」ですが、処理先の空き領域が足りなそうなときだけ処理前に不要ファイルを削除するモードです。「処理の始め」にすると常に処理前に不要ファイルを削除するため、処理後の空き領域の断片化をやや軽減できます。

■ ドライブモード

物理的に異なるドライブの判別
処理元・先が、物理的に異なるドライブ(ネットワーク含む)かどうかの判定方法は Win2000以降は自動判定、Win9x/NT4は従来どおりドライブIDにより判定します。Win2000以降はID設定による手動設定も併用できます(→ドライブID設定
READファイルハンドル
一度にオープンして処理するファイルの数です。B/Cモード(→メイン画面)の READ時に適用されます。一応チューニング箇所です。Bモード(同一ドライブ)時は、昔のマシン(PentiumIIなどの頃)は100等の方が速いようですが、最近のマシンでは素直に1にしておくのが良いようです。Cモード(別ドライブ)時は、最近の環境でも100などにした方が速い場合があります。

■ ファイル属性

タイムスタンプの処理モード
処理先に作成されるファイルに、処理元ファイル/フォルダのタイムスタンプをコピーするかどうかを指定します。処理開始時に SHIFTキー(キーボード設定で変更可)が押されていた場合、この設定を一時的に変更できます。
更新時刻を比較するときの許容誤差
本来更新時刻が同じファイルでも、ファイルシステムの違いや、圧縮・解凍したファイルの処理、ネットワークごしの処理などでms、nsオーダーの微妙な違が出ることがあります。これを誤差として、誤差以内なら同一タイムスタンプとして上書き確認などが処理されます。
CDドライブなどからコピー時、[読み取り専用]属性を外す
処理先に作成されるファイルに読み取り専用属性がつかないようにします。ただしCD/DVD以外の読み取り専用メディアからコピーしたときは、読み取り専用のままになることがあります。
NTFS同士のコピー時、副ストリームをチェック・コピーする(NT4/2000/XP/Vista)
このチェックを有効にすると、NTFS間コピー時、副ストリーム(名前つきストリーム)があるかどうか調べ、あればコピーします。

副ストリームの存在チェックには時間がかかるので、常用はお勧めしません(処理速度が低下するため) コマンドラインオプション /st や、ダイアログのメニューから必要なときのみ有効にすることをお勧めします。

フォルダの上書き確認
処理先にすでにフォルダがあるとき、そのフォルダの処理をスキップするかどうかの確認をします。
ファイル登録時、次のシステムフォルダは無視する
ファイル登録時に、System Volume Information や Recycler などのシステムフォルダを無視するようにします。(コマンドラインで ; によって除外指定したのと同じ効果) ここで指定した名前と等しく、ファイルの属性が[システム]かつ[隠し]のフォルダが無視されます。名前だけ一致していても、[システム]かつ[隠し]属性がついていなければ、無視されません。
空のサブフォルダの処理
空のサブフォルダをコピーするかどうかを選択します。「通常はコピー、フィルタ有効時はコピーしない」が既定で、普段は空フォルダもコピーしますが、ファイルフィルタ(名前、更新日時、作成日時、ファイルサイズ)を使用しているときだけコピーしなくなります。「コピーする」は常にコピーします。「コピーしない」は常にコピーしません。この設定はコマンドラインオプション /ed /-edで変更できます。
処理元のジャンクション(Win2000以降)

Win2000以降のNTFSでは、任意のフォルダを、別の任意のフォルダにリパースポイントとしてリンクを張ることができます(エクスプローラのプロパティでは、物理ドライブに対するリンクは“マウントポイント”、フォルダに対するリンクは“ジャンクション”と表示されます) 処理元にりパースポイントがあった場合、その中身をどう扱うかを指定します。

「スキップ」は、リパースポイントを無視します。「展開」はりパースポイントのリンク先を展開してコピーします。(自分自身が含まれていると無限ループになるため、処理できません) 「コピー」はマウントポイント自体を保ったまま処理先にコピーします。(処理先がNTFSで無い場合は「スキップ」と同じ挙動になります)


■ リネーム

リネーム名を問い合わせる
上書き確認ダイアログなどでリネームを指定したときCtrlキー(変更可)を押すとリネーム名を入力できますが、これを常に(キーを押さなくても)入力できるようにします。
システムファイルのリネームを抑制する
同一フォルダ内でのリネームコピーや、上書き確認ダイアログで「以降全てリネーム」などを指定して処理したときに、特定のシステムファイル(Thumbs.dbなど)がリネームコピーされることを防ぎます。(これらのファイルは一時ファイルですので、リネームコピーして残したとしてもゴミファイルとなります) ここで指定した名前と等しく、ファイルの属性が[隠し]のファイルはりネームされません。(上書きもしません) また、名前だけ一致していても[隠し]属性がついていなければ、通常通りリネームされます。
リネーム書式
ここで指定した書式に基づいて、自動リネーム処理が行われます。リネーム動作の詳細およびリネーム書式についてはリネーム処理をご覧下さい。

■ ベリファイ

移動後のファイルサイズチェック
デバッグ的なオプションです。移動元のファイルを削除する前にファイルサイズをチェックし、きちんとコピーできているか確認します。ただしチェックしているからといってファイルの内容までは保証されません。(下記のベリファイなら内容まで、ほぼ保証されます)

通常の使用でサイズが不一致となることはまず無いと思いますので、不要ならばチェックを外しても構いません。また、万が一サイズチェックエラーが出た場合、不具合の可能性もありますので作者までご一報ください。

FastHash.dllのバージョン
ハッシュ計算につかうFastHash.dllのインストール状況を表示します。05年8月の時点で利用できるバージョンはv1.01です(1.00は使用できません)ボタンを押すと配布先のURLを開きます。
ハッシュアルゴリズム
ハッシュ計算に使うアルゴリズムを選択します。エラー検出率はMD5>CRC16ですが、CRC16でも実用上問題ないと思います。計算量もMD5>CRC16なので、低スペックPCでは処理時間も多少違ってくるでしょう。
ドライブ側のキャッシュの影響をなるべく低減する
通常、HDDや各種ドライブは内蔵のキャッシュを持っています。データを書いた直後に読み出しを行うと、物理的なメディアからではなく、このキャッシュからデータを読み出される(WRITEバッファリングなしで書き込んでも...)ため、厳密にベリファイできません。このチェックを有効にすると、ダミーデータを書き込み、本データをキャッシュから追い出すようにします。よって、より厳密にベリファイできます。
ハッシュ計算結果をファイルに出力
ハッシュ計算の副産物としてファイルごとのハッシュ値をテキストに出力します。(詳しくは拡張処理→ベリファイ→ハッシュ計算結果のテキスト出力)

■ ログ

ログファイルの作成場所
処理内容や、エラー情報を記述したログファイルを作成する場所を指定します。既定ではffc.exeと同じフォルダのlogフォルダに作成します。パス長やアクセス権などの関係で指定したフォルダにファイルを作成できない場合 c:\にログ作成を試みます。作成されるファイルはUNICODE版ではUTF-16LE形式になります。
ログにはディスクの処理速度(結構いい加減です。特に writeは、OSの書き込みバッファ(メモリへの書き込み)も含めた速度なため、実際の数値より高めになる事があります)も記録するので、簡単なベンチマークになります。
ログファイル名
指定した時刻書式に基づきログファイル名を生成します。ファイル名は最大50文字です。既定では「FFC 月日-時分秒.log」となります(例:1月2日3時4分56秒に処理を開始したときは「FFC 0102-030456.log」)
作成条件
エラー時のみログ作成、イベント発生時のみログ作成するようにできます。(内部的には隠しファイルで作成し、エラーやイベント発生したら隠し属性除去、何事も無かったらそのままファイル削除、という動作をしていますので、処理中はファイルが見えることがあります)
記録する動作
ログに残す動作を指定します。「コピー」「移動による削除」は通常よくある動作であり、ログに残すと処理速度が低下するかもしれません。この動作はコマンドラインオプション /lg: で変更できます。
同名のログファイルが存在したとき
ログファイル名を固定ファイル名などにしていて、作成しようとしているログファイル名と同名のログファイルが、すでに存在したときの動作を「上書き」「追記」「非出力」から選択します。
最大履歴数
処理先履歴の最大記録数を指定します。(0〜20) 0の場合は履歴を残しません。
処理先が登録項目だったら履歴は更新しない
処理先が、登録された処理先に含まれていた場合、履歴の更新はしません。

■ アプリケーション

メモリクリーナなど
メモリクリーナなどの、外部アプリケーションを登録できます。
アプリケーションに引数を渡したい場合は‘option:’に指定します。
ファイル比較など
上書き確認の際、2つのファイルを比較したり、相違を表示したりするアプリケーションを最大5個まで登録できます。
アプリケーションに渡すファイル名は‘option:’に指定します。(処理元=%1、処理先=%2)

上書き確認ダイアログで「比較」ボタンを押すことにより登録したアプリケーションが起動しますが、このとき SHIFTキーを押すことにより、別に登録したもう一つのアプリケーションを呼び出せます。通常はバイナリ比較、SHIFTキー(変更可)を押すとテキスト比較、などと使い分けにどうぞ。
登録フォルダ
よく使う処理元フォルダ/ファイル、処理先フォルダを登録しておくことができます。

■ 互換性

INIファイルのパス
UNICODE版とANSI版で設定を共有する、ユーザ別に設定を分けるなどを行うために、FFC.iniのパスを指定できます。%USERNAME%などの環境変数も含めることができます。変更したパスはFireFileCopyの次回起動時から有効になります。
INIファイルの形式
UNICODE版は FFC.iniの形式も(新規作成分については)UTF-16LEになります。既存のINIがSJISだったらそのままSJISで読み書きしますが、ファイル名にUNICODEでしか表現できない文字が含まれていた場合、それらの履歴が保存できません。読み書き速度もUNICODEネイティブの方が速いはず?
チェックボックスのON/OFFによりINIの形式を相互変換できます。9x版と設定を共有するような場合はチェックを外してください。

<<目次へ戻る