タイムスタンプ変更ツール

ファイルの作成日時や更新日時の変更を行なうプログラムです。
この手のフリーソフトはたくさんあります   この機能のフリーソフトは古くから多数発表されています。
特に多機能なわけでもないですし、ファイラーソフトの組み込み機能として存在するものもあるようです。 ですが、逆にMicrosoft .NET Framework環境で近年に作成されたものあまり見当たらないようで、Windows7、8での動作が記載されていない場合が多いという状態に見えたので 純粋に「作成してみました」といったところです。

201601月にWindows10での動作確認を行ないました。 インストールを含めて現行バージョンで問題なく動作できています。
Windowsのエクスプローラーにはこの機能はありません。
Windows8になってもエクスプローラーではタイムスタンプの変更はできません。
管理情報の書き換えなので「改ざん行為」になるということなのでしょうか。 でも、一般的な開発言語では簡単にできることです。
また、ファイルを別のフォルダにコピーさせると、コピー先のファイルのタイムスタンプは更新日時しか引き継がれず、作成日時とアクセス日時はコピーさせた日時に置き換わります。 アクセス日時は仕方ないにしても、作成日時は更新日時より新しい日時になってしまうのが「奇妙」だと思ったことはないでしょうか。 これはWindowsの「仕様」なのです。コピー先のフォルダにとってはコピーされてきたファイルは新しいものなので新しい作成日時になるのが当たり前ですから「矛盾」でもありません。
私は、このコピー先で作成日時をコピー元と同じに保持させたいケースがあるためと、誤って上書き保存させてしまったというケースでこの手のツールを使うことが時々ありました。 Windows7、8環境になって、また、この手のソフトでWindows7、8対応のものを探すという段になって、 「それなら作ってしまおうか」という単純な動機で作成したものです。

開発言語のソースプログラムは拡張子は特殊ですが実態はテキストファイルです。 従って、Officeドキュメントのような独自のプロパティは持っていません。 一方で、ExcelVBAを使って、ソリューション内の開発リソースをワークシ−トに一覧化させるようなこともやっているので 保存先の変更(たとえばPCの入れ替え)があった時に作成日時を変更前の状態に戻す作業をします。
この時の作業は11つのファイルの作成日時を正確に復旧させなければならない訳ではなく、プロジェクト単位の作成日時が復旧できれば良いというレベルなので、 プロジェクト内の各ドキュメントは一度に処理できるように複数ファイルを一度に処理させる仕様としました。

起動画面はこのようになっています。

タイムスタンプ変更ツール(画面)

このような起動画面です。

各項目は以下のような機能になっています。

画面項目 説明
ファイル名 ファイルはフォルダウィンドウから上部のグレーのボックスにドラッグさせて指定します。
複数のファイルを処理する場合はドラッグさせる段階で複数ファイルを同時にドラッグさせて下さい。 フォルダをドラッグさせることはできません。
複数のフォルダに対象ファイルが分かれている場合は、2回目のドラッグからは「追加」か「置き換え」かの確認メッセージが表示されるので「はい」を選択すれば追加されていきます。
フォルダをドラッグさせると先頭行のファイルの日時が変更指定欄に表示されます。
各日時の変更 「作成日時の変更」「更新日時の変更」「アクセス日時の変更」のそれぞれにチェックボックスがあり、どの日時を変更するのかを指定するようになっています。
チェックをつけた項目の日時が入力できるようになります。
「変更」ボタン 変更したいファイルをドラッグで指定して、変更する日時を入力したら、右下の「変更」ボタンで処理を開始します。
一旦、確認メッセージが表示されるのでさらに「はい」を選択すると処理が実行されます。
ファイル数にもよりますが、多くの時間を要することはありません。

処理上のご注意
フォルダに対する使用者の権限やファイルの使用中、また処理開始段階でファイルの実体が存在しないなど、処理中にエラーが発生する場合はその段階で処理が打ち切られます。 この場合、複数のファイルを指定した場合はエラーが発生したファイルより前に処理されたファイルが以前の日時に戻ることはありません。
「アクセス日時の変更」を指定した場合は、処理させる各ファイルごとにチェックが行なわれ、アクセス日時が作成日時と更新日時のどちらよりも古い日時に変更されることはありません。

インストールについて
下記の「ダウンロード」からインストーラが収容されたZIP形式の圧縮ファイルがダウンロードできます。

動作環境はMicrosoft .NET Framework 2.0〜3.5です。
本アプリケーションは32ビット版ですが、Windows64ビット版でも問題ありません。
Windows10の新しいPCでは、Microsoft .NET Framework 3.5がデフォルトから外されているようですが、 Windows10のインストールメディアには含まれているのでメディアがあれば追加インストールできます。 本件は当サイトの専門ではありませんが、調べた範囲のことは.NET Framework 3.5のインストールについて」で説明しています。 Windows10環境でそのままインストールできない場合はこれらをご確認下さい。



解凍してから「ChangeTimeStamp1_Setup.exe」を起動することでインストールが行なわれます。インストール後はスタートメニューの「すべてのプログラム」から「Excelでお仕事!VisualStudioツール」の中にある「タイムスタンプ変更ツール」を起動して下さい。 なお、デジタル証明書は搭載していないので、インストール中の確認画面で発行元は「不明」と表示されます。

アンインストールを行なう場合は、コントロールパネルの「プログラムと機能(プログラムの追加と削除)」から「タイムスタンプ変更ツール」を選択して「削除」を実行します。
本ソフトではレジストリは使用していません。画面モードの設定保存はMicrosoft .NET Frameworkの設定保持機能を使っています。

著作権等について
本ソフトの著作権は「Excelでお仕事!(井上 治)」が所有しています。
フリーソフトですのでご自由にダウンロードしてご利用いただけます。 但し、動作確認は充分に行なっておりますが、このソフトを使ったことによって損害が発生しても一切の責任は負えません。

本記事内容の転載についてはアーカイブに変更を加えないことを条件に、転載は自由にして頂いて構いませんが、必ずご連絡いただくようにお願いします。 連絡については本サイトの「意見・質問」ペ−ジが利用できます。
また、不具合や改善点などについてもご連絡いただけると幸いです。

バージョン情報

更新日 Ver 内容
2013/03/31 1.0.0.3 初回リリース
2013/05/28 1.0.0.4 ボタンやメニューアイテムのダブルクリック対策を適用
2014/04/23 1.0.0.5 本ドキュメントのメールアドレスを変更
2014/08/11 1.0.0.6 ・単一インスタンスAPPへの変更
・インストーラを自動インストール書庫形式に変更
2014/08/31 1.0.0.7 DPI制御をフォーム変倍方式に変更
2016/01/17 1.0.0.8 Windows10での動作確認を行なったので記載を変更
2016/07/09 1.0.0.9 マルチスクリーン時の各フォーム制御の改善
2018/10/06 1.0.1.0 DPI環境で起動時フォーム位置がスクリーン領域外になってしまうことが発生する件の対応
2018/11/04 1.0.1.1 画面位置保持機能について複数画面時の個別DPI指定に対応する修正A

※バージョンアップでのインストール時に動作上は正常にインストールされるものの、EXEファイルが置き換わらない現象があるようです。 フォーム上の各コントロールをマウスでポイントするとツールチップでバージョンが表示されるので、新しいバージョンになっていない場合は一旦アンインストールさせてから再度インストールさせて下さい。 この方法でも設定内容は保持されます。

ダウンロードはこちら。

←ChangeTimeStamp1_Setup.zip
      (797KB)
.NET Framework 3.5のインストールについて   2019年になって、.NET Framework 3.5がインストールされていない新規PCが見つかっています。
本件は「Microsoft.NET Framework 3.5に関するサポートポリシーの変更」に起因するものなのですが、 これらの状況と.NET Framework 3.5のインストール方法について説明するページを追加しているのでご覧下さい。