SetFileTime 함수(fileapi.h)
지정된 파일 또는 디렉터리를 만들었거나, 마지막으로 액세스했거나, 마지막으로 수정한 날짜와 시간을 설정합니다.
구문
BOOL SetFileTime(
[in] HANDLE hFile,
[in, optional] const FILETIME *lpCreationTime,
[in, optional] const FILETIME *lpLastAccessTime,
[in, optional] const FILETIME *lpLastWriteTime
);
매개 변수
[in] hFile
파일 또는 디렉터리에 대한 핸들입니다. FILE_WRITE_ATTRIBUTES 액세스 권한이 있는 CreateFile 함수를 사용하여 핸들을 만들어야 합니다. 자세한 내용은 파일 보안 및 액세스 권한을 참조하세요.
[in, optional] lpCreationTime
파일 또는 디렉터리에 대한 새 생성 날짜 및 시간이 포함된 FILETIME 구조체에 대한 포인터입니다. 애플리케이션에서 이 정보를 변경할 필요가 없는 경우 dwLowDateTime NULL
및 dwHighDateTime 멤버가 모두 로 설정된 FILETIME 구조체에 대한 포인터를 또는 로 설정합니다0
.
[in, optional] lpLastAccessTime
파일 또는 디렉터리에 대한 새 마지막 액세스 날짜 및 시간이 포함된 FILETIME 구조체에 대한 포인터입니다. 마지막 액세스 시간에는 파일 또는 디렉터리가 기록되거나, 읽거나,(실행 파일의 경우) 마지막으로 실행된 시간이 포함됩니다. 애플리케이션에서 이 정보를 변경할 필요가 없는 경우 dwLowDateTime NULL
및 dwHighDateTime 멤버가 모두 로 설정된 FILETIME 구조체에 대한 포인터를 또는 로 설정합니다0
.
지정된 핸들을 사용하는 파일 작업이 마지막 액세스 시간을 수정하지 못하도록 하려면 파일 핸들을 연 직후 SetFileTime을 호출하고 dwLowDateTime 및 dwHighDateTime 멤버가 모두 로 설정된 0xFFFFFFFF
FILETIME 구조를 전달합니다.
[in, optional] lpLastWriteTime
파일 또는 디렉터리에 대한 마지막으로 수정한 새 날짜 및 시간이 포함된 FILETIME 구조체에 대한 포인터입니다. 애플리케이션에서 이 정보를 변경할 필요가 없는 경우 dwLowDateTime NULL
및 dwHighDateTime 멤버가 모두 로 설정된 FILETIME 구조체에 대한 포인터를 또는 로 설정합니다0
.
지정된 핸들을 사용하는 파일 작업이 마지막 쓰기 시간을 수정하지 못하도록 하려면 파일 핸들을 연 직후 SetFileTime을 호출하고 dwLowDateTime 및 dwHighDateTime 멤버가 모두 로 설정된 0xFFFFFFFF
FILETIME 구조를 전달합니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
모든 파일 시스템에서 생성 및 마지막 액세스 시간을 기록할 수 있는 것은 아니며, 모든 파일 시스템에서 동일한 방식으로 기록하는 것은 아닙니다. 예를 들어 FAT에서 만들기 시간은 해상도가 10밀리초이고, 쓰기 시간은 해상도가 2초이고, 액세스 시간은 1일(실제로 액세스 날짜)의 해상도를 가집니다. 따라서 GetFileTime 함수는 SetFileTime을 사용하여 설정된 동일한 파일 시간 정보를 반환하지 않을 수 있습니다. NTFS는 마지막 액세스 후 최대 1시간까지 파일의 마지막 액세스 시간으로 업데이트를 지연합니다.
예제
예를 들어 파일 시간을 현재 시간으로 변경을 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | fileapi.h(Windows.h 포함) |
라이브러리 | Kernel32.lib |
DLL | Kernel32.dll |