Folders Access Monitor v0.52



v0.52
fam052.zip
MD5(d7127a0021c630fba49492c667c034f8)


メインフォーム

ログフォーム


作成のきっかけ

ダウンロード系や動画編集系のソフトの使用時など、ファイルの出入りが激しいフォルダの中を
リアルタイムに知ることできたら便利だろうと思って作ってみました。

機能

フォルダ内のファイルを監視します。
また、ファイル生成に連動し、指定の処理を行います。

監視できること
ファイルの更新、新規作成、削除、リネーム、サブフォルダの作成、削除

こんなときに

複数ファイルをダウンロードするとき
ビデオファイルのエンコード・キャプチャー時に
LAN経由のファイルコピーのモニターに

リアルタイムでファイルの変化を眺めることができます。


使用方法

1.fam.exeを起動すると、常駐トレイにアイコンが追加され、メインフォームが表示されます。

a.監視フォルダの指定
・フォルダ-追加
フォルダの選択ダイアログが表示されるので、監視したいフォルダを選びます。
なお、フォルダーはいくつでも追加はできますが、あまり多くを指定すると、CPU負荷が掛かりすぎます。
・フォルダ-削除
リスト内のフォルダを選択したまま選ぶと削除できます。
・エクスプローラから取得
エクスプローラの設定で、ツール-フォルダオプション-表示-詳細設定-ファイルとフォルダ-タイトルバーにファイルのパス名を表示する
にチェックが付いていると、エクスプローラで開いているパス名を取得でき、メインフォームに表示します。
それをクリックすると、監視フォルダに追加されます。
※監視フォルダ数、オプションに変更があると、設定の「開始時に比較元をクリアする」にチェックが付きます。

監視フォルダに登録されると、サブ監視・なし、階層数 0になっています。
サブフォルダも監視したい場合は、フォルダ名の部分をダブルクリックします。
すると、フォルダ詳細のところに、フォルダ名が表示されますので、
サブ監視のする・しない 階層数の設定をします。階層数は、0にするとすべてのサブフォルダを監視の対象にします。
OKをクリックすると、設定が反映されます。

b.監視間隔の設定
ファイルの状態を監視するために、一定時間事にファイルのスナップ(ログ)を取得します。
ここで指定するのは、前回取得終了してから次回取得開始するまでのアイドリングの時間のことです。
デフォルテで3秒になっています。
監視フォルダが多い場合や、頻繁に監視する必要が無い場合は、数値を大きくしておいた方がいいです。

2.監視の開始
モニター-開始を選ぶと、メインフォームが消えて、ログフォームが、デスクトップ左上に表示されます。
ファイルに変更があった場合に、ログ、更新、新規、削除、リネームタブ内のリスト表にそれぞれ表示されます。

・所要時間
ファイルの取得から比較に掛かった時間(秒)を過去10個にさかのぼって表示されます。
CPU使用率のグラフを簡略したものと思ってください。
左が過去、右が現在です。

監視状態の場合、メインフォームでの表示と、常駐トレイ内のアイコンの矢印が水色から赤に変わります。
また、ファイル監視が実際に動いているときに、フォルダの色が黄色から赤に変わります。

3.その他

a.ポップアップメニュー
常駐トレイのアイコンで右クリック、メイン&ログフォームで右クリックすると、ポップアップメニューが表示されます。
メインフォーム表示切替え → 表示・非表示を切り替えます。
ログフォーム表示切替え → 〃
開始 → モニター-開始と同じ
停止 → モニター-停止と同じ
終了 → メインフォームを閉じると同じ

b.ログ
保存は、ログフォーム上のログを2つのファイルに分けて保存します。
消去は、消去します。

4.ファイル生成連動機能(v0.60〜)

「ファイル生成連動機能を使う」にチェックを入れると、下にある、プロフィール名のコンボボックスが有効になります。
ここは、fam_action.iniで定義されている連動処理の名称(プロフィール)が格納され、連動処理を選べます。
なお、まだ、βという性格上、fam_action.iniは、エディッタ等で編集してください。
fam_action.iniを編集する機能は、追って追加する予定です。


ファイル変動の定義

現在のファイルのスナップをA,前回のファイルのスナップをBとします。

更新
AとBで同じファイル名で、ファイルサイズもしくは更新日時に相違がある場合

新規
AにあってBにないファイルは、新規と判断します。

削除
Bにあって、Aにないファイルは、削除と判断します。

また、サブフォルダの新規作成と削除も同様

リネーム
AとBで、ファイル名が違うけど、ファイルサイズと更新日時が同じ場合


監視の処理内容

1.フォルダの展開
サブも対象にしている場合は、選択されたフォルダにサブが含まれているか判定し、あったら展開します。

2.各々のフォルダに含まれているファイル名とサイズ、日時を取得します。

3.それぞれのファイルについて、前回と今回のスナップをファイル変動の定義に基づいて比較します。

※初回フォルダ、ファイルの情報取得時に、1.と2.の合計が15秒以上掛かる場合、CPUへの負荷が過度になると判断し、
続けるかどうかのダイアログが表示されます。
その場合「はい」をクリックすることを強くお薦めします。(→中止を意味します。)

注意事項

○フォルダ及びファイルの情報取得中は、一時的に、CPUへかなりの負荷がかかる場合があります。
例)
・監視フォルダの指定数が多い
・サブフォルダ数が非常に多いフォルダでサブも対象にした場合(Windows(WINNT)フォルダ等)
※ファイル、フォルダの取得に15秒以上かかる場合は処理の続行を確認します。
そのため、Windows2000やXPなどのOSでの使用を強く推奨します。

並行してCPUへの負荷のかかるソフトを使用中に、応答なしになる可能性もあります。
そのときは、監視するフォルダを減らすことや、もし、サブも対象にしている場合は、サブの指定をなくすなど
対処してください。

TO DO

ログウィンドウのサイズを変更できるようにする

インストール・アンインストール

当アーカイブを解凍後、fam.exeを実行してください。
レジストリは一切いじりませんので、アンインストールはfam.exeを削除するだけで済みます。

開発環境

Windows2000Pro SP4
Delphi 6 Personal(無償版)

動作環境

動作確認は、Windows2000,XPで行っています。
おそらく、Windows98SE,Meでも使えると思いますが、あまりお薦めできません。

免責・その他

このソフトは、フリーソフトとして公開します。
著作権は、作者が保有します。
とりあえず、公開できそうな所まで来れたので、公開したものなので、
細かな部分で不具合があるかもしれません。
このソフトに起因すると思われるトラブルにより、何らかの損害が生じたとしても
作者は責任を負えません。すべては、自己責任の上、お願いします。
バージョン番号にβが付いている場合は、二次配布は禁止とします。
それ以外は、二次配布は自由に行って構いませんが、その際にアーカイブを改変することは禁止します。
なお、パソコン雑誌等のCD−ROMにて、ソフトを収録する場合は、必ず事前にメール
(yakki_@hotmail.com)で連絡ください。
これは、 どの雑誌で紹介されているのか作者として把握したいことが第一の理由です。
Delphi 6 Personalで開発しているので、商用・業務での使用はしないで下さい。


更新履歴

v0.52 2006.6.25
・ファイルサイズが4GB超の場合に、正しく数値を表示していないのを修正
なお、本バージョンは、v0.51の修正版ということで、v0.60のファイル生成連動機能は、無効になっています。

v0.60β1 2006.1.11
・ファイル生成連動機能を追加しました。
※fam_action.iniの内容を適宜、エディッタ等で編集してください。

v0.51 2005.8.7
・監視間隔、フォルダ詳細-階層数のUpDownボタンの増減がおかしかったのを修正

v0.50 2005.6.5
・フォルダの選択で、マイネットワークを選択できるようにした。
 ※フォルダー選択ダイアログコンポーネントの使用を中止しました。

v0.42 2005.1.22
・ログフォームを最小化できるようにボタンを付加した。
・更新リストにおいて、監視ファイルが読み書き用にオープンできる状態であるとき、赤の丸(中白)アイコンを表示するようにした

v0.41 2004.4.12
・初回起動時に、監視間隔時間を保存しないことがある不具合を修正

v0.40 2004.3.25
・サブフォルダの監視有無、数をフォルダごとに設定できるようにした
・更新リスト内に増加サイズをMBit/S単位での表示を追加した

v0.30 2003.12.13
・2GB以上のファイルサイズがマイナス表記になってしまうのを修正

v0.20 2003.12.7
・常駐トレイでの左クリックでフォーム表示にした
・メインフォームとログフォームで、右クリックすると、ポップアップメニューを表示するようにした
・監視フォルダと監視間隔を保存するようにした。
・監視フォルダのあるドライブの空き容量表示で取りこぼしがあったのを修正


v0.10 2003.12.4

とりあえず使えるところまで来たので公開