Click here to Skip to main content
12,634,330 members (28,549 online)
Rate this:
 
Please Sign up or sign in to vote.
See more: C++ MFC
hil = (HIMAGELIST)SHGetFileInfo( itemss, FILE_ATTRIBUTE_DIRECTORY|FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_ENCRYPTED|FILE_ATTRIBUTE_HIDDEN, &sfi, sizeof(sfi), SHGFI_USEFILEATTRIBUTES|SHGFI_SYSICONINDEX|SHGFI_SMALLICON|SHGFI_ICON);




I want to list files and directorys with the image icons. I can only get files. Or I can get only directorys. I know its something with the flags but can not figure it out. I checked documentary with the command and used all the flags but still does not work

If i just use FILE_ATTRIBUTE_DIRECTORY, than everything is a folder..even files like *.sys

If i just use FILE_ATTRIBUTE_ARCHIVE, then folders don't get listed.....

i looked in Winnt.h..nothing works
Posted 12-Jul-13 22:03pm
Updated 12-Jul-13 22:18pm
v4

1 solution

Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 1

When using the SHGFI_USEFILEATTRIBUTES flag, the dwFileAttributes parameter specifies if the passed file name is a directory or a file. So you must pass the attribute of the specific file and not a combination of attributes.

I assume that you are using CFileFind or FindFirstFile() / FindNextFile() to get the file list. Then use the attributes provided by these functions or just FILE_ATTRIBUTE_DIRECTORY for directories and FILE_ATTRIBUTE_NORMAL for files.
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


Advertise | Privacy | Mobile
Web02 | 2.8.161208.2 | Last Updated 13 Jul 2013
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100