There is a nice feature in the “Open Project…” dialog (see image below) in the NetBeans IDE which uses a custom icon for the folder symbols depending on the project type in that folder.
For example, if a folder contains a pom.xml file, the Maven project symbol appears.
Maybe there also an extension point in the Windows standard dialog or a shell view control which can be used to override the default folder icon.
All solutions I know so far need a system-wide change, but is there also a solution which works without system modifications and only for the current application?

Update: which VCL component would you suggest as a starting point for a custom dialog, could I use TShellTreeView or TcxShellTreeView?
Descending from ‘TCustomTreeView’,
TShellTreeViewhas support for images out of the box. AnImageListcan be assigned to itsImagesproperty, and in itsOnGetImageIndexevent the index of the image in the list for the corresponding node can be supplied.A downside of that is, all nodes will have to use the images in the imagelist, that is there won’t be images from the system image list. The below example demonstrates how system images can be retrieved for nodes which won’t be customized. It uses a custom image for ‘RAD Studio’ folder in the personal folder and uses system images for all other nodes.
ImageList1holds our custom images,ImageList2is the one that is assigned to the ‘Images’ property of the ‘ShellTreeView’.As commented in the code, this should not be taken for a working design; Instead of an imagelist having lots of unused images, some kind of a lookup that matches ‘image index’ and ‘system image list index’ could be employed.