いつも教えて頂き、ありがとうございます。私のアプリでは、処理したファイルのタイムスタンプが、元のファイルのタイプスタンプと違ってしまいます。元のファイルのタイプスタンプと同じに変えるにどのようにすれば良いでしょうか?なお、私なりに下記のサンプルプログラムのよううな方法で、それを実現しようとしましたが、そのサンプルプログラムでは、タイムスタンプの年月日時分秒の部分は指定した通りに2017年8月21日13時33分40秒に変わるのでが、msecの部分は15msecと指定したのに、0msecのままで変わりません。日付変更に成功しました。Showmessage('日付変更に失敗しました。nagaonagaoさん、こんにちは。下記のサンプルプログラムを実行すると、ファイルの年月日時分秒の部分は指定した通りに2017年8月21日13時33分40秒に変わるのでが、msecの部分は15msecと指定したのに、0msecのままで変わりません。この部分も指定した通りに変更する方法はありませんか?DelphiのDateTimeToFileDate関数http://docwiki.embarcadero.com/Libraries/Berlin/ja/System.SysUtils.DateTimeToFileDateがいわゆるDOSファイル日付(2秒単位)を返すため、それ以下の部分が切り捨てられてしまっているのが原因です。この場合、直接Win32APIのSetFileTime関数https://msdn.microsoft.com/ja-jp/library/windows/desktop/ms724933.aspxhttps://msdn.microsoft.com/ja-jp/library/cc429940.aspxを呼び出すのがよいと思います。DelphiのTSystemTime)から変換してあげる必要があります。ファイルのタイムスタンプの精度はOSやファイルシステムによって異なります。投稿中にコードを含む場合は{code}でコード部分を括ると見やすくなります。FUKUSHI福士さん、こんにちは。レスくださいましてありがとうございます。返事頂いたことを読みましたが、私はWin32APIの基礎知識がありませんので、前に進めません。投稿中にコードを含む場合は{code}でコード部分を括ると見やすくなります。今後はそのように致します。nagaonagaoさん、こんにちは。Documentationhttp://docwiki.embarcadero.com/Libraries/Berlin/ja/System.IOUtils.TDirectory.SetLastWriteTimeUtcを使用することでファイルシステムの持つ精度まで設定することができるようです(2つの関数の違いはSetLastWriteTimeでは指定日時を現在のタイムゾーン(例えば日本ならJST(UTC+9h))で指定するのに対して、SetLastWriteTimeUtcはUTCで指定する)。これを含め、ファイルやディレクトリ関係は古いSysUtilsのものではなく、新しいIOUtilsのものをなるべく使ったほうがいいような気がします。返事頂いたことを読みましたが、私はWin32APIの基礎知識がありませんので、前に進めません。甘えたことを申しますが、Delphi言語でどのようなコードにすればよいのか教えて頂けないでしょうか?前にも書いた気がしますが、ここはそういう場ではありません。FUKUSHI福士さん、こんにちは。追加のレス頂きましてありがとうございます。Berlinで、uses節にSystem.IOUtilsを置いて、下記のコードをコンパイル・実行したところエラーなく終えることができましたが、Pathhに中に含まれている複数のファイルのタイムスタンプはどれも全く変わっていませんでした。下記のコードの中で間違っているところがあるのでしょうか?また、SetLastWriteTimeは「ディレクトリーの最終書き込み時刻を変更します。」との説明書きがありますが、その中の複数のファイルのタイムスタンプもすべてその最終書き込み時刻を変更するということでしょうか?各ファイルのタイムスタンプは本来は各々異なっている筈なのに、それを同じに揃えてしまうという命令はおかしいと思うのですが・・・・。exit;aFileName:=OpenDialog1.FileName;Pathh:=ExtractFilePath(aFileName);TDirectory.SetLastWriteTime(Pathh,aDateTime);end;}なお、上記のコードの中でTDirectory.SetLastWriteTime(Pathh,aDateTime);のコードをTDirectory.SetLastWriteTime(aFileName,aDateTime);に変更した場合は例外が発生しました。前にも書いた気がしますが、ここはそういう場ではありません。