|
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HANDLE hFile;
char *pszFileName;
char *cFileName;
char szFileTime1[100];
char szFileTime2[100];
char szFileTime3[100];
SYSTEMTIME st;
FILETIME localTime;
WIN32_FIND_DATA FileInformation;
TStringList *flist = new TStringList;
GetFullFilePath(flist, Edit1->Text, Edit2->Text, true ); //Edit1은 디렉토리 path구요 Edit2 는 필터입니다.
pszFileName = flist->GetText();// flist 이 값이 stringlist 값입니다.
hFile = FindFirstFile((LPCTSTR)pszFileName &FileInformation);
memset(szFileTime1,0x00,sizeof(szFileTime1));
memset(szFileTime2,0x00,sizeof(szFileTime2));
memset(szFileTime3,0x00,sizeof(szFileTime3));
// 만든 날짜
if(FileTimeToLocalFileTime(&FileInformation.ftCreationTime,&localTime))
FileTimeToSystemTime(&localTime,&st);
sprintf(szFileTime1,"%04d-%02d-%02d %02d:%02d:%02d",st.wYear,st.wMonth,
st.wDay,st.wHour,st.wMinute,st.wSecond);
ShowMessage(szFileTime1);
// 수정한 날짜
if(FileTimeToLocalFileTime(&FileInformation.ftLastWriteTime,&localTime))
FileTimeToSystemTime(&localTime,&st);
sprintf(szFileTime2,"%04d-%02d-%02d %02d:%02d:%02d",st.wYear,st.wMonth,
st.wDay,st.wHour,st.wMinute,st.wSecond);
ShowMessage(szFileTime2);
// 엑세스 날짜
if(FileTimeToLocalFileTime(&FileInformation.ftLastAccessTime,&localTime))
FileTimeToSystemTime(&localTime,&st);
sprintf(szFileTime3,"%04d-%02d-%02d %02d:%02d:%02d",st.wYear,st.wMonth,
st.wDay,st.wHour,st.wMinute,st.wSecond);
ShowMessage(szFileTime3);
// 파일명
cFileName = FileInformation.cFileName;
ShowMessage(cFileName);
delete flist;
}
stringlist의 값인 flist 를 이용하여 FindFirstFile함수를 이용하려 하는데 자꾸 이상한 값이 나옵니다...
아마도 캐스팅의 문제같은데요...
초보라 정말 어렵습니다..
고수님들이 한번 보시고 뭐가 잘 못 되었는지 알려주세요!!^^
|