使用VC取得文件关联图标的方法
2012-08-09 13:18
471 查看
一个简单的学习加强实例,用VC取得文件的关联图标,看下面的代码一起来学习下!
CFileDialog fileDialog( TRUE,"*.*",NULL,NULL,NULL);
if (fileDialog.DoModal() != IDOK) return;
CString str= fileDialog.GetFileExt();
str="."+str;
SHFILEINFO sfi;
SHGetFileInfo(str,0,&sfi,sizeof(sfi),SHGFI_ICON|SHGFI_LARGEICON|SHGFI_USEFILEATTRIBUTES);
int i=sfi.iIcon;
CStatic* pStatic = (CStatic*) GetDlgItem(IDC_STATIC);
HICON hIcon=sfi.hIcon;
pStatic->SetIcon (hIcon);
上面的IDC_STATIC是一个静态控件。
记得用下面的函数释放用SHGetFileInfo获取的icon句柄
If SHGetFileInfo returns an icon handle in the hIcon member of the SHFILEINFO structure pointed to by psfi, you are responsible for freeing it with DestroyIcon when you no longer need it.
BOOL DestroyIcon( HICON hIcon);
CFileDialog fileDialog( TRUE,"*.*",NULL,NULL,NULL);
if (fileDialog.DoModal() != IDOK) return;
CString str= fileDialog.GetFileExt();
str="."+str;
SHFILEINFO sfi;
SHGetFileInfo(str,0,&sfi,sizeof(sfi),SHGFI_ICON|SHGFI_LARGEICON|SHGFI_USEFILEATTRIBUTES);
int i=sfi.iIcon;
CStatic* pStatic = (CStatic*) GetDlgItem(IDC_STATIC);
HICON hIcon=sfi.hIcon;
pStatic->SetIcon (hIcon);
上面的IDC_STATIC是一个静态控件。
记得用下面的函数释放用SHGetFileInfo获取的icon句柄
If SHGetFileInfo returns an icon handle in the hIcon member of the SHFILEINFO structure pointed to by psfi, you are responsible for freeing it with DestroyIcon when you no longer need it.
BOOL DestroyIcon( HICON hIcon);
相关文章推荐
- 使用VC取得文件关联图标的方法
- 使用VC取得文件关联图标的方法
- 用VC取得文件的关联图标
- TortoiseSVN 文件关联图标不显示的解决方法
- 用VC获取文件的关联图标
- 修改windows的默认使用程序及文件类型与程序关联方法
- VC注册表文件关联,图标关联
- VC操作INI文件 ,INI文件操作总结,如何操作INI文件,INI文件使用方法小结
- VC注册表文件关联,图标关联
- VC++实现文件与应用程序关联的方法(注册表修改)
- 用VC获取文件的关联图标
- Delphi 7使用自定义图标关联文件类型
- VC操作INI文件 ,INI文件操作总结,如何操作INI文件,INI文件使用方法小结
- VC 文件关联以及图标的实时更新
- DMP文件的生成和使用(转),由于须要取得用户出现问题的信息,所以须要取得demp信息,可以通过本方法获取。
- VC注册表文件关联,图标关联
- 使用 TRegistry 类[4]: 文件打开与文件图标的关联
- 使用API获取Windows系统的文件关联图标
- XP下修复Htm和Html文件图标系统默认关联的最终方法.
- IE6升级IE7后,URL文件图标变成“无关联文件图标”的解决方法