掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
フォルダの更新日、作成日の変更 (ID:19298)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
全部は満たしてないかもしれませんが、こんな感じでしょうか function SetDirTime( const ADirName : String; const ADate : TDateTime ): Boolean; // ディレクトリ・ファイルの時刻を変更する。 var FLHandle : integer; Dir : String; Begin Result := False; Dir := Trim(ADirName); if Dir = '' then Exit; {$IFDEF VER120} if AnsiLastChar( Dir ) = '\' then Dir := Copy( Dir, 1, Length(Dir)-1 ); {$ELSE} Dir := {SysUtils}ExcludeTrailingPathDelimiter(ADirName); {$ENDIF} if DirectoryExists( Dir )then begin // ディレクトリの時 FLHandle := {Windows}CreateFile( PChar(Dir), { 終端の\は不要/上で削除してるからこのままで可 } GENERIC_WRITE, { 書きこみ許可/こうしないと失敗する } FILE_SHARE_Read, { 指定しないとハンドルがもらえない } nil, { セキュリティは無視} OPEN_EXISTING, { 既存ディレクトリが前提/一応チェックしてるのでいいかな } FILE_FLAG_BACKUP_SEMANTICS, { なんだっけ} 0); try Result := ({SysUtils}FileSetDate( FLHandle, DateTimeToFileDate(ADate)) = 0 ); finally {Windows}CloseHandle( FLHandle ); end; end else begin // ファイルの時 // ファイルのタイムスタンプ変更をCall end; End;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.