Here's a function I use:
HICON GetFileIconHandle(CString cstrFileName, BOOL bSmallIcon)
{
SHFILEINFO sfi;
if (bSmallIcon)
{
SHGetFileInfo((LPCTSTR)cstrFileName,
FILE\_ATTRIBUTE\_NORMAL, &sfi, sizeof(SHFILEINFO),
SHGFI\_ICON | SHGFI\_SMALLICON | SHGFI\_USEFILEATTRIBUTES);
}
else
{
SHGetFileInfo((LPCTSTR)cstrFileName,
FILE\_ATTRIBUTE\_NORMAL, &sfi, sizeof(SHFILEINFO),
SHGFI\_ICON | SHGFI\_LARGEICON | SHGFI\_USEFILEATTRIBUTES);
}
return sfi.hIcon;
}
Jason Henderson
"I can picture in my mind a world without war, a world without hate. And I can picture us attacking that world, because they'd never expect it." - Jack Handey