ディレクトリー同期ツール
ディルシンク
|
|
ダウンロード
|
|
|
| 【 | ソフト名 |
】 | DirSync Ver. 2.73 |
| 【 | ファイル名 | 】 |
DSYNC273.LZH |
| 【 | 著作権者 | 】 |
木屋 善夫 |
| 【 | 対応機種 | 】 |
Microsoft Windows 9x/ME/NT4.0 SP3/2000/XP |
| 【 | 動作確認 | 】 |
自作DOS/V機 Windows 2000 Professional SP4/XP Pro SP1/XP Home SP1 にて確認 |
| 【 | 掲載日 | 】 |
2002/08/11 |
| 【 | 作成方法 | 】 |
LHAにて解凍 |
| 【 | 種別 | 】 |
フリーソフトウェア |
| 【 | 転載条件 | 】 |
ありませんが、事後にメールをいただければ幸いです。 |
|
|
【お願い】
|
|
Ver 2.52 以降で以前のセーブファイルを読み込むと、まったくコピーされないと言う現象が発生することがあるようです。誠に恐れ入りますが、そのような症状が発生した場合には、一旦全てのセーブファイルを削除していただきたいと思います。
|
|
【お詫び】
|
|
3/31 18:00頃 〜 24:00頃に一時的に公開した Ver 2.600 ですが、サイズ指定を「$」ではじめるというタコな仕様だったためデフォルトのまま使うと転送元ファイルを削除すると言う現象が発生してしまいました。ログを調べたところ10回ほどダウンロードされているようでした。ご迷惑をおかけしたみなさまにはお詫び申し上げます。
|
LANによって接続されているマシンを使用して、グループ作業をする場合、当然ファイルの共有を行うわけですが、大きなプロジェクトになると、莫大なトラフィックを生み出してしまいます。そう、あの「ウッ!、ネットが重い!」ってやつです。特にコンパイルを始めると、とんでもない負荷がかかってしまいます。そこで、ネットの負荷を減らすために、クライアント側にファイルをコピーして使うわけですが、なぜだかエクスプローラーには日付比較コピー(更新)機能がありません。
そこで作成したのが、「DirSync」、「ディルシンク」と読んでください。
このソフトを作り始めてからずいぶん経ちました。その間、多くの方の暖かいご声援とご協力をいただきました。この場を借りてお礼を申し上げます。
インストーラーはありません。必要なファイルは、「DirSync.exe」「DirSync.html」の二つです。(DirSync.htmlはなくても動作します。)
ご自分で適当なフォルダーを作って、そこに「DirSync.exe」「DirSync.html」を複写してください。
「DirSync.exe」 のショートカットを作ってデスクトップにでも張り付けておくと便利だと思います。
上記で作成したフォルダーごと「DirSync.exe」「DirSync.html」「DirSync.ini」「*.dsy」を削除してください。ディルシンクはレジストリーを使用しません。また、Ver2 からは、.iniファイルも、自身の格納フォルダーに入れるようにしました。
フツーの人がレジストリーをいじるのはあまりに危険だし、かといっアンインストーラーを作るほどのソフトじゃないし・・・というわけで、後始末の簡単な.iniを使用することにしました。
レジストリーにごみを残すソフトは最低ですよね・・・
機能はいたってシンプルです。2つのフォルダーを指定して、「1から2」、または、「2から1」ボタンで、同期を取ります。
同期は、以下の手順で行います。
- 1:転送元フォルダーから不要なファイルを削除します。(ユーザー指定)
- 2:転送先にあって転送元にないファイル、フォルダーを削除します。(省略
可)
- 3:転送元にあって転送先に無いフォルダーを作成します。(4とセットで省
略可)
- 4:転送元にあって転送先に無い、または、転送元の方が日付が新しいファイ
ルをコピーします。
95用アプリケーションですから、ロングファイル名や、ネットワークに対応します。
- 「→」ボタン
「フォルダー名2」を「フォルダー名1」と同じにします。
- 「←」ボタン
「フォルダー名1」を「フォルダー名2」と同じにします。
- 「⇔」ボタン
まず「→」を実行し、その後、「←」を実行します。2つのフォルダーの最新ファイルがそれぞれコピーされます。
ただし、この同期は、片方のフォルダーのみで削除されたファイルについては、削除されたのか追加されたのがわからないので、完全に同期させることができません。
- 「×」ボタン
同期を中断します。ファイルを複写中にこのボタンが押されたときには、転送先ファイルは、削除されます。
- 「ログ保存」ボタン
ウィンドウ下部の実行レポートをテキストファイルに保存します。
- 「ログ開く」ボタン
ウィンドウ下部の実行レポートを編集可能なウィンドーで開きます。このウィンドーからテキストファイルに保存することもできます。
- 「フォルダー名1」「フォルダー名2」
同期対象のフォルダーを指定してください。
- 「対象ファイル」
転送の対象とするファイル名を指定してください。ワイルドカードも使えます。
また、メモリーが許す限り、いくつでも指定することが出来ます。編集の開始は、マウスで左クリックするか、このコントロールにフォーカスがある状態で「F2」キーを押してください。
リストアイテムを右クリックするとサブフォルダー名選択ダイアログを開きます。
現バージョンでは、対象ファイルに相対パスのサブフォルダーを指定することはできません。
※ここのファイルおよびフォルダーの指定方法は後述します。
- 「対象外ファイル」
転送の対象としたくないファイル名指定してください。ここで指定されているファイルは転送の対象とはなりません。ワイルドカードも使えます。
また、メモリーが許す限り、いくつでも指定することが出来ます。編集の開始は、マウスで左クリックするか、このコントロールにフォーカスがある状態で「F2」キーを押してください。
リストアイテムを右クリックするとサブフォルダー名選択ダイアログを開きます。
※ここのファイルおよびフォルダーの指定方法は後述します。
- 「削除ファイル」
転送に先立って削除するファイルを指定してください。*.bak や $~*.*などの一時ファイルを指定すると便利です。ワイルドカードも使えます。
また、メモリーが許す限り、いくつでも指定することが出来ます。編集の開始は、マウスで左クリックするか、このコントロールにフォーカスがある状態で「F2」キーを押してください。
リストアイテムを右クリックするとサブフォルダー名選択ダイアログを開きます。
現バージョンでは、削除ファイルにフォルダー名を指定することはできません。
※ここのファイルおよびフォルダーの指定方法は後述します。
ファイルおよびフォルダーの指定方法
名前にはフォルダー名、ファイル名が指定できます。また、ワイルドカードを含めることもできます。
パス名の指定時に \\ とすると、\\ の前のフォルダーの子だけではなく子孫のうちいずれかが一致する物が選択されます。(XML の XPath の // と同様です)。\Hoge\\Fumi\*.* は \Hoge 以下のにある全ての Fumi というフォルダーが一致します。
Ver. 2.23以前では、名前の末尾に「¥」をつけて、フォルダーを明示的に指定していましたが、Ver. 2.24以降では、フォルダー名とファイル名をまったく同一に取り扱っているため、明示的に指定する必要はありません。
名前の末尾に「¥」をつけた場合、「¥」マークを含む名前として取り扱います。WINDOWS では、「¥」マークを含むファイル名は存在しませんので、結果として、末尾に「¥」をつけた名前の指定は無効となります。
- 前方一致指定
名前の先頭に「\」をつけると、前方一致指定となります。
前方一致指定では、フルパス名から「フォルダー名1」で指定したフォルダ名を除いた名前を指定してください。
前方一致指定では、一致したフォルダーの下のサブフォルダーも含まれます。つまり、対象ファイルで、\*.* を指定すると、「フォルダー名1」で指定したフォルダー下のすべてのサブフォルダーとファイルが対象となります。
子孫指定お試し機能
「\\名前」とすると特定の子孫名を指定することが出来ます。
\Test\\debug とすれば、対象フォルダー直下の Test と言うフォルダーの下にあるすべての debug と言う名前のファイルとフォルダーが対象となり、フォルダーが対象となった場合はその下のサブフォルダーやファイル全てが対象となります。
- 後方一致指定
名前の先頭に「\」がないと、パス名を後方から一致するか調べます。*.* とすると全てのフォルダーとファイルが対象となります。
- タイムスタンプ指定
名前の先頭に「:#」をつけると、ファイルのタイムスタンプ指定となります。
この機能は、水藻一雅さんの要望にお応えしてつけました。
書式
:#[対象範囲先頭時刻] - [対象範囲末尾時刻]
※末尾時刻は対象に含まれます。
時刻書式
- 絶対指定
年/月/日 時/分/秒/ミリ秒
タイムスタンプの指定は月以降を省略することが出来ます。省略した場合にはデフォルト値が使われます。デフォルト値は先頭と末尾で違います。
先頭 xxxx-01-01 00:00:00:000
末尾 xxxx-12-31 23:59:59:999
- 相対指定
[d|h|m|s]数値
現在時刻からの指定した日、時間、分、秒前の時刻になります。
d60 現在時刻から60日前
h48 現在時刻から40時間前
m30 現在時刻から30分前
s6000 現在時刻から6000秒前
- 指定例
2002/01/01 00:00:00:000 - 2002/12/31 23:59:59:999 (完全な範囲指定)
2002/01/01 00:00:00 - (指定日以降 ミリ秒省略)
- 2002/12/31 (指定日以前 時刻省略)
2002 (2002 年全部)
相対指定 d30 (過去30日以内)
- サイズ指定(お試し機能)
名前の先頭に「:$」をつけると、ファイルサイズ指定となります。エクスプローラーはファイルサイズを四捨五入して表示しているようです。なので、この機能も四捨五入すべきか悩んでおります。
書式
:$[最小ファイルサイズ] - [最大ファイルサイズ]
ファイルサイズ書式
数値[G|M|K] ※数値の最大値は 2147483647 です。
2G 2 ギガバイト
400M 400 メガバイト
2000K 2000 キロバイト
指定例
10M - 1G (10メガバイトから1ギガバイトまで)
5M - (5メガバイト以上)
- 1G (1ギガバイトまで)
1G (1ギガバイト以上2ギガバイト未満)
- アトリビュート指定(お試し機能)
名前の先頭に「:&」をつけると、ファイルアトリビュートを指定します。複数アトリビュートを指定した場合1つでも一致すればマッチとなります。
書式
:&[A|D|H|R|S|T]
- A アーカイブ属性
- D ディレクトリ属性
- H 隠し属性
- R 書き込み禁止属性
- S システム属性
- T 一時ファイル属性
実際の指定例
- フォルダーの同期
C:\My Documentsの内容をすべて、F:\My Documentsにコピーします。
| フォルダー名1 |
フォルダー名2 |
対象ファイル |
対象外ファイル |
削除ファイル |
| C:\My Documents |
F:\My Documents |
*.* |
|
|
- 複数フォルダーのバックアップ
C:\My Documents および F:\My Documents 下の拡張子が .bak のファイルをすべて削除してから、C:\My Documents の内容をすべてを F:\My Documents に、C:\WINDOWS\Favorites の内容すべてを F:\:\WINDOWS\Favorites にコピーします。
| フォルダー名1 |
フォルダー名2 |
対象ファイル |
対象外ファイル |
削除ファイル |
| C:\ |
F:\ |
\My Documents\*.* \WINDOWS\Favorites\*.* |
|
*.bak |
- プロジェクトファイルのバックアップ
C:\My Documents\Project 下の拡張子が .bak のファイルをすべて削除してから、C:\My Documents\Project の内容をすべてを F:\Project に にコピーします。
ただし、C:\My Documents\Project\Debug および、拡張子が *.pdb *.ilk のファイルは対象外とします。
| フォルダー名1 |
フォルダー名2 |
対象ファイル |
対象外ファイル |
削除ファイル |
| C:\My Documents\Project |
F:\Project |
*.* |
\Debug *.pdb *.ilk |
*.bak |
- 不要ファイルの削除
C:\My Documents 下の拡張子が .bak のファイルをすべて削除します。
| 「COPYしない」オプションをチェックする
|
| フォルダー名1 |
フォルダー名2 |
対象ファイル |
対象外ファイル |
削除ファイル |
| C:\My Documents\Project |
C:\Windows\Temp |
*.* |
|
*.bak |
|
以下の9つのオプション指定により様々な動作をさせることができます。
- サブディレクトリーを処理する
サブディレクトリーを処理します。転送先に該当するサブディレクトリーがない場合には作成します。この場合、サブディレクトリーのセキュリティ設定は、親ディレクトリーと同じになります。
- 転送元にないファイルを削除
転送先のディレクトリーに存在し、転送元のディレクトリーに存在しないファイルを、削除します。「サブディレクトリーを処理する」オプションがチェックされている場合には、転送元にないサブディレクトリーもそのサブディレクトリー内のファイルごと削除されます。
「⇔」を実行する場合、このオプションは注意が必要です。このオプションをチェックして「⇔」を実行すると、「フォルダー名1」に存在しないファイルが「フォルダー名2」から削除されます。
- スキップファイルを報告する
更新されていない、または、「追加しない」オプションがチェクされており転送先にファイルが存在しなかったファイルを報告します。
- 共有違反時は継続する
通常エラー発生時にはメッセージボックスを表示後、実行を中断しますが、この仕様だと、Windows ディレクトリーなどのバックアップができません。
中途半端でもいいからバックアップしたいよ〜というご要望にお答えして、この機能を追加しました。
- 削除はごみ箱へ
ファイルを削除するときに、ごみ箱へ移動します。これによって、「しまった〜!!」ってときに、何とかなるかもしれません。
- 追加はしない
転送先に存在しないファイル及びフォルダーを更新の対象外とします。つまり、転送先に存在するファイルのみを更新します。
- 各処理前に一覧ダイアログを開く
転送元削除、転送先削除、コピーの各処理前に、これから処理するファイルの一覧ダイアログを開き、手動で調整するとこができます。
編集機能はリスクを伴います。十分な知識のある方以外はご利用にならないでください。
編集したファイル名が不正な名前であっても実行しようとします。編集内容によってはとんでもない動作をする可能性もありますので自己責任に置いてご使用下さい。不正な編集データによる動作は不定としサポート外とさせて頂きます。
- 上書きはごみ箱へ
上書きされたファイルを復活できるようにするため、ファイルをコピーする前に、転送元をごみ箱へ移動します。
- 日付を2秒単位で比較
NTと95間でデーターをやり取りするときにチェックして下さい。
ファイルシステムによって日付の管理単位が違っており、そのため、更新済みのファイルを未更新として処理してしまうことがあります。
具体的には、NTでNTFSを使用している場合に、ファイルの日付の秒が奇数のファイルを、95に複写すると、秒が偶数に丸められてしまい、95のファイルがNTのファイルよりも古いと勘違いして、まったく変更されていないにもかかわらず、複写されてしまいます。これを避けるときにのみチェックして下さい。
- 書き込み禁止ファイルを上書き
チェックすると、転送先の同名ファイルが書き込み禁止だった場合に上書きします。チェックされていない場合 Skip します。
- 自動実行する
このチェックボックスをクリックすると自動実行設定ダイアログが開きます。自動実行についてはスケジューリング自動実行をご覧ください。
- セキュリティの設定を複写する
転送元、転送先がともに NTFS である時にセキュリティの設定を複写します。
- テンポラリーに複写(CD-R用)
CD-R のように直接書き込むことの出来ないメディア用のオプションです。このオプションにチェックを入れますと、一時的にファイルを複写するフォルダーを問い合わせるダイアログが開きます。ファイル複写時には転送先フォルダーではなく、この一時フォルダーに複写されます。
2つのフォルダーの差分を取るのにも使えると思います。
- ファイル名の長さをチェックしない
C:\ を D:\Backup\Drive-C\ などに同期する場合、転送先のファイル名の方が長くなってしまいます。Windows には、フォルダー名、ファイル名の長さが256文字未満、パス名の長さが260文字未満という制限がありますので、ファイルコピー時にエラーとなってしまいます。通常はそのような問題が発生するときには同期を開始する前にエラーメッセージを出していますが、このチェック機能をはずすことが出来るようにしました。(当然、コピー時にエラーになると思います(^_^;)この機能は田中さんのご要望にお応えしてつけました。
- コピー時に空のフォルダを作成する
フォルダコピー時に空のフォルダも作成するようなります。
- タイムスタンプ比較結果による動作
タイムスタンプ比較結果の動作を、以下の4つから選択できます。この機能は宮沢 都夫さんのご要望にお応えしてつけました。
- 転送元が新しい時にコピー
- コピーしない
- 全てコピー
- タイムスタンプ違いはコピー
- サイズ比較結果による動作
タイムスタンプ比較結果の動作を、以下の4つから選択できます。この機能は原 潤一郎さんのご要望にお応えしてつけました。
- サイズ違いは無視
- サイズ違いは確認
- サイズ違いはコピー
- サイズ違いは処理を中断
- 処理終了時の処理
同期処理完了時の挙動を以下のうちから選択します。
- なにもしない
- 終了
- 電源OFF
- 強制電源OFF
- 再起動
- 強制再起動
- シャットダウン
- 強制シャットダウン
- ログオフ
仕事を終えて帰る前にバックアップを取りたいといったときに使えます。この機能は jp3mal さんの掲示板への書き込みにお応えしてつけました。
- CPU使用率
おおよそのCPU使用率を設定します。ここに 1 〜 99 の値を設定するとDirSync の CPU 使用率をこの値に近づけるようにウェイトを入れます。
この機能は上リ口晃成さんのご要望にお応えしてつけました。
上記の他にメニューよりツールバーのボタンの有効/無効が設定できます。
- 「→」有効
チェックすると「→」ボタンが有効になります。
- 「←」有効
チェックすると「←」ボタンが有効になります。
- 「⇔」有効
チェックすると「⇔」ボタンが有効になります。
- テキスト形式で保存
セーブファイルの形式をテキスト形式にします。この形式にしておくと、よっぽどすごい変更をしない限り、バージョンアップしても、セーブファイルを読み込むことができると思います。また、エディターで編集できるので、ヘビーユーザーにはお薦めかもしれません。
この機能は、KONISHI Yoshiyukiさんの要望にお応えしてつけました。
- 背景を設定
背景を、通常 (Windowsの設定にしたがう)、指定色、縦グラデーション、横グラデーション、ビットマップファイルなど、比較的自由に設定できます。
- 実行前に確認する
「→」まはた「←」を押したときに、確認のダイアログを表示させるとこができます。
- 削除前に確認する
ファイルを削除する前に、確認のダイアログを開きます。
この機能は、久保博行さんの要望にお応えしてつけました。
- レポートの更新を最低限に
ウィンドウ下のレポート欄の更新を極力押さえて、処理時間を短縮します。
この機能は、久保博行さんの要望にお応えしてつけました。
- ウィンドウの位置とサイズを復元する
次回起動時にウィンドウの位置とサイズを復元します。
この機能は、遠藤 善道さんの要望にお応えしてつけました。
- 最後に使用した設定ファイルを自動的に読み込む
最後に読み込んだ、.dsy ファイルを次回起動時に自動的に読み込ます。
Ver 2.44 からご要望の多かったスケジューリング自動実行機能を追加しました。
私は、スケジューリング自動実行は、本来 OS に任せるべきだと考えております。今回追加したような安易なスケジューリングの場合、アプリケーションがメモリー中に常駐し定期的にスケジュールをチェックすることになります。つまり、ほとんどなにもしないアプリケーションが貴重なメモリーや CPU タイム浪費することになります。
これを OS 装備のタスクマネージャ等に任せれば、実際に実行されるまで無駄なメモリーを使わなくて済み、その分PC全体のレスポンスが上がります。
ただ、こういったデメリットを知った上で、操作性の向上をお望みの方もいらっしゃるようですので、装備することにしました。
- 自動的に実行する
チェックすると自動実行が有効になります。
- 実行する時刻
ここで指定した開始時刻から終了時刻の間に指定分間隔で実行します。
- 実行する曜日
ここで指定されている曜日だけ実行します。(曜日が指定されていても日が指定されていなければ実行されません)
- 実行する日
ここで指定されている日にだけ実行します。(日が指定されていても曜日が指定されていなければ実行されません)
- ログファイル名
実行時のログを保存するファイル名を指定します。詳しくは「起動オプション」「ログファイル」をご覧ください。
なお、安全のため、ファイル読み込み後1分以内、および、設定変更後1分以内は、スケジュールに該当しても実行しません。
コマンドライン引数には、起動時に読み込む .dsy ファイル名、および、以下の起動オプションが設定できます。オプションは、起動時に読み込む .dsy ファイル名の前に記述する必要があります。また、大文字小文字は同一視されます。
ショートカットの例:
| リンク先 |
"C:\Program Files\Accessories\DirSync\DirSync.exe" -a -lTest.log Test.dsy |
| 作業フォルダ |
"C:\Program Files\Accessories\DirSync" |
実行時の 大きさ |
通常のウィンドウ |
- -A
フォルダー名1 -> フォルダー名2 を実行し、終了します。
- -AR
フォルダー名1 -> フォルダー名2 を実行し、終了します。(-A と同じです)
- -AL
フォルダー名1 <- フォルダー名2 を実行し、終了します。
- -Lログファイル名
処理終了時に、指定ファイルにログを出力します。ログファイルがすでに存在するときには追記します。
ログファイル名に % が含まれている場合は C言語の strftime の書式指定として処理終了時の時刻を元にファイル名を作成します。書式指定は以下のようになります。
-
| %y | 西暦の下 2 桁 (00〜99)
| | %Y | 4 桁の西暦
| | %m | 月 (01〜12)
| | %d | 日 (01〜31)
| | %H | 24 時間表記の時間 (00〜23)
| | %p | AM/PM
| | %I | 12 時間表記の時間 (01〜12)
| | %M | 分 (00〜59)
| | %S | 秒 (00〜59)
|
|
例: DirSync_%y-%m-%d_%H-%M-%S.log → DirSync_01-09-16_11-15-32.log
この他にもありますがここでは省略します。さらに詳しくは、strftime() のリファレンスをご覧ください。
/a? オプションを使用して、スケジューラーに登録すれば自動的に処理してくれます。バックアップを取ったり、ワークドライブ中のゴミ掃除をさせたりするのに、使えると思います。
本ソフトウェアはフリーソフトウェアとしますが、以下の条項に同意いただける方に限り無料で使用することが出来ます。
本ソフトウェアの著作権は木屋善夫が保有します。
木屋善夫は、本ソフトウェアの使用にて生ずる直接的または間接的な損失、損害等について、いかなる場合においても一切の責任を負いません。
木屋善夫はこのフリーソフトウェアの公開により、いかなる義務も責任も発生しないと考えます。
本ソフトウェアの授受によって直接の利益を得る場合を除き、再配布等に条件はございません。
パソコン本体と抱き合わせ販売しようが、雑誌の付録に付けようが、ご自由にお使いください。
ただし、フリーソフトばかりを集め、1冊数千円以上もするような書籍については、本ソフトウェアによって直接の利益を得るものと判断し、本ソフトウェアの掲載、再配布を禁じます。
ユーザーサポートは以下の掲示板にて行いたいと思っております。よろしくお願いいたします。この掲示板に書き込んでいただいた内容は私宛にメールにて送られてくるようになっております。
休みの日にチョコチョコとやっていますので、きちんと対応できるかどうか自信がないのですが、もし、このソフトウェアに対するご要望などございましたら、掲示板に書き込んでいただければと思います。
- ご意見、ご要望は、こちらへ
- http://fsw.kiya.cc/yybbs/yybbs.cgi
-
最新版は、こちらから
-
http://fsw.kiya.cc/
【Ver. 2.73の変更点】
- バージョンダイアログの掲示板 URL を変更しました。
【Ver. 2.72の変更点】
- コンパイラを Visual Studio .NET 2003 に変えたところツールバーの表示がおかしくなるときがあったので修正しました。
- ワイルドカード指定時 \\ を XPath 風に子孫を指定としたのですが、共有フォルダ名は \\ ではじまるためご認識していました。
- 「コピー時に空のフォルダを作成する」オプションを追加しました。
【Ver. 2.71の変更点】
- 「処理ディレイ」を「CPU使用率」に変更しました。出来るだけCPU使用率を設定値に近づけるようにウェイトを入れるようにしました。
【Ver. 2.70の変更点】
- 対象ファイル名のフォルダー部に全角を使用したときに不一致と判断されるバグを修正しました。水野雅彦さんバグ情報ありがとうございました。
【Ver. 2.69の変更点】
- フォルダーのタイムスタンプを変更しないようにしました。
【Ver. 2.68の変更点】
- 処理前の一覧表示にて削除ファイルの一覧の編集が出来なくなっていた不具合を修正しました。
- 対象、対象外、削除ファイル名の指定方法を変更し、絶対パス、ファイル名してとしていたものを前方一致および後方一致を指定するようにしました。
- ファイル名指定時に XML の XPath 風に \\ にて子孫を指定できるようにしました。
- ファイル名指定時に * の後の文字を無視しないようにしました。
【Ver. 2.67の変更点】
- FAT 上にあるファイルの場合、必ず、タイムスタンプを2秒単位でクリッピングしてから設定するようにしました。
- ファイルセキュリティですが、ソースファイルの SD をそのまま設定していましたが、コピーを設定するようにしました。
- OS が NT の場合にはフォルダーのタイムスタンプも複写するようにしました。ただし、そのフォルダー下にファイルやフォルダーを作るとそのタイムスタンプに合わされてしまうことがあるようなのでこの処理は暫定とします。
【Ver. 2.66の変更点】
- 対象、対象外フィアルのタイムスタンプ指定時に 08, 09 と記述するとおかしくなっていた不具合を修正しました。(藤井章さんバグ情報ありがとうございました)
【Ver. 2.65の変更点】
- 最小化で起動したときにタスクトレイに入らない不具合を修正しました。
- FAT にコピーするときにはタイムスタンプを2秒単位で切り下げるようにしました。(sikeさんバグレポートおよび解決策のご指導ありがとうございました)
- 処理終了後「電源OFF」「再起動」「シャットダウン」「ログオフ」出来るようにしました。
【Ver. 2.64の変更点】
- フォルダー作成時の属性およびセキュリティの設定がエラーになってしまっていた不具合を修正しました。
- 別件で調査中に「処理前に一覧表示」でセパレーターの TAB 文字の入力が出来ない不具合に気が付きました。そこで各操作の表示形式をコマンドラインと同じものに変更しました。
- 「日付を2秒単位で比較」時に閏秒が考慮に入っていなかった不具合を修正しました。(実質的にはあまり影響はないようですが…)
【Ver. 2.63の変更点】
- 「テンポラリーに複写」チェックし、転送先が CD-R の時に転送先にフォルダーが存在しないとエラーが発生する不具合を修正しました。この修正に伴い、フォルダーを作成するタイミングを、更新するファイル検索時から、更新時に変更しました。(内部的にはかなり大きな変更となってしまいました。
【Ver. 2.62の変更点】
- 対象、除外、削除ファイルに絶対パス名を指定が必ず不一致となってしまうバグを修正しました。水藻さんバグレポートありがとうございました。
- ファイル複写時のソースファイルのシェアリングモードを読み取り許可にしました。
- 最小化時にタスクトレイに入れることが出来るようにしました。
【Ver. 2.61の変更点】
- 2.601の仕様変更時に修正ミスでタイムスタンプ、ファイルサイズ、アトリビュートを指定が効かなくなっていたのを修正しました。
- タイムスタンプ指定時の相対指定が 1/1000 になっている不具合を修正しました。
【Ver. 2.601の変更点】
- 「対象ファイル」「除外ファイル」「削除ファイル」の指定にタイムスタンプ、ファイルサイズ、アトリビュートを指定する方法を「#, $, &」としましたが、これらの文字ではじまるファイルもあり得るので「:#, :$, :&」に変更しました。
【Ver. 2.60の変更点】
- 「対象ファイル」「除外ファイル」「削除ファイル」の指定にタイムスタンプ、ファイルサイズ、アトリビュートを指定できるようにしました。
- 実行時のディレイを変更できるようにしました。
【Ver. 2.59の変更点】
- 削除しようとしたファイルあるいはフォルダーがすでに存在しなかった場合にはエラーにせずワーニングとするようにしました。
- 窓の杜の某氏の自分勝手な意見には憤りを感じました。人の好意を当然と考えるような方には利用して欲しくないので使用許諾条件を一部変更しました。
【Ver. 2.58の変更点】
- 環境によりファイルのチェックが以上に遅くなることがあるようです。これを回避できればと思い、試しに、ファイルの存在確認を SHGetFileInfo から FindFirstFile に変えてみました。
【Ver. 2.57の変更点】
- メモリーの使い方を変更し、変更されたファイル、フォルダーの検索部分をちょっとだけ高速化してみました。低速なシステムをお使いの場合少しは効果があるかもしれません。
【Ver. 2.56の変更点】
- スケジュール設定の曜日がずれている不具合を修正しました。大友さん情報ありがとうございました。
- メインフォームのコントロールの順番が適当になっていたのを直しました。
- ファイル名を扱う部分で、ウィンドウスの仕様である _MAX_PATH 定数に依存していた部分を全て可変長としました。
- セキュリティコピー用バッファを毎回確保解放していましたが、1度だけ確保しジョブが終了時に解放するようにしました。
【Ver. 2.55の変更点】
- 「ファイル名の長さをチェックしない」オプションを追加しました。
【Ver. 2.54の変更点】
- 「⇔」ボタンにて実行時に「→」が2回実行される不具合を修正しました。水野さん情報ありがとうございました。
- バージョン情報の「http://fsw.kiya.cc/」を押すと旧アドレスを開いてしまう不具合を修正しました。
- セキュリティの複写時のバッファをスタック上ではなくヒープより確保するようにしました。
【Ver. 2.53の変更点】
- 「テンポラリーに複写(CD-R用)」時にテンポラリーフォルダーに対してサブフォルダーを作成しない不具合を修正しました。
- 「転送元が新しい時にコピー」を選んでも、転送先が新しいファイルがコピー対象となってしまう不具合を修正しました。藤本さん、河原さん情報ありがとうございました。
- 4GBを越えるファイルがコピーできない不具合を修正しました。猿谷さん情報ありがとうございました。
【Ver. 2.52の変更点】
- ファイル変更状態を取得後、実際に複写するまでの間にソースファイルが削除された場合エラーとしておりましたが、これをワーニングしました。
- タイムスタンプの比較結果による動作を「転送元が新しい時にコピー」「コピーしない」「全てコピー」「タイムスタンプ違いはコピー」から選べるようにしました。
- 上記変更に伴い「Copyしない」「必ずコピー」の2つのオプションを廃止しました。
- サイズ違いの動作を「確認」「無視」「上書き」「中断」のうちから選べるようにしました。
【Ver. 2.51の変更点】
- CD-R のように直接書き込むことが出来ないメディア用に「テンポラリーに複写」オプションを追加しました。
【Ver. 2.50の変更点】
- 処理中に「セキュリティの設定を複写する」チェックボックスが無効にならない不具合を修正しました。
- 残り時間が1/10になってしまう不具合を修正しました。
- スレッド間メッセージ処理でデッドロックを起こすことがあるので、スケージュル処理をアイドル処理からタイマーイベントに移動しました。
【Ver. 2.49の変更点】
- スケジュール実行機能を追加したときに、PC全体のパフォーマンス低下を防ぐために入れたディレイが実行中にも効いてしまい、処理速度が大幅に落ちてしまっていました。この不具合への対策を施しました。t748さん情報ありがとうございました。
- 転送元、転送先がともに NTFS の時にセキュリティの設定を複写するオプションを新設しました。
- ツールバーをテキスト無しのフラットにしたときにアイテムのサイズが縦に3ピクセル不足している不具合を修正しました。こにさん情報ありがとうございました。
【Ver. 2.48の変更点】
- 「ウィンドウの位置とサイズを復元する」をチェックした状態で、最小化で起動し、ウィンドウサイズを元に戻すとフォームサイズがデフォルトのままになってしまう不具合を修正しました。こにさん情報ありがとうございました。
- 「ツールバーのフラット」を切り替えるとウィンドウサイズがデフォルトに戻ってしまう不具合を修正しました。こにさん情報ありがとうございました。
【Ver. 2.47の変更点】
- 共有違反時に継続できない不具合を修正しました。野村さん情報ありがとうございました。
- サポート URL を変更しました。
【Ver. 2.46の変更点】
- 対象ファイル、削除ファイル、対象外ファイル設定用リストコントロールにグリッド線を表示するようにしました。
- 起動時およびセーブファイル読み込み時に、対象ファイル、削除ファイル、対象外ファイルリストコントロールの最初のアイテムにフォーカスを設定しました。
- 削除ファイルと対象外ファイルリストコントロールの位置がいつのまにか逆になっていました。(^_^;
【Ver. 2.45の変更点】
- 2.43 の変更の影響で「ウィンドウの位置とサイズを復元する」がチェックされていないときに、ウィンドウサイズが0になってしまう不具合を修正しました。
- 「自動実行」の設定をツールバーのオプションから、フォーム上に移動しました。
- 自動実行で 22:00 〜 6:00 の間実行するといった設定をした場合に実行されなかった不具合を修正しました。
- 保存データー中の自動実行をする/しないの位置を変更しました。2.44 からのバージョンアップ時には、このチェックが初期状態に戻ってしまいますのでご注意ください。m(_ _)m
【Ver. 2.44の変更点】
- ご要望の多かったスケジュール機能を付けました。指定の曜日あるいは月内の日の指定時間の間、分単位の一定間隔で自動実行させることが出来ます。また、ログファイルも指定できます。
- 「書き込み禁止ファイルを上書き」オプションを新設、このオプションのチェックをはずすことにより「書き込み禁止ファイル」をスキップすることが出来るようにしました。
- ログ表示をリッチエディットコントロールに変更しました。
- 「上書きはゴミ箱へ」がチェックされていない状態で、書き込み禁止ファイルに上書きしようとすると「アクセスを拒否されました」というエラーが出て止まってしまう不具合を修正しました。
- Ver 2.43 の変更の影響でファイル読み込み時にフォームのサイズがウィンドウをよりちょっとだけ大きくなってしまうようになっていた不具合を修正しました。
【Ver. 2.43の変更点】
- ウィンドウ位置を復元時に、フレームウィンドウだけを復元して、内部のフォームのサイズを復元するのを忘れていました。
【Ver. 2.42の変更点】
- 「ウィンドウ位置を復元する」オプションをチェック時にサイズも復元するようにしまいした。(実は復元していたのですが、その後でダイアログにあわせていました(^_^;)Koshi TAMURAさん情報ありがとうございました。
【Ver. 2.41の変更点】
- 確認ダイアログが1行しか表示されなかったのを複数行表示されなかった不具合を修正しました。塩塚さん情報ありがとうございました。
【Ver. 2.40の変更点】
- 自動運転時、指定されたログファイルがすでに存在するときは、追記するようにしました。
- 起動オプション /l に各ファイル名を日付書式文字列にしました。
【Ver. 2.39の変更点】
- 進行状況の文字列の長さが 307 文字以上になると USER.EXE 内で一般保護違反が発生するWindows 98 のバグ(仕様?)に対応しました。このバグは山岸さんの多大なご協力によって原因を突き止めることが出来ました。山岸さんありがとうございました。
- 256文字以上の文字列が描画できないWindows 98 の仕様に対応しました。
- 2.28 でファイル名が 260文字を越えたときにエラーにするようにしたのですが、このときに表示するメッセージの生成にバグがあり一般保護違反になることがあるバグを修正しました。
- 「ログ保存」のファイル選択ダイアログが「開く」になっていたのを修正しました。鶉野さん情報ありがとうございました。
【Ver. 2.38の変更点】
- フォルダー名入力コントロールの前のエクスプローラーボタンが Windows 2000 ではエラーになってしまうバグを修正しました。
- 転送先ファイル名の長さが 260文字を越える場合にはエラーにするようにしました。
【Ver. 2.37の変更点】
- 2.34 でツールバーの「→」「←」「⇔」を無効に出来るようにしたときにその設定を .dsy ファイルの保存するようにしていたのですが、これが不完全で、オプションの「テキスト形式で保存」がチェックされていると保存されなかったバグを修正しました。小池さんバグレポートありがとうございました。
- 「処理前に一覧を表示」をチェックしているときにでる、「処理編集ダイアログ」の「OK」「キャンセル」の意味が分からないと言う方がいらっしゃったので「OK(編集を有効にして続行)」「キャンセル(編集を無効にして続行)」と言うようにボタン名に説明を付けた(常識だと思うのですが…(^_^; )
【Ver. 2.36の変更点】
- 「ウィンドウ位置を復元する」オプションをチェックし、最小化した状態で終了すると次回、ウィンドウが画面外となってしまうバグを修正しました。山崎さんバグレポートありがとうございました。
【Ver. 2.35の変更点】
- NTFS で複写した場合、ファイルの日付の秒未満の値が正確に複写されないバグを修正しました。川崎市の野島さんのご協力によって修正いたしました。野島さんありがとうございました。
【Ver. 2.34の変更点】
- 「.」ではじまるファイル名を無視するようになっていたバグを修正しました。
- ツールバーの「→」「←」「⇔」を無効に出来るようにしました。
- 転送バイト数が2GBを越えると表示がおかしくなっていたバグを修正しました。
- 転送バイト数など数値の表示がおかしくなるバグを修正しました。
- 「最後に使用した設定ファイルを自動的に読み込む」がチェックされていて前回使用した設定ファイルが削除されているときに起動できないバグを修正しました。
【Ver. 2.33の変更点】
- リストビューの項目の幅を1ドット狭くしました。(これの変更により、通常は水平スクロールバーが表示されなくなりました)
- ウィンドウのサイズ変更時にリストビューの項目の幅を修正するようにしました。
- 「ウィンドウ位置を復元する」オプション変更時の記録先セクション名が間違っていました。(動作に支障はありません)
- 「ウィンドウ位置を復元する」オプションでウィンドウのサイズも復元するようにしました。
- 「最後に使用した設定ファイルを自動的に読み込む」オプションを追加しました。
- 「⇔」双方向更新を追加しました。
【Ver. 2.32の変更点】
- Winows NT 対策として、ログの表示方法を変えてみました。
- ツールバーのテキストを非表示から表示に切り替えたときに、再起動するまでテキストが表示されないバグを修正しました。
- 前回終了時のウィンドウ位置を復元するオプションを追加しました。
- リストビューを右クリックしてフォルダー名を入力したときに、名前の末尾に \ をつけていたのをやめました。
【Ver. 2.31の変更点】(非公開)
- タイムスタンプは等しいがサイズが違うファイルを見つけたときに確認ダイアログを出すようにしました。
【Ver. 2.30の変更点】
- 対象ファイルで同一フォルダー下のサブフォルダーを複数指定した場合、指定する順番によって、対象ファイルとならないことがある不具合を修正しました。
【Ver. 2.29の変更点】
- .ini ファイルをカレントフォルダーから取得する仕様だったのですが、これだと、*.dsy ファイルに関連づけをして、エクスプローラーから起動した場合に、*.dsy ファイルが存在するフォルダーから、*.ini ファイルを読み込んでしまいます。
これはこれで便利な気もするのですが、ちょっとわかりにくいので、.ini ファイルは、常に、DirSync.exe が格納されているフォルダーから読み込むように変更しました。
【Ver. 2.28の変更点】
- ファイル名中に「→」が含まれると、コピーされない不具合を修正しました。これに伴い処理前一覧中の「→」をタブに変更しました。
- ウィンドウのサイズ変更に対応しました。これに伴いレイアウトを変更しました。
- 「対象ファイル」「対象外ファイル」「削除ファイル」の各リストの項目にフォーカスがある状態で、文字キーや[HOME][END][←][→]を押すと編集状態になるようにしました。また、左クリックでいきなり編集状態になっていたのをやめ、ウィンドウス標準の処理に戻しました。
- バイナリーセーブでオプションが正しくロードできな不具合を修正しました。
【Ver. 2.27の変更点】
- IEのフラットなツールバーに対応しました。
- IEのようにツールバーに文字列を表示できるようにしました。
- 64K以上のログを開くときにはテキストファイルファイルに関連付けられたアプリケーションから開くようにしていましたが、うまく行かないときがあるようなので 32K以上にしました。(やくざな対症療法だなぁ…)
【Ver. 2.26の変更点】
- 「対象外ファイル」「削除ファイル」内での右クリックが効かないバグを修正しました。
- htmlヘルプファイルの表示を、Shellによってオープンさせていたのを、WebBrowserコントロールを使うようにしました。
- ハードディスクの空き容量不足時に「このプログラムは不正な処理をしました・・・」というダイアログが出ていたのを、ハードディスクの空き容量を確認して欲しい旨をメッセージ表示してから終了するようにしました。
【Ver. 2.25の変更点】
- 「ログ保存」ボタンを押して保存したファイルにほとんどなにも記述されていない不具合を修正しました。
- NTFSとFATのタイムスタンプの取り扱いの違いによる更新ファイル判定間違いの不具合に対応するため、「日付を2秒単位で比較」オプションを追加しました。
- 「削除前に確認」オプションを追加しました。
- 「レポートの更新を最低限に」オプションを追加しました。
【Ver. 2.24の変更点】
- 「対象ファイル」「対象外ファイル」「削除ファイル」の指定法方法を全面的に仕様変更しました。
- 3つのリストでそれぞれ入力形式がばらばらになっていたのを統一しました。
- 末尾に「¥」をつけてフォルダー名としていたのをやめ、ファイル名とフォルダーを一元的に扱うようにしました。
- ファイル名の指定方法を、絶対パス指定と相対指定ができるようにしました。この変更により、対象または対象外として、特定のファイルのみを指定できるようになりました。
- フォルダーごとにワイルドカードを変えることができるようになりました。
- ダブルクリックで「対象ファイル」「対象外ファイル」「削除ファイル」のでサブフォルダー名選択ダイアログを開いていたのを、右クリックで開くように変更しました。
- 画面のレイアウトを変更しました。
- 進行状況表示に、対象となるフォルダーや、対象外フォルダーなどの情報を表示するようにしました。
- ファイルの存在確認に Windows API の FileFindFirst() を使用していましたが、これを、シェルネームスペースから取得するようにしました。
- ファイルコピー時、ステータスラインに終了までの予想残り時間表示するようにしてみましたが、バイトあたりの所要時間から割り出しているせいで、あまりあてになりません。単なる目安としてみてください。
【Ver. 2.23の変更点】
- 「転送元に無いファイルを削除」するときに「対象外ファイル」を削除していしまうバグを修正しました。
小西さん、バグ情報ありがとうございました。
【Ver. 2.22の変更点】
- 「対象ファイル」に、サブフォルダーを指定できるようにしました。仕様上問題があるので、サブフォルダーをひとつでも指定すると、指定されていないサブフォルダーはすべて対象外となります。
- 「対象ファイル」のアイテムをダブルクリックすると、フォルダー一覧ダイアログが開くようにしました。
- 「対象ファイル」等のリストに長い名前を入力したときに、水平スクロールバーが出るようにしました。
- バージョン情報ダイアログからE-Mailアプリケーションを開けるようにしました。
【Ver. 2.21の変更点】
- 転送元および転送先にルートを指定するとハングアップしていたバグを修正しました。大変失礼しました。転送元と転送先の親子関係のチェックを強化したときにバグを仕込んでしまいました。(^_^;
- ルートを指定している時に「開く」ボタンを押しても、エラーになってエクスプローラが起動しない不具合を修正しました。
- MFC42.DLL を使用するバージョンを用意しました。この結果プログラムサイズが 327K → 89K になりました。ただし、別途 MFC42.DLL が必要となります。
【Ver. 2.20の変更点】
- ファイルやフォルダーが存在するか確認するために、FindFirstFile を使用しておりましたが、ネットワーク上のリソースへのアクセスの場合、存在するのにエラーが返って来たりするので、SHGetFileInfo にしてみました。
- MFCのバグを発見! CFile::Read はバッグっています。(^_^; 派生クラスを作りバグ対策しました。
【Ver. 2.19の変更点】
- 親フォルダー名を取得する関数が、ルートフォルダーへの対応が不十分だったため、ページ違反を起こす可能性があったのを修正しました。
【Ver. 2.18の変更点】
- 転送先の名前が、転送元の名前に何か文字を追加したような場合に、サブフォルダーへ転送しようとしている旨のメッセージが出て、転送できない不具合を修正しました。
- ファイル削除中に中断できない不具合を修正しました。
- 拡張子なしファイル名が、拡張子を.*にしたワイルドカードと一致しない不具合を修正しました。
- 削除や転送ファイル情報収集時に、その進行状況を「Current」欄に表示するようにしました。
- メモリー不足時に「赤バツ」(このプログラムは不正な処理を行ったので強制終了されます。)が出ていたのを、メモリー不足を示すメッセージを出すようにしました。
- ログが64Kバイトを超えているときに、「ログ開く」を実行したときには、テキストファイルに関連付けられたアプリケーションを使って開くようにしました。
【Ver. 2.17の変更点】
- ルートディレクトリーにフォルダーが作成できない不具合を修正しました。この修正により、サブフォルダー作成時にセキュリティが、従来は親フォルダーと同じにしていましたが、デフォルト設定となります。
【Ver. 2.16の変更点】
- 「削除はごみ箱へ」オプションがチェックされていないときに、フォルダーを削除出来ない不具合を修正しました。
- オプションの並び順を整理しました。
【Ver. 2.15の変更点】
- フォルダー名が漢字のときに、ファイル名末尾の\マークの処理が正常に行われていなかった不具合を修正しました。
- ログレポートを編集可能なウィンドーで開く機能を付けました。また、レポートウィンドーをダブルクリックすると開くようにしました。
- 「削除はゴミ箱へ」がチェックされているときに、転送元をゴミ箱へ移動ししてからコピーしていたのを、オプション「上書きはごみ箱へ」を追加して別々に設定できるようにしました。
- 上記ごみ箱移動時に、レポートに「del ......」と表示していましたのを、表示しなくしました。
- 内部処理の漢字対応をいっそう強化しました。(相変わらず検証は、適当なので不具合があるかも・・・)
【Ver. 2.14の変更点】
- コピー前に転送元をゴミ箱に入れるとき、レポート表示が、「Copy」「Del」 の順になっていたのを、「Del」 「Copy」の順に直しました。
【Ver. 2.13の変更点】
- 実行前に確認のダイアログを出すオプションを追加しました。
- 「各処理前に一覧ダイアログを開く」をチェックすると、転送先ファイルの名の先頭2文字(ドライブ名)が削除されてしまい、うまく転送できない不具合を修正しました。
- 「削除はゴミ箱へ」がチェックされているときに、転送元がすでに存在するときは、上書きではなく、転送元をゴミ箱へ移動ししてから、コピーするようにしました。
【Ver. 2.12の変更点】
- 遅ればせながら、第2バイトが\ の漢字ファイル名への対応を行いました。自身が漢字のファイル名を使わないので不自由を感じていませんでしたが、やっぱ必要かなと思い入れました。
- 転送元削除、転送先削除、コピーの各処理前に、これから処理するファイルの一覧ダイアログを開き、編集できるようにしました。「削除はごみ箱へ」チェック時、フォルダーの中身はゴミ箱に送られていたのですが、フォルダーそのものがゴミ箱に送られていない不具合を修正しました。
- フォルダーを削除するときに、「削除はごみ箱へ」チェックされているときは、中身を一つづつ削除するのではなく、フォルダーを中身と一緒に丸ごとゴミ箱に送るようにしました。単なる削除のときにも、フォルダーごと削除した方が処理は速いようなのですが、削除したファイルをログに残したいので、単なる削除時は、全てのファイルとフォルダーを一つづつ削除しています。
- リストビューコントロールのアイテム編集を開始は、アイテムがフォーカスを持った状態でクリックするというのは Windowsの仕様なのですが、いまいち解りにくいようなので、「対象ファイル」「対象外ファイル」「削除ファイル」の各リストビューコントロールのアイテムを左クリックすると編集を開始できるようにしました。
【Ver. 2.11の変更点】
- 対象外ファイルにフォルダーを指定出来るようにしました。
- 256色モードのときに、ビットマップを選択すると結構ひどい表示になるようなので、ハーフトーンパレットをセレクトしてみました。
- オプション「必ずコピー」を追加しました。
【Ver. 2.10の変更点】
- コピー元に新しいサブフォルダーが出来ている場合、それがコピー先に作成できない不具合を修正しました。(いつからおかしくなっていたのだろう・・・(^_^; )
【Ver. 2.09の変更点】
【Ver. 2.08の変更点】
- セーブファイルをテキスト形式で保存・読み込みできるようにしました。
- 背景を比較的自由にカスタマイズできるようにしてみました。
【Ver. 2.07の変更点】
- こともあろうか、/ALと/ARの説明が逆になっていました。
- 「スキップファイルを報告する」オプションをチェックしても、スキップファイルを報告しない不具合を修正しました。
- ログ出力の最初のオプション表示で、「スキップファイルを報告」と「共有違反時は継続」が逆になっている不具合を修正。
- 「追加はしない」オプションを追加しました。
【Ver. 2.06の変更点】
- /aオプションの動作が/ALになっていました。
この間違いのため、逆方向に同期を取ってしまい、ファイルを削除されてしまうということが発生したことを深くおわびいたします。
これは言い訳なのですが、/aははじめ作るつもりは無くて、/AR, /ALのみだったのですが、なんとなく最後に追加したのでこんなことになってしまいました。m(_ _)m ヒラニヒラニ....
【Ver. 2.05の変更点】
- 「削除はごみ箱へ」チェックを変更したときに、ドキュメントが変更されたことにするのを忘れていたのを追加しました。
- 自動運転用の起動オプション /a? を追加しました。
- 自動運転時にログファイルを指定する、起動オプション /L を追加しました。
- 処理レポートに、処理開始時刻およびオプションを入れるようにしました。
- 「対象ファイル」、「対象外ファイル」、「削除ファイル」リストから、アイテムを削除したときに、ドキュメントを変更したことにするのを忘れていたのを追加しました。
- 背景の色をなしにするオプションを付けました。
- 「削除ファイル」がしてされており、転送先にルートディレクトリー直下以外のフォルダーを指定したとき、そのフォルダーが存在しないと、エラーが発生していた不具合を修正しました。
- フォルダー名のそばにある「開く」「参照」ボタンのビットマップを変更しました。(いままで「参照」ボタンに使っていたアイコンは、エクスプローラーのアイコンなので、間違いやすいので・・・)
- HELPファイルを開けるようにしました。.hlpにしようかなと思ったのですが、時代は、html なので、htmlファイルを開くようにしました。
【Ver. 2.04の変更点】
- ウィンドーのフレームがサイズ変更可能な THICKフレームになっていました。
- 「削除はごみ箱へ」オプションを追加し、削除したファイルを復元可能にしました。
- 一番下のレポート用リストボックスが空の状態でクリックすると、「不正な処理」をしてしまう不具合を修正しました。
- 一番下のレポート用リストボックスからアイテムを選択したとき、以前選択されていたアイテムが通常表示に戻らなかった不具合を修正しました。
- フォルダーの中身を確認するための「開く」ボタンを追加しました。
- 背景に色を付けてみました。
- 自動実行対応準備として、実行時のログをテキストファイルに出力できるようにしました。
- 一部のエラーメッセージがダイアログを表示するようになっていましたが、自動実行対応準備として、すべてのメッセージを、一番下のレポートリストボックスに表示するように変更しました。
- 内部的なことですが、Win32API では、ほとんどの関数がエラー時に FALSE を返すようになっています。ところが最近の COM になっているものでは、エラー時に、TRUE を返すものがほとんどです。MS-DOS 以前はほとんど後者だったことや、合理性からいっても、後者がよいと思いますので、各関数のエラー時の論理を反転しました。この変更で、ほとんどの関数を書き直しました (^_^;(余計なことですが TRUE ってのは1じゃなくて0以外のことです。)
【Ver. 2.03の変更点】
- 転送先がルートディレクトリーの時にエラーが発生する不具合を修正しました。
- 転送先ディレクトリーがルートの直下にあり、かつ存在しないときにエラーが発生する不具合を修正しました。
- バージョン情報ダイアログのタイトルが「LaunchTrayについて」になっていました。(ハズカシイ・・・)
【Ver. 2.02の変更点】
- デフォルトの削除ファイル名 $~.* を $~*.*に変更 (単純ミスです)
【Ver. 2.01の変更点】
- なんと、処理中に「開く」を実行できていました。やると・・・おそろし・・
- レポート表示をカラーにして、みやすくしました。
【Ver. 2.00の変更点】
- ダアログベースMFCアプリケーションからSDI−MFCアプリケーションに変更しました。
- 「中断」するために、メッセージをポンピングしていたのですが、これを、マルチスレッド化し、レスポンスをあげました。ただし、この変更のため、実行中は、「閉じる」で、中断できなくなくなってしまいました。「中断」で止めてから閉じてください。(^_^; 次のバージョンでは何とかします。
- 「対象ファイル」「対象外ファイル」を指定できるようにしました。
- 削除ファイルが、*.bak $~.* 固定だったのを、自由に指定出来るようにしまた。
- 進行状況を表示するようにしました。
- フォルダー名等をヒストリーとして記録していましたが、ドキュメントファイルとしてセーブロードするようにしました。
- Aboutダイアログからホームページを開けるようにしました。
- DirSync.ini ファイルをウィンドウスディレクトリーから起動ディレクトリーに移動しました。(CMyReacentFile がオーバーライド出来るとは・・・)
【Ver. 0.42の変更点】
- ヒストリーに削除および移動機能を追加しました。
- 「COPYしない」オプションを追加しました。
- その他、細かい内部仕様の変更。
【Ver. 0.41の変更点】
- 共有違反が発生した時は、処理を中断していましたが、オプションで継続することができるようにしました。これにより、Windows ディレクトリーなども不完全ながら複写できるようになります。
- エラーログ表示を通常ログから分離しました。
【Ver. 0.40の変更点】
- ファイルのコピーにWin32APIを使用していたため、大きなファイルのコピー中に中断できなかったので、これを自家製ルーチンに変更した。
- 転送先、転送元のヒストリー機能を追加、これにともないウィンドウの体裁を変更。
- 転送先、転送元ディレクトリー名の評価関数の不具合修正。
- エラー発生時、メッセージボックスを出していたが、これをすべて下部のステータスウィンドウに表示するよう修正(自動運転対応の準備)
【Ver. 0.30の変更点】