NonSoft

フォルダ内のファイル比較ツールへのダメ出し


 ち〜な〜み〜に〜

フォルダ内のファイル比較ツール」が窓の杜様で評価されて喜んでいたら、、、
その直後にベクター様の「一方的な匿名コメント」でダメ出しを頂きました。

ダメ出しと言っても悪意があるものだけでなく、励みになって感謝するものもあります。
また、ご要望を頂くと今まで作者が使っていなかった便利機能を追加出来て嬉しいです。

ご利用者の何かのお役に立てばと思い、ダメ出し情報要望対応情報良くある問い合わせを公開して置きます。
テキスト差分表示ツール」は「フォルダ内のファイル比較ツール」に同梱されるので合わせて記述します。

やっと見つけた!フォルダ内のファイル比較ツール」と言って応援してくださるサイトや、
『テキスト差分表示ツール』 - 2つのファイルから差分を見つけ出す」と紹介してくださるサイトや、
台湾から海外出張の多忙の中、応援(良い要望提案)してくださる方もいらっしゃいますので頑張ります。

なにかと若輩者のツールですが今後とも宜しくお願い致します。
問い合わせはこちらからお願いします。NonSoftへの問い合わせ


ちなみに、「フォルダ内のファイル比較ツール」や「テキスト差分表示ツール」を使用してくださっているサイト様を紹介します。
TTLでCPUを作ろう!(このサイトを参考にすると簡単にCPUが作れそうです。2ビットCPUの勉強をした頃が懐かしいです。)


2013-02-18 要望対応情報(FTPのユーザIDとパスワードの特殊文字サポート) Ver6.25
FTPのユーザIDとパスワードに特殊文字(@や.)を使用出来るようにしました。
FTPのユーザIDやパスワードにはメールアドレスを使用する事があるため特殊文字(@や.)のサポートが必須でした。

2013-01-23 要望対応情報(Windows8での動作確認) Ver6.24
Windows8での動作を確認しました。ちなみに、2010年10月にWindows7での動作を確認しています。
WindowsVistaでの動作は確認していませんが、たぶん、動くと思います。

2012-09-14 要望対応情報(TextDiffDsp:CSV/HTML出力時にUNICODEで出力する指定) Ver6.22
TextDiffDspのCSV出力時とHTML出力時にUNICODEで出力するかどうかを指定出来るようにしました。
UTF-8ファイルの比較結果をSJIS(デフォルト)でファイル出力するとエラーになる機種依存文字がありました。
UNICODEで出力する事により機種依存文字のファイル出力が可能となりました。

2012-05-18 要望対応情報(TextDiffDsp:CSV出力時にダブルクオーテイションで囲む指定) Ver6.21
TextDiffDspのCSV出力時にダブルクオーテイション(")で囲むかどうかを指定出来るようにしました。
また、ダブルクオーテイション(")で囲む時は、オリジナルのテキストデータ内のダブルクオーテイション(")は、
エクセルの仕様に合わせて、二重ダブルクオーテイション("")に変更するようにしました。

2012-05-18 要望対応情報(FdateComapre:個別ファイルの差分調整係数について) Ver6.21
FdateComapreには「表示内容保存と同時に個別ファイルの差分を出力する」機能があります。
しかし個別ファイルの差分出力時に、TextDiffDspの「差分調整係数」は「自動調整」のみとなっていました。
この要望によりTextDiffDspの「差分調整係数」を「自動調整」だけでは無く、画面設定値を使用可能になります。

2012-04-10 要望対応情報(FdateComapre:クリップボードへのファイルコピー対応) Ver6.20
ファイル一覧を選択してクリップボードへのファイル「コピー」機能を実行する事により、
エクスプローラ等へのファイル「貼り付け」が出来るようにしました。

2011-02-19 要望対応情報(FdateComapre:ファイル操作時の読み取り専用ファイル対応) Ver6.14
読み取り専用ファイルに対して、コピー/削除/文字コード変換/日時変更して良いか確認する機能を追加しました。
ただし、セキュリティで書き込み権限が無いファイルに対する変更は出来ません。

2011-02-19 要望対応情報(TextDiffDsp:バッチモードのエラーダイアログ非表示) Ver6.14
バッチモードでファイル比較時にファイルが存在しなくてもエラーダイアログを表示しないようにしました。
バッチモードではその他のエラーも表示されませんので、エラー内容は画面表示モードで確認する必要があります。

2011-02-19 要望対応情報(TextDiffDsp:表示行数を5万行を超えて挑戦) Ver6.14
テキスト差分表示ツールはメモリ的な問題を考慮し一覧表示に5件の制限がありました。
テキスト差分表示ツールの表示行数を5万行を超えて挑戦する機能を追加しました。

2011-01-11 要望対応情報(テキスト差分比較で1行の折り返しMAX文字数指定) Ver6.10
1行が長いテキストファイルを表示する際の折り返し文字数(1行に表示するMAX文字数)を指定する機能を追加しました。
折り返し文字数を超えた行は自動的に改行して表示しますので、実際の行数より行数が増えて表示されます。
折り返し文字数を指定しない方が処理が早いので、通常は指定しない方が良いと思います。

2010-11-05 要望対応情報(2GByteを超えるファイルのデータ比較) Ver6.06
ファイルサイズが2GByteを超えるファイルのデータ比較が出来るようにしました。
ファイルサイズが大きなファイルのデータ比較には時間が掛かります。

2010-10-18 要望対応情報(点"."で始まるFTPファイル対応) Ver6.04
点"."で始まるFTPファイル(.htaccess等)が表示されない件を改善しました。
しかし、隠しファイルは表示されません(申し訳ありません)。

2010-09-13 要望対応情報(大文字と小文字を区別しないテキスト差分表示) Ver6.02
大文字と小文字を区別しないプログラミング言語に対応するための比較オプションを追加しました。

2010-09-05 要望対応情報(Office2010対応 "xlsx" "docx") Ver6.01
遅くなりましたが、Office2010対応しました。
もともとOffice2010環境でも実行可能でしたが、拡張子の判定処理に"xlsx"と"docx"を追加しました。

2010-09-05 要望対応情報(Windows7対応 x64対応) Ver6.01
遅くなりましたが、Windows7対応しました。
もともとWindows7環境でも実行可能でしたが、Ver6.00以前ではFTP機能に若干の問題がありました。

2010-08-09 要望対応情報(表示対象パス/表示非対象パスのワイルドカード対応) Ver5.99
比較結果を一覧表示(出力)する際に指定する表示対象パスをワイルドカードで指定できるようにしました。
これにより表示対象ファイルをきめ細かく指定する事が出来るようになります。
例えば、Tempフォルダ以下のファイルや拡張子がtmpのファイルを表示しないようにするなどです。

2010-08-05 要望対応情報(ファイル一覧にステップ数(行数)を表示) 未対応(代替案を提案)
この要望をすぐには対応出来ないため、代替案として次の方法を提案しています。
フォルダ内のファイル比較ツールにはファイル一覧をエクセル出力する機能がありますので、
そのファイル一覧に対しエクセルVBAでステップ数(行数)を追加表示する事が出来ます。
そのエクセルVBAは「ファイル一覧にステップ数(行数)を表示するエクセル(VBA)」です

2010-08-05 要望対応情報(ファイル一覧出力と同時に各ファイルの差分を出力する機能) Ver5.98
このツールはFdateCompare.exeとTextDiffDsp.exeの2つソフトが連携しています。
FdateCompareはフォルダ内のファイル一覧を比較し、TextDiffDspは個々のファイルの中身(行)を比較します。
TextDiffDspで変更があった全ファイルの差分出力を行なう場合、一つずつ操作(またはコマンドライン)する必要が有りましたが、
この要望対応により、FdateCompareでフォルダ比較結果(ファイル一覧)を出力する際に、
TextDiffDspで各ファイルの比較結果(テキスト差分)を出力できるようにしました。

2010-08-05 要望対応情報(変更が無いファイルのテキスト差分ファイル出力をしない) Ver5.98
コマンドライン(バッチ)からのテキスト差分出力時に変更が無いファイルの結果出力を行なわない引数を追加しました。
コマンドラインの引数に−Xを指定すると、変更が無かった時に結果ファイルを作成しません。
沢山のファイルのテキスト差分出力を連続バッチ処理しても、変更があったファイルだけ結果ファイルが出力されます。

2010-07-16 要望対応情報(テキスト差分解析精度アップ) Ver5.97
テキスト差分解析精度を更に高めました。

2010-07-14 要望対応情報(EXCEL出力時に条件付書式(差分判定用)を出力) Ver5.96
条件付書式(差分判定用)を出力する事でエクセルシート側でのセル編集時にテキスト差分判定が出来ます。
ツール側で自動的に判定したテキスト差分出力では見づらい時に手動で差分の編集を行なう事が出来ます。

2010-07-14 要望対応情報(空白文字(半角SP、全角SP、TAB)を可視化 Ver5.96
空白文字(半角SP、全角SP、TAB)はテキスト差分表示時に空白表示されるため違いが分かりません。
空白文字(半角SP、全角SP、TAB)を他の文字で可視化する事により半角SP、全角SP、TABの区別が出来ます。

2010-05-26 要望対応情報(比較結果をHTML形式で保存) Ver5.92
比較結果をHTML形式で保存する機能を要望対応しました。コマンドライン(バッチ対応)です。
ファイルやフォルダの比較結果をタイマ・スケージュール等で自動的にHTML出力して公開する事が出来ます。

2010-05-08 要望対応情報(CSV出力時にダブルクオーテーションで囲む) Ver5.91
ファイル一覧をCSV出力する時にファイル名にカンマが使われているとカンマ分割されるため、
ダブルクオーテーションで囲む選択を可能としました。

2010-05-08 要望対応情報(CSV出力時にスペースを埋めて桁あわせ) Ver5.91
ファイル一覧をCSV出力する時に各カラムの桁数が合っていないと見づらいので
スペースを埋めて桁あわせする事を選択出来るようにしました。

2010-04-26 要望対応情報(ESCキーで中止) Ver5.88
情報取得、比較表示時にESCキーで中止(確認メッセージ付き)出来るようにしました。
前々から中止機能を付けたいと思っていましたが、今回要望を頂いてやる気を出しました。

2010-04-26 要望対応情報(ファイラからのドロップ対応) Ver5.88
以前はフォルダ1、フォルダ2、一覧表示エリアへのドラッグ&ドロップのみでしたが
ファイラからのドロップを可能にしました。

2010-04-26 要望対応情報(更新日時の新しいファイルへ*マーク表示) Ver5.88
比較フォルダのどちら側のファイルが更新日付が新しいかを分かりやすくしました。

2010-04-26 要望対応情報(スピードアップ対応) Ver5.88
不効率な処理を改善し処理速度を速くしました。

2010-04-21 要望対応情報(テキスト差分を隣へコピー機能追加) Ver5.85
ファイルの作成日時と更新日時を変更する機能を追加しました。

2010-04-21 要望対応情報(バッチ対応) Ver5.85
フォルダ内のファイル比較ツールにコマンドライン(バッチ)で結果を出力する機能を追加しました。
テキスト差分表示ツールでは既にバッチ対応していましたが、フォルダ内のファイル比較ツールは面倒で未対応でした。
要望があったので今回、こちらも対応しました。作者は応援とか要望とかで伸びるタイプのようです。

2010-04-21 要望対応情報(1万件を超えてファイル比較に挑戦する機能) Ver5.85
フォルダ内のファイル比較ツールはメモリ的な問題を考慮し一覧表示に1件の制限がありました。
実は3万件ぐらいは動作確認で大丈夫でしたが、余裕を考慮して制限を1万件にしていました。
今回、設定で変えれるようにして欲しいという事で1万件超えに挑戦する機能を追加しました。

2010-04-18 要望対応情報(ファイル日時変更機能追加) Ver5.81
ファイルの作成日時と更新日時を変更する機能を追加しました。

2010-04-15 要望対応情報(文字コード変換機能追加) Ver5.80
文字コードが異なるフォルダ内のファイルをまとめて比較する機能を追加しました。
ついでに文字コード表示や文字コード変換する機能も追加しました。

2010-03-10 要望対応情報(ソート機能追加) Ver5.74
一覧の並べ替え(ソート)機能を追加しました。
ファイルコピーやファイル削除時にまとめて選択出来るようになります。

2010-03-03 要望対応情報(ショートカットキー対応)
出来るだけマウスを使わずショートカットだけでの操作を考慮しました。対応内容は以下の通りです。
F5:比較表示、ENTER:テキスト差分表示、ESC:ウィンドウを閉じる(中止と間違えるかな...?)

2010-02-01 要望対応情報(EXCELやCSVファイルの出力機能追加)
EXCELやCSVに出力する機能を追加しました。テキスト差分表示ツールではコマンドラインからも出力出来ます。

2010-01-02 要望対応情報(FTPサーバの漢字ファイル名対応)
FTPサーバの漢字ファイル名対応としてSJIS/EUC/JIS/UTF8のファイル名に対応しました。

2009-12-25 要望対応情報(FTPサーバのファイル比較機能追加)
FTPサーバのファイルとローカルフォルダのファイルを比較出来るようにしました。
もちろん、ファイルコピー(アップロード/ダウンロード)機能も!!
ちなみに、テキスト差分表示ツールではWEBページの比較も出来ます


良くある問い合わせ(ファイル内容が同じなのに更新日時が異なると「変更」として表示される)
1.「データ比較」をチェックしないと更新日時とサイズのみの比較になるため「変更」または「日時」と表示される事があります。 「データ比較」は更新日時とサイズのみの比較より時間が掛かります。

2.テキストファイルの改行コードが異なると違うファイルと判定します。 「データ比較オプション:文字コード判定して比較する」の設定をし「データ比較」すると改行コードが異なっても同じファイルと判定します。

3.テキストファイルの文字コードが異なると違うファイルと判定します。 「データ比較オプション:文字コード判定して比較する」の設定をし「データ比較」すると文字コードが異なっても同じファイルと判定します。

4.「情報取得」をしないで「比較表示」をすると古い情報で比較結果を表示します。「情報取得」を行なってください。 このツールは同一フォルダの時間差比較機能を持っているため事前に取得した情報で比較を行ないます。

5.セキュリティで読み取り拒否しているファイルを「データ比較」すると「変更」と表示されます。

6.バージョン6.06以前ではファイルサイズが2GByteを超えるファイルのデータ比較が出来ませんでした。

良くある問い合わせ(フォルダ比較結果とテキスト差分結果が異なる)
フォルダ比較を文字コード判定しないでバイナリ比較した結果とテキスト差分(文字コード判定比較)では、 結果が異なる事があります。文字コードを判定したテキスト比較時は文字コードの違いや改行コードの違いを 無視して比較しますが、バイナリ比較時は単純にファイルの違いの有無を結果表示します。

良くある問い合わせ(沢山のサブフォルダがあるフォルダの情報取得に時間が掛かる)
このツールはフォルダ内の全てのファイルやサブフォルダの情報を取得して比較するため時間が掛かる事があります。 情報を取得する階層数とかの設定が必要ですかね...?と言うことでVer5.74で階層数設定機能追加!!

良くある問い合わせ(デュアルやクアッド等のマルチCPUをフル活用していない)
申し訳ありません。マルチCPU対応の作りになっていません。
マルチCPUに対応するためにはスレッドを駆使する方法で処理する必要がありますが、現時点、対応出来ていません。

良くある問い合わせ(FTPサーバの隠しファイルが一覧表示されない)
申し訳ありません。FTPサーバの隠しファイルを一覧表示する作りになっていません。
IEの機能を使用してFTPを実現していますが、この方法では隠しファイルを取得する事が出来ないようです。
隠しファイル属性を解除すれば、点"."で始まるFTPファイル(.htaccess等)の表示が可能です。

良くある問い合わせ(起動時にシステムエラー[ランタイムエラー]が発生する)
MSFLXGRD.OCXが入っているVB6ランタイムが必要です。
MSFLXGRD.OCXが入っているVB6ランタイムをインストールしてください。

Windows7のようにVB6ランタイムの基本が入っている場合は、
同梱のMSFLXGRD.OCXをレジストリ登録するだけでも良いです。
<MSFLXGRD.OCXをレジストリ登録する方法1>
1.FdateCompare.exe または TextDiffDsp.exe を管理者として実行する。(一回だけでOK)

<MSFLXGRD.OCXをレジストリ登録する方法2>
1.コマンドプロンプトを管理者として起動する。
2."regsvr32.exe  [パス]\MSFLXGRD.OCX"を管理者として実行する。

良くある問い合わせ(起動時にオートメーションエラーが発生する)
良くある問い合わせでは無いのですが、、、
「オートメーションエラーです。指定されたモジュールが見つかりません。」と表示される環境が1回だけありました。
問い合わせ頂いた方からの情報(発生する場所等)から推測して解決方法をお試し頂いて解決する事が出来ました。
今後、同様の問題が起こった方のお役に立つように、解決方法をここに書いて置きます。
1."regsvr32.exe /u scrrun.dll"を実行する。
2."regsvr32.exe scrrun.dll"を実行する。
この2つコマンドを順番に実行する事でscrrun.dllのレジストリ再登録する事が出来ます。
全ての環境で有効か?システムに悪影響が無いか?の保障が出来ないため自己責任でお願いします。

良くある問い合わせ(「ActiveX コンポーネントはオブジェクトを作成できません。」が発生する)
良くある問い合わせでは無いのですが、、、
「ActiveX コンポーネントはオブジェクトを作成できません。」と表示される環境が1回だけありました。
問い合わせ頂いた方からの情報(発生する場所等)から推測して解決方法をお試し頂いて解決する事が出来ました。
今後、同様の問題が起こった方のお役に立つように、解決方法をここに書いて置きます。
1."regsvr32.exe /u scrrun.dll"を実行する。
2."regsvr32.exe scrrun.dll"を実行する。
この2つコマンドを順番に実行する事でscrrun.dllのレジストリ再登録する事が出来ます。
全ての環境で有効か?システムに悪影響が無いか?の保障が出来ないため自己責任でお願いします。

良くある問い合わせ(SFTPやSCPで接続できないか)
"ftp://"対応ですが、残念ながらSSHで暗号化された通信には対応していません。


※ご利用者の皆様にお願いがあります。ダメだしする前に作者にお問い合わせください。
※不具合対応は早急に行なっていますし、要望対応も出来る限り対応しています。
※ベクター様でも禁止していますが、悪意を持って誤解を招くような曖昧な表現でダメだしする事は違法行為です。

2011-08-17 ダメ出し
「「フォルダ1(旧)から削除」を実行したらオリジナルファイルが削除されてしまった」との問い合わせがありました。
「こんな危険なツールなのに寄付歓迎なのはどうかと思う。寄付されたお金でデータ復元機能を作るべき」と言う事でした。

「フォルダ1(旧)から削除」を実行すると確認メッセージが表示され、「はい」をクリックするとファイルを削除します。。。
通常は「ごみ箱に移動する」設定になっているので、誤って削除した場合でも、ごみ箱から復元できるはずです。。。
しかし、残念ながらごみ箱に入らないサイズのファイルは消えてしまうようです。。。
どのような状況か詳細は不明ですが、嫌な思いをさせた事について申し訳ありません。。。

ちなみに、このツールに対し寄付を頂いた事はありません。

2010-07-02 ダメ出し
ベクター様の匿名コメントで「読み込みが正しくない、意味不明」というダメだしを頂きました。
そのような事実はありませんので、何かの勘違いだと思います。。。

ベクター様のIDを調べると2010-04-15、2009-08-10にもダメだし頂いた方でした(匿名(ニックネーム)は変更されていました)。
何度もお手数をお掛けして申し訳ない思いです。。。

2010-04-15 ダメ出し
ベクター様の匿名コメントで「結果が正しくない」というダメだしを頂きました。
「テキスト差分もフォルダ差分も全く同じものを差分として出力しています。」という事です。

2009-08-10にも同じ様なコメントをしてくださった方で、何度もお手数をお掛けして申し訳ない思いです。 ただ、前回も同様で詳細は何も教えて頂けないので対応出来ないのが残念です。 わざわざコメントして頂けるので、お手数でももう少し教えて頂けると良いのですが残念です。 対象のファイルや比較画面イメージを頂けるとすぐに対応出来ると思います。 このソフトは作者も毎日使用していて不具合を見つけるとすぐ対応しています。 今までコメント頂いたような現象を経験していないので作者が想定していない状況なのか?

それにしても、2回もコメントして頂けるのに詳細を教えて貰えない理由は。。。残念です。
もしかしてやる気を無くさせる事が目的ですか。。。

2009-08-10 ダメ出し
またベクター様の匿名コメントで新しいダメ出しを頂きました。
「まったく同じファイルがあるのに差分として出力されることがあった。」と言う事です。

たぶん、更新日時が違う同じファイルがあって、それを差分として表示したのだと思います。 更新日時だけで比較している時は日時が違っただけでも差分として表示する仕様としていて、 更新日時だけ違う時に差分と表示したく無い時は「ファイルの内容のデータ比較」機能を使用して頂けると良いのですが... 詳細な状況が分かり次第対応したいと思います・・・

ただ、ダメだししてくださった方が「調べる気にもなりませんでしたが」と言うことなので、 残念ながら詳細は不明のままかもしれません。

また、テキストファイルの場合改行コードが異なると差分として表示してましたが、 このダメ出しは、もしかすると改行コードが異なるテキストファイルかもしれないので、 新バージョンでは改行コードだけ異なるテキストファイルを差分として表示しないよう選択出来るようにしました。

2008-06-09 ダメ出し
ベクター様の匿名コメントで最低のダメ出しを頂きました「こんなの使えない」と。 わざわざ貴重なコメントを頂いたので、そのご意見を前向きに受け止め少し改良しました。 今後もフォルダ比較/ファイル比較のツールとして良い評価を頂けるようにバージョンアップを続けます。

ダメ出し概要は、
「メモリを8G載せているのに30G・10万ファイル程度のフォルダを比較しようとするとメモリが足りなくなる」 「フォルダを指定した瞬間に全ファイルのリストを作成し、オンメモリで保持しているためメモリが足りなくなる」 「この処理はどうかと思います」「しかも・・・」です。結論は「使いものになりませんでした」と言うことでした。

メモリ不足が気になり試してみるとMSFLXGRDの表示行数が5万行ぐらいでメモリ不足になるようです。 MSFLXGRD内部の事なので根本的な改善は不可能でしたが、何万行のリストを表示しても最後まで見る人はいないと思います。 そこで、MSFLXGRDはメモリ不足になるものだと認識した上でバージョンアップを検討してみました。

今回のバージョンアップでは10,000行以上のリストを表示しないように制限(※最新版は制限数を変更可)しました。 この改良で、誰も見ないリスト表示のための処理を省略出来るようになり、大量のファイル比較でも体感スピードがアップします。 また、起動時に前回の比較内容で自動的に再比較していたため起動に時間が掛かり、逆に不便になっていた処理をやめ、 起動時の処理スピードを上げました。より使いやすくなったと思いますが如何でしょうか。


<補足>
このツールの主要のロジックである「テキスト差分」や「文字コード判定」のアルゴリズムは自分で考えました。 当時、サンプルソースを公開していたため、そのサンプルソースを使用条件違反で使用したツールが有名になって出回っています。 本ツールを利用してくださってる方が気付いて教えてくれました。 そのツールは、当時公開していたサンプルソースの特殊な不具合を今でもそのまま引きずっていますが、 ご利用者には特に影響無い(気にしていない)ようです。 このアルゴリズムが基本的には正しいと認められたようで嬉しいです。。。 当然、こちらは常に改善されています。