VC MFC 显示文件或文件夹的属性
来源:互联网 发布:cad手机画图软件 编辑:程序博客网 时间:2024/05/21 07:00
- SHELLEXECUTEINFO ShExecInfo ={0};
- ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
- ShExecInfo.fMask = SEE_MASK_INVOKEIDLIST ;
- ShExecInfo.hwnd = NULL;
- ShExecInfo.lpVerb = "properties";
- ShExecInfo.lpFile = "c://";
- ShExecInfo.lpParameters = "";
- ShExecInfo.lpDirectory = NULL;
- ShExecInfo.nShow = SW_SHOW;
- ShExecInfo.hInstApp = NULL;
- ShellExecuteEx(&ShExecInfo);
- 获得指定目录下所有*.mht文件的属性
- void CGetDirectoryAndFileDlg::OnButtonGet()
- {
-
- CString FileName[200];
- HANDLE hFile;
- CString strPath;
- strPath=m_strFolderPath+"//*.mht";
- WIN32_FIND_DATA FindFileData;
-
- hFile=::FindFirstFile(strPath,&FindFileData);
- BOOL blnExact=true;
- if (hFile==INVALID_HANDLE_VALUE)
- {
- AfxMessageBox("找不到目录");
- return;
- }
- m_listFile.DeleteAllItems();
- m_listFile.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
- m_listFile.SetTextColor(RGB(255,0,0));
- m_listFile.InsertColumn(0,"文件名",LVCFMT_LEFT,250);
- m_listFile.InsertColumn(1,"提示文字",LVCFMT_LEFT,100);
- m_listFile.InsertColumn(2,"创建时间",LVCFMT_LEFT,150);
- m_listFile.InsertColumn(3,"最后访问时间",LVCFMT_LEFT,150);
- m_listFile.InsertColumn(4,"最后修改时间",LVCFMT_LEFT,150);
- m_listFile.InsertColumn(5,"文件属性",LVCFMT_LEFT,60);
- int i=0;
- CTime time;
- CString strTime;
- while(blnExact)
- {
- m_listFile.InsertItem(i,FindFileData.cFileName,0);
- m_listFile.SetItemText(i,1,FindFileData.cAlternateFileName);
- time=CTime(FindFileData.ftCreationTime);
- strTime.Format("%d年%d月%d日%d时%d分%d秒",time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());
- m_listFile.SetItemText(i,2,strTime);
- time=CTime(FindFileData.ftLastAccessTime);
- strTime.Format("%d年%d月%d日%d时%d分%d秒",time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());
- m_listFile.SetItemText(i,3,strTime);
- time=CTime(FindFileData.ftLastWriteTime);
- strTime.Format("%d年%d月%d日%d时%d分%d秒",time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());
- m_listFile.SetItemText(i,4,strTime);
-
- switch (FindFileData.dwFileAttributes)
- {
- case FILE_ATTRIBUTE_ARCHIVE:
- strTime="存档";
- break;
- case FILE_ATTRIBUTE_HIDDEN:
- strTime="隐藏";
- break;
- default:
- strTime="默认";
- break;
- }
- m_listFile.SetItemText(i,5,strTime);
-
- FileName[i]=FindFileData.cFileName;
- m_strFileList=m_strFileList+FileName[i];
- i++;
- blnExact=::FindNextFile( hFile,&FindFileData);
- }
- ::FindClose(hFile);
- UpdateData(FALSE);
- }