An area I have not really explored in Vista is Search – until an ISV just asked me “how can I work with Vista search”. The opportunity with Windows Vista is described nicely in our Top 10 Ways to Light Up Your Windows Vista Apps. The challenge for an ISV right now is simple enough – the betas of the Windows SDK do not contain documentation on how to actually make use of these great capabilities and we are shipping native apis with Vista, not managed code APIs. I would be the first to admit this feels odd – one of the top 10 asks we make for Vista development has next to no documentation. After a little digging I can see that we have been changing the APIs/syntax between CTPs and whilst we are close, we are not yet 100% there and hence we have been holding off on the documentation. My recommendation is therefore to wait just a little longer before attempting to code up this stuff – but there is still plenty you can take a look at in the meantime.
Summary of Opportunities
- Issue Queries: Applications can issue queries against Windows Vista search engine using the OLE DB Provider for Windows Search. Vista includes Windows Desktop Search V3. WDS v3 will also be available for Windows XP.
- Use Common File Dialogs: Applications should use the Common File Dialogs to prompt users for opening and saving files to provide a uniform experience around search and metadata (Vista Bridge sameples show how to do this from managed code http://windowssdk.msdn.microsoft.com/en-us/library… )
- Embed the Explorer: Applications can use the Windows Explorer and Namespace Explorer controls to provide users with the same search folder, grouping, and stacking experience as in the shell.
- Expose Custome File Formats to Search and/or Oganize: Applications with custom file formats can integrate with the Windows Vista visualization, organization, and search functionalities through the following extensibility mechanisms:
- Add MetaData to Files: Property Handlers enable metadata support for custom file formats.
- Allow Full Text Search of Files: Full-text search can be enabled for custom file formats by implementing the IFilter interface.
- Provide Read Only Preview: Preview handlers provide a rich, interactive, read-only preview when a file is selected in the Windows Vista Document Explorer.
- Provide Custome Handlers: Protocol Handlers provide support for custom protocols. For example, to support RSS or an Image Server.
Other Useful Resources
The following would be useful:
- http://addins.msn.com/devguide.aspx This is the developer guide for WDS 2.0. Stuff will change with 3.0 – but a useful place to start.
- https://channel9.msdn.com/wiki/default.aspx/Channel… More info on enabling search for custome file formats using IFilters (Wiki on Channel 9)
- http://www.codeproject.com/csharp/MSNDesktopSearch… WDS 2.0 sample
- http://www.codeproject.com/csharp/desktopsearch1.a… Another WDS 2.0 Sample
- http://support.microsoft.com/kb/917013 Brief notes on WDS3.0 Engine Preview
- http://www.microsoft.com/downloads/details.aspx?fa… Download of WDS3 Engine (2nd May 2006)
- http://brandonlive.com/category/desktop-search/ Blog from one of the dev team
- http://blogs.msdn.com/cheller/archive/2006/06/21/6… Catherine on search syntax with WDS 3.0
- http://blogs.msdn.com/cheller/archive/2006/06/27/6… Catherine on predicates for search with WDS 3.0
PDC 2005 included a number of sessions in this area. The online streaming media has now been removed – but the session ppts you are looking for are:
- DAT307: Windows Vista: Exploiting New Capabilities for Search and Organization
- PRS310: Windows Vista: Extending Explorer by Providing Metadata, Rich Previews and Thumbnails for Your File Types
- OFF320: Developing with Microsoft Office System Search Technology
- DATL03: Tips, Tricks & Hacks to MSN Search and Desktop Search Platforms
- DAT322: MSN Search: Building Web and Desktop Search into Your Applications
They can be found at http://commnet.microsoftpdc.com/content/downloads….