Reputation: 9662
I'm trying to roll my own implementation of IShellBrowser because I need to have a more full-featured File Open and Save As dialog than Windows allows that is compatible with XP (and ideally with W2000)*
At this point I need to add the standard toolbar that you see in upper right of the dialog (manifest styles for XP and earlier) - a back button, a parent-folder button, a new folder button, and a "tools" drop down.
But so far I've been unsuccessful in finding these icons / images. I've looked in USER32.dll, comdlg32.dll, comctl32.dll, but haven't found anything that quite matches.
I could simply take screen shots of an application where I can find them - but it would possibly more useful to know where they come from, so I can access the various versions of these buttons (high rez, low rez, shallow color, deep color, etc.).
Any ideas?
[Edit: I need it to be compatible with Vista & Windows 7 also. Its just that starting with Vista, they broke the old common dialog model, and their new model is brain-damaged IMO - I no longer have enough access to the state of the dialog to perform the necessary duties that our dialogs used to do - so we are forced to approach the problem from another angle]
Upvotes: 0
Views: 1162
Reputation: 256731
Windows has 3 "standard" toolbars. From CommCtrl.h
(source):
The indexes for the images are documented, and can be found in CommCrtl.h
. For example, the Standard image indexes are:
You load a standard set of images into a toolbar's imagelist by sending the TB_LOADIMAGES message:
// hWndToobar is the window handle of the toolbar control.
SendMessage(hWndToolbar,
TB_LOADIMAGES,
(WPARAM)IDB_STD_SMALL_COLOR,
(LPARAM)HINST_COMMCTRL);
Upvotes: 1
Reputation: 15271
Use your own icons. Resource Ids in Shell32.dll are not documented and can change in a Windows Update.
Upvotes: 1
Reputation: 54600
If you just ask the shell for it's image list, it will give it to you.
And then you can use whichever ones you want. Yay.
Edit: Looks like SHGetImageList() might be the more-better way of doing it.
Upvotes: 1
Reputation: 180788
Try looking in imageres.dll
. You should find most of the image resources for Vista there.
Upvotes: 2
Reputation: 124563
I found this table containing a list of system files containing embedded icons. Perhaps you might find what you're looking for in one of them:
Filename Number of Icons
-----------------------------
compstui.dll 99
comres.dll 38
cryptui.dll 20
csc.dll 22
dsuiext.dll 35
explorer.exe 18
iexplore.exe 23
inetcpl.cpl 34
inetcpl.dll 14
mmcndmgr.dll 129
mmsys.cpl 40
moricons.dll 140
netshell.dll 157
ntbackup.exe 26
pfmgr.dll 38
progman.exe 48
setupapi.dll 37
SHDOCVW.DLL 35
shell32.dll 238
stobject.dll 31
wiashext.dll 23
wmploc.dll 60
xpsp2res.dll 19
Upvotes: 3
Reputation: 18059
vista style http://www.freeiconsweb.com/Vista-Style-Software-Icons-Set.html
not windows but really complete http://www.freeiconsweb.com/Webmaster-Pixel-Icon-Set.html
just the download link is at the bottom
http://www.freeiconsweb.com/Vista_Folders_Icons.html
Upvotes: 1