青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

一個Windows API的SHGetFileInfo()方法的Wrapper

頭文件
/// @class CSHGetFileInfo
/// SHGetFileInfo的包裹類

class CSHGetFileInfo
{

public:
    CSHGetFileInfo();

    
virtual ~CSHGetFileInfo();

    
/// 獲取系統圖像列表
    
/// @param[in] bSmallIcon ture則為小圖標,false則為大圖標

    HIMAGELIST  GetSystemImageListHandle( BOOL bSmallIcon );

    
/// 獲取系統圖片列表的文件圖片索引
    
/// @param[in] strFileName 文件名
    
/// @param[in] bSmallIcon ture則為小圖標,false則為大圖標

    int GetFileIconIndex( CString strFileName, BOOL bSmallIcon);

    
/// 獲取系統圖片列表的文件夾圖片索引
    
/// @param[in] bSmallIcon

    int GetDirIconIndex(BOOL bSmallIcon);

    
/// 獲取文件的icon的句柄
    
/// @param[in] strFileName 文件名
    
/// @param[in] bSmallIcon ture則為小圖標,false則為大圖標

    HICON GetFileIconHandle(CString strFileName, BOOL bSmallIcon);

    
/// 獲取文件夾的icon的句柄
    
/// @param[in] bSmallIcon ture則為小圖標,false則為大圖標

    HICON GetFolderIconHandle(BOOL bSmallIcon );

    
/// 獲取文件類型
    
/// @param[in] strFileName 文件名

    CString GetFileType(CString strFileName);

}
;


cpp文件
CSHGetFileInfo::CSHGetFileInfo()
{

}


CSHGetFileInfo::
~CSHGetFileInfo()
{

}



HIMAGELIST  CSHGetFileInfo::GetSystemImageListHandle( BOOL bSmallIcon )
{
    HIMAGELIST  hSystemImageList; 
    SHFILEINFO    ssfi; 

    
if (bSmallIcon)
    
{
        hSystemImageList 
= 
            (HIMAGELIST)SHGetFileInfo( 
            (LPCTSTR)_T(
"c:\\"), 
            
0
            
&ssfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_SYSICONINDEX 
| SHGFI_SMALLICON); 
    }

    
else
    
{
        hSystemImageList 
= 
            (HIMAGELIST)SHGetFileInfo( 
            (LPCTSTR)_T(
"c:\\"), 
            
0
            
&ssfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_SYSICONINDEX 
| SHGFI_LARGEICON); 
    }

    
return hSystemImageList;
}



int CSHGetFileInfo::GetFileIconIndex( CString strFileName, BOOL bSmallIcon )
{
    SHFILEINFO    sfi;

    
if (bSmallIcon)
    
{
        SHGetFileInfo(
            (LPCTSTR)strFileName, 
            FILE_ATTRIBUTE_NORMAL,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_SYSICONINDEX 
| SHGFI_SMALLICON | SHGFI_USEFILEATTRIBUTES);
    }

    
else
    
{
        SHGetFileInfo(
            (LPCTSTR)strFileName, 
            FILE_ATTRIBUTE_NORMAL,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_SYSICONINDEX 
| SHGFI_LARGEICON | SHGFI_USEFILEATTRIBUTES);
    }


    
return sfi.iIcon;

}


int CSHGetFileInfo::GetDirIconIndex(BOOL bSmallIcon )
{
    SHFILEINFO    sfi;
    
if (bSmallIcon)
    
{
        SHGetFileInfo(
            (LPCTSTR)
"Doesn't matter"
            FILE_ATTRIBUTE_DIRECTORY,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_SYSICONINDEX 
| SHGFI_SMALLICON | SHGFI_USEFILEATTRIBUTES);
    }

    
else
    
{
        SHGetFileInfo(
            (LPCTSTR)
"Doesn't matter"
            FILE_ATTRIBUTE_DIRECTORY,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_SYSICONINDEX 
| SHGFI_LARGEICON | SHGFI_USEFILEATTRIBUTES);

    }

    
return sfi.iIcon;

}

HICON CSHGetFileInfo::GetFileIconHandle(CString strFileName, BOOL bSmallIcon)
{

    SHFILEINFO    sfi;
    
if (bSmallIcon)
    
{
        SHGetFileInfo(
            (LPCTSTR)strFileName, 
            FILE_ATTRIBUTE_NORMAL,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_ICON 
| SHGFI_SMALLICON | SHGFI_USEFILEATTRIBUTES);
    }

    
else
    
{
        SHGetFileInfo(
            (LPCTSTR)strFileName, 
            FILE_ATTRIBUTE_NORMAL,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_ICON 
| SHGFI_LARGEICON | SHGFI_USEFILEATTRIBUTES);
    }

    
return sfi.hIcon;


}

HICON CSHGetFileInfo::GetFolderIconHandle(BOOL bSmallIcon )
{
    SHFILEINFO    sfi;
    
if (bSmallIcon)
    
{
        SHGetFileInfo(
            (LPCTSTR)
"Doesn't matter"
            FILE_ATTRIBUTE_DIRECTORY,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_ICON 
| SHGFI_SMALLICON | SHGFI_USEFILEATTRIBUTES);
    }

    
else
    
{
        SHGetFileInfo(
            (LPCTSTR)
"Does not matter"
            FILE_ATTRIBUTE_DIRECTORY,
            
&sfi, 
            
sizeof(SHFILEINFO), 
            SHGFI_ICON 
| SHGFI_LARGEICON | SHGFI_USEFILEATTRIBUTES);
    }

    
return sfi.hIcon;
}


CString CSHGetFileInfo::GetFileType(CString strFileName)
{
    SHFILEINFO    sfi;

    SHGetFileInfo(
        (LPCTSTR)strFileName, 
        FILE_ATTRIBUTE_NORMAL,
        
&sfi, 
        
sizeof(SHFILEINFO), 
        SHGFI_TYPENAME 
| SHGFI_USEFILEATTRIBUTES);

    
return sfi.szTypeName;
}


posted on 2008-05-05 13:50 楊粼波 閱讀(1833) 評論(1)  編輯 收藏 引用

評論

# re: 一個Windows API的SHGetFileInfo()方法的Wrapper 2012-01-31 15:13 飛飛龍

學習了  回復  更多評論   


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美电影专区| 亚洲国产美女| 国产精品久久久久久久app| 亚洲一区影院| 亚洲一区久久久| 一区二区三区久久网| 一本色道久久综合亚洲精品按摩 | 午夜精品久久久久久久| 一本色道久久99精品综合 | 欧美性感一类影片在线播放 | 一本色道久久综合亚洲精品按摩| 亚洲人成毛片在线播放女女| 另类激情亚洲| 亚洲国产91精品在线观看| 91久久久在线| 亚洲视频一区在线| 欧美在线|欧美| 久久野战av| 欧美日韩一级黄| 国产欧美日韩综合一区在线观看 | 欧美日韩精品伦理作品在线免费观看 | 亚洲电影成人| 91久久国产综合久久蜜月精品| 亚洲区第一页| 亚洲在线成人| 麻豆精品网站| 国产精品久久久久9999高清| 国产一区二区三区在线免费观看| 亚洲黄色尤物视频| 亚洲一区二区三区在线看| 久久精品国产一区二区三区| 欧美黄免费看| 亚洲欧美另类国产| 欧美日本久久| 精品不卡一区二区三区| 亚洲一区二区免费在线| 麻豆精品传媒视频| 国产精品99久久久久久www| 久久婷婷丁香| 国产午夜精品全部视频播放 | 国产精品久久999| 亚洲第一福利社区| 亚洲女人天堂成人av在线| 欧美**字幕| 欧美制服丝袜第一页| 欧美日韩精品欧美日韩精品一| 国产日韩欧美一区二区| 中国成人亚色综合网站| 久久久久久欧美| 一区二区av| 欧美女主播在线| 亚洲电影成人| 久久躁狠狠躁夜夜爽| 一区二区三区产品免费精品久久75| 久久男女视频| 国内成人在线| 亚洲激情网址| 一区二区三区成人| 欧美精品黄色| 亚洲黄色在线观看| 欧美成人一二三| 久久精品国产一区二区三区| 国产精品亚洲精品| 亚洲一区二区三区四区五区午夜| 亚洲高清网站| 免费看黄裸体一级大秀欧美| 在线欧美影院| 欧美成人免费大片| 麻豆精品精华液| 亚洲欧洲精品一区二区三区 | 一区二区三区日韩欧美| 亚洲第一网站免费视频| 麻豆av一区二区三区| 亚洲福利久久| 亚洲电影av在线| 欧美极品在线视频| 亚洲深夜福利在线| 一区二区三区不卡视频在线观看| 欧美午夜精品久久久久久人妖| 中国成人亚色综合网站| 亚洲午夜激情网页| 国产毛片一区二区| 老司机aⅴ在线精品导航| 久久精品91| 曰韩精品一区二区| 亚洲激情在线观看视频免费| 欧美日韩一区二区精品| 亚洲欧美日本另类| 欧美一区二区三区成人| 亚洲国产另类精品专区| 亚洲狠狠婷婷| 国产精品系列在线| 美女脱光内衣内裤视频久久影院| 欧美电影免费观看高清| 亚洲影院色无极综合| 欧美一区影院| 亚洲久久一区| 亚洲欧美日韩精品一区二区 | 尤物精品国产第一福利三区 | 嫩草影视亚洲| 欧美日韩在线视频首页| 久久成人一区二区| 久久亚洲综合色一区二区三区| 一区二区三区国产盗摄| 欧美在线日韩精品| 99香蕉国产精品偷在线观看| 亚洲女优在线| 亚洲精品久久| 亚洲欧美日韩专区| 99国产精品久久久久久久久久| 亚洲一区二区三区免费视频| 久久久亚洲一区| 欧美日韩国产黄| 久久综合伊人77777麻豆| 欧美日韩国产欧| 欧美成人午夜激情在线| 国产精品扒开腿做爽爽爽视频| 蜜臀av在线播放一区二区三区| 欧美午夜一区| 亚洲国产精品精华液2区45| 国产午夜精品福利| 亚洲影音先锋| 亚洲视频一二| 欧美成人一二三| 久久久久久国产精品mv| 国产精品盗摄一区二区三区| 亚洲国产精品一区在线观看不卡| 国产香蕉97碰碰久久人人| 亚洲免费观看高清完整版在线观看熊 | 久久亚裔精品欧美| 国产精品久在线观看| 亚洲人www| 亚洲欧洲精品一区二区三区不卡 | 国产精品毛片a∨一区二区三区|国| 欧美激情第1页| 亚洲国产成人在线| 久久三级视频| 欧美1区免费| 亚洲成色精品| 欧美成人精品| 亚洲精品国精品久久99热一| 亚洲国产日韩综合一区| 免费久久精品视频| 欧美黑人多人双交| 亚洲免费观看高清完整版在线观看| 久久综合中文色婷婷| 欧美激情精品久久久久久久变态 | 亚洲精品一区在线| 欧美国产成人精品| 亚洲三级网站| 一区二区欧美在线| 国产精品成人一区| 午夜精品久久久久久久99热浪潮| 久久久999精品视频| 激情欧美亚洲| 欧美精品久久久久久久免费观看 | 老巨人导航500精品| 欧美黑人在线播放| 亚洲一区二区三区四区在线观看 | 亚洲精品一区二区三区樱花| 久久久久久亚洲精品中文字幕| 国产在线精品成人一区二区三区| 新狼窝色av性久久久久久| 久久久亚洲欧洲日产国码αv| 国产亚洲一区二区在线观看| 欧美一区二区三区婷婷月色 | 国产精品福利在线| 亚洲综合色在线| 免费高清在线一区| 一区二区三区欧美视频| 国产婷婷色综合av蜜臀av| 久久久水蜜桃| 亚洲最新视频在线| 欧美亚洲一区二区在线| 狠狠色综合网站久久久久久久| 另类尿喷潮videofree| 一区二区电影免费观看| 老牛国产精品一区的观看方式| 中国日韩欧美久久久久久久久| 国产欧美精品| 欧美日韩国产二区| 久久av一区二区三区| 欧美黄色一区| 午夜久久久久久久久久一区二区| 在线精品视频免费观看| 国产精品九色蝌蚪自拍| 欧美国产日本| 久久久99久久精品女同性| 一区二区三欧美| 欧美激情亚洲精品| 久久狠狠久久综合桃花| 99精品黄色片免费大全| 黄色成人在线观看| 国产精品热久久久久夜色精品三区| 久久女同互慰一区二区三区| 亚洲香蕉网站| 一区二区三区蜜桃网| 欧美国产日韩精品| 可以看av的网站久久看| 欧美主播一区二区三区|