반응형
HANDLE writeHandle;
SYSTEMTIME st;
CTime ct = CTime::GetCurrentTime();
// 현재시간을 구함. - CTime::GetCurrentTime()
FILETIME cTime;
if ((writeHandle = CreateFile(strEventFile, FILE_WRITE_ATTRIBUTES,
FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL))
== INVALID_HANDLE_VALUE)
{
puts("CreateFile 에러");
}
ct += CTimeSpan(0,0,-25000,0);
// 시간을 ± 함. CTimeSpan(일,시,분,초)
// -25,000분
st.wYear = ct.GetYear();
st.wMonth = ct.GetMonth();
st.wDay = ct.GetDay();
st.wHour = ct.GetHour();
st.wMinute = ct.GetMinute();
st.wSecond = ct.GetSecond();
st.wDayOfWeek = 0;
st.wMilliseconds = 0;
SystemTimeToFileTime(&st, &cTime);
// 시스템 시간을 파일 시간 형식으로 변환.
// UTC를 기준으로 한국은 UTC+9.
// 때문에 ct설정 시간에서 9시간이 +가 됨.
LocalFileTimeToFileTime(&cTime, &cTime);
// 파일 시간을 UTC를 기반으로 하는 파일 시간으로 변환
// SystemTimeToFileTime으로 +9를 ct설정 시간으로 맞춰 줌.
if (SetFileTime(writeHandle, &cTime, &cTime, &cTime) == FALSE) // 파일 시간 변경.
{
puts("SetFileTime 에러");
}
CloseHandle(writeHandle);
파일의 속성을 보면
만든 날짜, 수정한 날짜, 액세스한 날짜가 있다.
해당 날짜를 수정하려면 SetFileTime을 사용한다.
728x90
반응형
'C++' 카테고리의 다른 글
프로그램 ESC, ENTER 키 종료방지 (0) | 2023.03.07 |
---|---|
파일 소스을(를) 열 수 없습니다. "afxwin.h" (visual studio 2022) (0) | 2023.03.07 |
error LNK2019: __imp__GetAdaptersInfo@8 (1) | 2023.01.16 |
dlgdata.cpp / Debug Assertion Failed! (0) | 2023.01.06 |
too few arguments to function '함수명' (0) | 2023.01.06 |