Platform SDK Shell >> Adding items to view asynchronously

by Pix » Tue, 26 Apr 2005 19:38:57 GMT


My shell folder NSE displays some dynamic information that takes time
to gather. I have successfully implemented all the requirements and
now Windows Explorer displays a flashlight animation while IEnumIDList
is enumerated.

This is all fine but I'd like to be able to make items appear as they
are found, instead of waiting for all items to be enumerated. I am
using the default IShellView provided by SHCreateShellFolderView().

I think I know how I would do it if I used my own IShellView
implementation, but I hate to loose the default one.

A good example of this is the "Search Results" folder in Windows XP
Windows Explorer, which adds items to the view as they become
available.

I am still not fully aware of what can and cannot be done with a NSE,
but one possible solution could be to perform an async search and
allow the IEnumIDList to enumerate the current snapshot of results.
Then at least once a second trigger the Explorer to refresh the items
in the view.

Will this work? Any brighter ideas? Thanks!

Pix