ShGetFileInfo包装类






4.50/5 (28投票s)
2003年2月7日
1分钟阅读

153470

3574
一个基于 ShGetFileInfo() 函数的类。
引言
CUseShGetFileInfo
类是基于 ShGetFileInfo()
函数构建的。这是一个非常简单的类,但我认为它可能有用。你不再需要担心设置标志,并且它也能处理不存在的文件名。为了获取文件的图标、文件类型或其在系统图像列表中的图标索引(包括大图标和小图标),你不需要知道文件的完整路径。它还提供了一个函数来获取系统图像列表的句柄。
用户函数
使用 GetFileIconIndex
函数获取文件关联图标在系统图像列表中的索引。
int CUseShGetFileInfo::GetFileIconIndex( CString strFileName , BOOL bSmallIcon )
使用 GetDirIconIndex
函数获取文件夹关联图标在系统图像列表中的索引。
int CUseShGetFileInfo::GetDirIconIndex( BOOL bSmallIcon )
使用 GetFileIconHandle
函数获取文件关联图标在系统图像列表中的句柄。
HICON CUseShGetFileInfo::GetFileIconHandle( CString strFileName, BOOL bSmallIcon )
使用 GetFolderIconHandle
函数获取文件夹关联图标在系统图像列表中的句柄。
HICON CUseShGetFileInfo::GetFolderIconHandle( BOOL bSmallIcon )
使用 GetFileType
函数获取文件的类型(例如 Winamp 媒体文件)。
CString CUseShGetFileInfo::GetFileType( CString strFileName)
使用 GetSystemImageListHandle 函数获取系统图像列表的句柄(大图标或小图标)。使用此函数创建一个 CImageList
对象,并将其附加到列表控件。在将图像列表附加到列表控件后,使用 GetFileIconIndex
或 GetDirIconIndex
获取要设置为 nImage 字段的值(例如 CListCtrl::InsertItem()
函数)。
HIMAGELIST CUseShGetFileInfo::GetSystemImageListHandle( BOOL bSmallIcon )