<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://wdstech.spaces.live.com/mmm2008-05-17_13.22/rsspretty.aspx?rssquery=en-US;http%3a%2f%2fwdstech.spaces.live.com%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Windows Desktop Search - Tech</title><description /><link>http://WDSTech.spaces.live.com/</link><language>en-US</language><pubDate>Wed, 23 Jul 2008 02:01:44 GMT</pubDate><lastBuildDate>Wed, 23 Jul 2008 02:01:44 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><live:identity><live:id>4888996988192148582</live:id><live:alias>WDSTech</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>Adding new search "locations" to Windows Desktop Search...</title><link>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!160.entry</link><description>&lt;div&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;I’ve been hoping that someday I’d actually have a short post to make on my blog about something Windows Desktop Search (WDS) related… But today isn’t that day…&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;We’ve been hearing some requests that users would like to add new locations to the “All Locations” list in WDS.  Maybe something like this:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial color=navy size=2&gt;&lt;span style="font-size:10pt;color:navy;font-family:Arial"&gt;&lt;img src="http://storage.msn.com/x1p4OO6hH5ZQDGz3qVct5DO-M-BfnYDGOxHql3TWv61ARRpsQ_9sxsfJSHE75gWCXy80ITsroNZIVqHJGMHwGLTNxMc1GqmLvH8XJORatNro6M1LCqQBHXdrPM-hpdN0B5_FuvW4HUQ1Qc8QIx0T1TDvg"&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;So that when you type in a query and select this added location you get navigated to a set of web search results like this:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial color=navy size=2&gt;&lt;span style="font-size:10pt;color:navy;font-family:Arial"&gt;&lt;img src="http://storage.msn.com/x1p4OO6hH5ZQDGz3qVct5DO-M-BfnYDGOxHql3TWv61ARQEWvvBeQGXkfg5ABo93pzNOP3K28onZs0X8c4_Vf9WG8zcxiIwlUtXOWmM69H0EmXH3ycqcnh6PwJ4FWtVzmDDOBfu3VrWGS97nDLUV562kw"&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;And to be honest the real request we heard was for info about adding new desktop search locations but since we support the adding of both desktop and web search locations to the list I thought I’d unofficially tell you how to add both.  As usual this isn’t an officially supported feature and is likely to change in the future.  But when it does change we’ll most likely have a UI for adding these things but for now you’ll have to add them manually via the registry.  So as a further disclaimer, be comfortable with modifying your registry before making any of these changes.  I’d also recommend you &lt;b&gt;&lt;span style="font-weight:bold"&gt;make a backup of your registry settings before making any modifications to them&lt;/span&gt;&lt;/b&gt;.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;Adding “MSN Music” to your locations list…&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-size:12pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;You’ll want to open RegEdit and navigate “&lt;b&gt;&lt;span style="font-weight:bold"&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSN Apps\DS\Views\Locations”&lt;/span&gt;&lt;/b&gt;.  Under that key you’ll notice a list of sub-keys for each location in the list:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial color=navy size=2&gt;&lt;span style="font-size:10pt;color:navy;font-family:Arial"&gt;&lt;img src="http://storage.msn.com/x1p4OO6hH5ZQDGz3qVct5DO-M-BfnYDGOxHql3TWv61ARS994LFh3l81Osa-BbMOsDRgwsiPRKlL2AJYRFjSsqwKzPuKELhS7sVtw2y9Pi02KDc-YBZiGZaDTwrWxdTzNmQFVFgZjN8nTG6hqjF2z7d3w"&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;As you can from the screenshot I’ve already added a new sub-key called &lt;b&gt;&lt;span style="font-weight:bold"&gt;Music&lt;/span&gt;&lt;/b&gt; for the MSN Music location displayed in my “All Locations” list above.  To add this same location to your list just add a &lt;b&gt;&lt;span style="font-weight:bold"&gt;Music&lt;/span&gt;&lt;/b&gt; sub-key under &lt;b&gt;&lt;span style="font-weight:bold"&gt;Locations&lt;/span&gt;&lt;/b&gt; and add the values you see in the screenshot.  Reboot your machine (or restart Explorer.exe) for the changes to take effect and the next time you launch a WDS results window your “All Locations” list should look just like mine.  Well almost like mine.  Yours won’t have a separator between “MSN Music” and “Outlook Express”.  To get a separator you’ll need to modify the &lt;b&gt;&lt;span style="font-weight:bold"&gt;OE&lt;/span&gt;&lt;/b&gt; sub-key as well:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial color=navy size=2&gt;&lt;span style="font-size:10pt;color:navy;font-family:Arial"&gt;&lt;img src="http://storage.msn.com/x1p4OO6hH5ZQDGz3qVct5DO-M-BfnYDGOxHql3TWv61ARQRYPZJAUNUAFrw_7Un7g2M-7PcdieXTbD3w5NZjSKheyPyxBMw7FeIbBiLwiuH0F6Krofm5LQqbNdRCIyE40dh2TbLort2aZHAomGKRY-w5w"&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Change your &lt;b&gt;&lt;span style="font-weight:bold"&gt;OE&lt;/span&gt;&lt;/b&gt; keys &lt;b&gt;&lt;span style="font-weight:bold"&gt;Separator&lt;/span&gt;&lt;/b&gt; value from a &lt;b&gt;&lt;span style="font-weight:bold"&gt;0&lt;/span&gt;&lt;/b&gt; to &lt;b&gt;&lt;span style="font-weight:bold"&gt;1&lt;/span&gt;&lt;/b&gt;.  This should add the separator to your list after another reboot.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;Understanding the “Locations” registry values…&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;So now I’ll drill into the details of what these seemingly random registry values mean and how you can use them to build a wide range of ready to use filters.  As you’ve noticed we currently support two types of locations, &lt;i&gt;&lt;span style="font-style:italic"&gt;Desktop Search&lt;/span&gt;&lt;/i&gt; and &lt;i&gt;&lt;span style="font-style:italic"&gt;Web Search&lt;/span&gt;&lt;/i&gt;.  The registry values you need to fill out are largely dependant upon the type of location you want.  But there are a few common values used to control the display of the location in the list so let me talk about those first:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Title:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  Display name of the location in the UI.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Icon:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  Resource info for the Icon to show next to the location.  “msnlExtRes.dll,-164” will show the globe with a magnifying glass icon but you should be able to assign any icon you want.  The format of this string is expected to be “&amp;lt;module&amp;gt;,&amp;lt;index&amp;gt;”.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Position:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  The locations order within the list.  &lt;font color=red&gt;&lt;span style="color:red"&gt;It’s super important that the value of Position be &lt;b&gt;&lt;span style="font-weight:bold"&gt;unique and sequential&lt;/span&gt;&lt;/b&gt; for each location starting from 0.&lt;/span&gt;&lt;/font&gt;  So for the 6 entries in the screenshot their Position values are from 0 – 5.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Indent:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  The amount of indention if any to apply to the location.  This is used to represent a tree like structure within the list and can contain a value of 0 – 3.  A value of 0 means it’s a root location, 1 means it’s a child location, 2 means it’s a child of a child location, etc. &lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Separator:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  Inserts a separator line into the list immediately after the location.  A value of 1 means the location is followed by a separator and a value 0 means it isn’t.  Note that you can temporarily hide locations (see Visible) so we’ll try to be smart about automatically rolling up the separators for hidden locations to the next visible one in the list.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Visible:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  Temporarily removes the location from the list if set to a value of 0.  In hind site I wish we would have called this value Hide because its default value is 1 if it’s missing.  So its only purpose is to remove a location from the list.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Type:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  Determines the type of search performed when the location is selected within the UI.  A value of 0 means &lt;i&gt;&lt;span style="font-style:italic"&gt;Desktop Search&lt;/span&gt;&lt;/i&gt; and a value of 1 means &lt;i&gt;&lt;span style="font-style:italic"&gt;Web Search&lt;/span&gt;&lt;/i&gt;.&lt;/span&gt;&lt;/font&gt;&lt;/ul&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;As you’ve probably figured out the locations list is built by simply walking the sub-keys of “&lt;b&gt;&lt;span style="font-weight:bold"&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSN Apps\DS\Views\Locations”&lt;/span&gt;&lt;/b&gt; on first use.  So to begin with you’ll need to add a uniquely named sub-key to this hive and fill out the common values listed above.  If you’re adding a &lt;i&gt;&lt;span style="font-style:italic"&gt;Web Search&lt;/span&gt;&lt;/i&gt; location you’ll need to fill out the following value as well:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Value:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  The URL of the HTTP server to contact when the location is selected.  You can indicate where to insert the URL Encoded terms of the query by inserting a “$w” into the URL.  Note that this is the same URL format as the one used for adding new deskbar shortcuts.&lt;/span&gt;&lt;/font&gt;&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Now anytime you select your new &lt;i&gt;&lt;span style="font-style:italic"&gt;Web Search&lt;/span&gt;&lt;/i&gt; location we’ll navigate to the locations URL using the terms entered into our query box.  For a &lt;i&gt;&lt;span style="font-style:italic"&gt;Desktop Search&lt;/span&gt;&lt;/i&gt; location things are a little more interesting but follow the same principle as a &lt;i&gt;&lt;span style="font-style:italic"&gt;Web Search&lt;/span&gt;&lt;/i&gt; location in that you need to tell us how we should filter your query.  But for &lt;i&gt;&lt;span style="font-style:italic"&gt;Desktop Search&lt;/span&gt;&lt;/i&gt; locations we give you 3 different dimensions to filter the query by:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;ItemStore:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  This is Unique ID (UID) we’ve assigned to the “store” you’d like us to filter results too.  Yes you’ve just discovered the part of all this voted “Most likely to change” in a future release.  Internally we use these things called UID’s to identify the various objects within our schema.  An “ItemStore” is one of the objects in our schema and we currently have 4 (see &lt;b&gt;&lt;span style="font-weight:bold"&gt;UID Values &lt;/span&gt;&lt;/b&gt;section for a list).  Just set this value to the UID of the store you want to search over. &lt;/span&gt;&lt;/font&gt;&lt;font face=Wingdings size=2&gt;&lt;span style="font-size:10pt;font-family:Wingdings"&gt;J&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;TypeFilter:  &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;This is an optional value you can set to filter results to a specific type within a store.  Again this is UID based and the UID’s are for the various “Type” objects within our schema (see &lt;b&gt;&lt;span style="font-weight:bold"&gt;UID Values&lt;/span&gt;&lt;/b&gt; section for a list).  If you omit this value or set it to 0x00000000 we’ll apply the filter to the query without altering the type selection.  That’s why you can select “Outlook” from the locations list and we filter to a new store without change the Type you have selected.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Value:  &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Filters the query by appending a hidden Advanced Query Syntax (AQS) fragment to the query.  Also an optional value but probably the most interesting.  Using this value you can scope the query to anything you want using AQS.  For instance, the “Inbox” location scopes queries the “inbox” folder of the Outlook store by appending the AQS fragment “in:Inbox” to the users query.&lt;/span&gt;&lt;/font&gt;&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Another thing worth talking about is the fact these locations get stored in &lt;b&gt;&lt;span style="font-weight:bold"&gt;HKEY_LOCAL_MACHINE&lt;/span&gt;&lt;/b&gt;.  That means the changes you make to this list of locations will be applied to every user on the machine.  But you can avoid that by copying the entire &lt;b&gt;&lt;span style="font-weight:bold"&gt;Locations&lt;/span&gt;&lt;/b&gt; hive to &lt;b&gt;&lt;span style="font-weight:bold"&gt;HKEY_CURRENT_USER&lt;/span&gt;&lt;/b&gt; and making your changes there.  That way each user can have their own list of locations if they’d like.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;How’s this useful?&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;So hopefully all that made sense and you have a hundred ideas for new locations you want to create.  If so great!  Maybe we’ll even turn it into a supported feature in the future. &lt;/span&gt;&lt;/font&gt;&lt;font face=Wingdings size=2&gt;&lt;span style="font-size:10pt;font-family:Wingdings"&gt;J&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  But if not here are a couple of ideas worth considering:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Personal Favorites:  &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;I originally called this feature “favorites” and you can certainly setup your own list of favorite AQS fragments you end up applying all the time.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;Intranet Locations:&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;  I think the &lt;i&gt;&lt;span style="font-style:italic"&gt;Web Search&lt;/span&gt;&lt;/i&gt; locations are most interesting when thinking about deployments of WDS within organizations.  If you have a large organization with various SPS servers and such you might think about creating a standard list of locations that point to the searchable resources within your org.  You can then save that list off to a &lt;b&gt;&lt;span style="font-weight:bold"&gt;.reg &lt;/span&gt;&lt;/b&gt;file and install it on users machines as part of your deployment.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-weight:bold;font-size:10pt;font-family:Arial"&gt;3&lt;sup&gt;rd&lt;/sup&gt; Party Add-in Locations:  &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;If you’re a 3&lt;sup&gt;rd&lt;/sup&gt; party who’s developed a new protocol handler you can create a location for your protocol handler by scoping to the results view via AQS fragments.  To do this you'd want to append an AQS fragment of the form “store:myph” where &amp;quot;myph&amp;quot; is the name you've assigned to your protocol handler.  The tricky part of this is installing this location automatically on users’ machines.  You could blindly install it at Position 5 within the users location list but then you risk overwriting entries on machines containing modified location lists.  The safest thing to do would be to programmatically walk the users existing location list and install it as the last position on the list but that will require you writing custom code to do that.&lt;/span&gt;&lt;/font&gt;&lt;/ul&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Anyway… There are a couple of ideas and please let me know if you find this useful or have any comments… Enjoy!&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;-Steve&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;UID Values&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" color=blue size=2&gt;&lt;span style="font-size:10pt;color:blue;font-family:'Courier New'"&gt;ItemStore UIDs:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidStoreAny       = 0x30000001&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidStoreFile      = 0x30000002&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidStoreMAPI      = 0x30000003&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidStoreOE        = 0x30000004&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" color=blue size=2&gt;&lt;span style="font-size:10pt;color:blue;font-family:'Courier New'"&gt;TypeFilter UIDs:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeAny                  = 0x10000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeAttachments          = 0x80000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeContact              = 0xA0000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeCommunications       = 0x60000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeEmail                = 0x70000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeCalendar             = 0x90000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeIM                   = 0x160000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeTask                 = 0xB0000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeDocuments            = 0x20000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeTextDoc              = 0x30000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeNote                 = 0xC0000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeSpreadsheet          = 0x40000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypePresentation         = 0x50000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeMusic                = 0x100000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypePictureVideo         = 0xD0000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypePicture              = 0xE0000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeVideo                = 0xF0000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeFolder               = 0x110000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeFavorite             = 0x120000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeProgram              = 0x130000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Courier New" size=2&gt;&lt;span style="font-size:10pt;font-family:'Courier New'"&gt;      uidTypeMultimedia           = 0x140000&lt;font color=green&gt;&lt;span style="color:green"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pMJfkv9XPcrKJa9ibbmbBdE-IjuxQpiOmnsIJTI063Us5Tzju2Yaq2A"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;43D934DB9525CC66&amp;#33;161&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pMJfkv9XPcrKIYQk5138rRgzC_b8EuJOZgouYsU52chhrutul5vIL_g"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;43D934DB9525CC66&amp;#33;162&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pHWzTttKxh2OJl8WG-WJrgre_6x-7L5p3zh6kesAEnD-AMJX7dJbDuw"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;43D934DB9525CC66&amp;#33;165&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pHWzTttKxh2MDi8sCah-TK_Ekt1PGRY3mG6MEcJrWBFi0dXKg2Na-6g"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;43D934DB9525CC66&amp;#33;166&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=4888996988192148582&amp;page=RSS%3a+Adding+new+search+%22locations%22+to+Windows+Desktop+Search...&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=wdstech.spaces.live.com&amp;amp;GT1=WDSTech"&gt;</description><category>Power User</category><comments>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!160.entry#comment</comments><guid isPermaLink="true">http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!160.entry</guid><pubDate>Tue, 02 Aug 2005 08:46:39 GMT</pubDate><slash:comments>29</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://WDSTech.spaces.live.com/blog/cns!43D934DB9525CC66!160/comments/feed.rss</wfw:commentRss><wfw:comment>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!160.entry#comment</wfw:comment><dcterms:modified>2005-08-03T08:53:52Z</dcterms:modified></item><item><title>Updated API's released for Windows Desktop Search 2.5!</title><link>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!146.entry</link><description>&lt;div&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;I had actually wanted to blog a few weeks ago the fact we’ve released some new API’s for WDS as part of our 2.5 release.  I chose to hold off on posting any comments here because I knew we had fairly significant update in the works.  So now that we’ve posted an updated &lt;a href="http://addins.msn.com/support/WDSSDK.zip"&gt;set&lt;/a&gt; of &lt;a href="http://addins.msn.com/support/WDSSample.zip"&gt;files&lt;/a&gt; let me tell you about them.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;The 2.5 release was largely about internationalization for us but we were able to squeeze in some new API’s which we’ve been hearing requests for.  The new API’s provide access to a &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchManager&lt;/span&gt;&lt;/b&gt; component to simplify setup &amp;amp; management of protocol handlers and a &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktop&lt;/span&gt;&lt;/b&gt; component to provide programmatic access to our index.  Both of these components are implemented as COM objects and require WDS 2.5 or later.  The initial SDK we posted contained a single IDL file which required compilation via Visual Studios MIDL utility into a .tlb file before you could do anything useful with it.  And if you wanted to use the SDK from within a .NET application you then needed to run the .tlb generated by MIDL through another utility called TLBIMP which generates an interop assembly that can then be added as a reference to your .NET project.  Easy right?  Well to simplify both your lives and ours (we have to explain this stuff to you) we decided to do this work for you and give it to you in the form of an updated &lt;a href="http://addins.msn.com/support/WDSSDK.zip"&gt;SDK&lt;/a&gt;.  We also talked &lt;a href="http://geekswithblogs.net/bpaddock/"&gt;Brandon Paddock&lt;/a&gt; into putting together a &lt;a href="http://addins.msn.com/support/WDSSample.zip"&gt;sample C# app&lt;/a&gt; to get you started in using the new API’s.  I’m sure Brandon will blog about the sample so I’ll just talk a bit about the files in the SDK and the basic principles behind the API.  Be sure and check out the sample as there’s some cool code in there that enables data binding of a queries results to standard WinForms controls.  I’m also going to save discussions about the &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchManager&lt;/span&gt;&lt;/b&gt; component for another post as there’s enough to talk about with the &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktop&lt;/span&gt;&lt;/b&gt; component.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;What’s in the SDK?&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Good question.  Here’s a list of the files:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;            &lt;u&gt;&lt;font color=green&gt;&lt;span style="color:green"&gt;End user agreement&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;SDK EULA.rtf&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;u&gt;&lt;font face=Arial color=green size=2&gt;&lt;span style="font-size:10pt;color:green;font-family:Arial"&gt;COM Interface definitions &lt;/span&gt;&lt;/font&gt;&lt;/u&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsQuery.idl&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsSetup.idl&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;u&gt;&lt;font face=Arial color=green size=2&gt;&lt;span style="font-size:10pt;color:green;font-family:Arial"&gt;Output of MIDL&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsQuery.tlb&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsQuery.h&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsQuery_i.c&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsQuery_p.c&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsSetup.tlb&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsSetup.h&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsSetup_i.c&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;wdsSetup_p.c&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;u&gt;&lt;font face=Arial color=green size=2&gt;&lt;span style="font-size:10pt;color:green;font-family:Arial"&gt;Output of TLBIMP&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;WDSQuery.dll&lt;/span&gt;&lt;/font&gt;
&lt;p style="text-indent:0.5in"&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;WDSSetup.dll&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;The EULA is mandatory, the .idl files define the COM objects we’re exposing, the files built by MIDL are the files you’ll need if you plan to call the API from C++, and the two .dll’s are the .NET interop assemblies generated after we ran the .tlb’s through TLBIMP.  For .NET developers the two .dll’s are the only files you’ll need to make your applications work.  And in most cases you’ll only need one or the other.  &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;If you create a new C# project and add references to WDSQuery.dll &amp;amp; WDSSetup.dll, you’ll notice from within the Object Browser that two new namespaces are available to your project:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-style:italic;font-family:Arial"&gt;            Microsoft.Windows.DesktopSearch.Query&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;
&lt;p&gt;&lt;i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-style:italic;font-family:Arial"&gt;            Microsoft.Windows.DesktopSearch.Setup&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;If you browse into those namespaces you’ll notice a &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktopClass&lt;/span&gt;&lt;/b&gt; class along with a bunch of ADO stuff in the &lt;i&gt;&lt;span style="font-style:italic"&gt;Microsoft.Windows.DesktopSearch.Query&lt;/span&gt;&lt;/i&gt; namespace and a &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchManagerClass&lt;/span&gt;&lt;/b&gt; class in the &lt;i&gt;&lt;span style="font-style:italic"&gt;Microsoft.Windows.DesktopSearch.Setup&lt;/span&gt;&lt;/i&gt; namespace.  The two classes are interop wrappers around the two COM components we’ve exposed via the SDK.  Like I said above the &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchManager&lt;/span&gt;&lt;/b&gt; component is only relevant to building new protocol handlers so we’ll save that discussion for another time.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;Tell me about the classy SearchDesktopClass class…&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Ok so now I’m just getting corny…  The &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktopClass&lt;/span&gt;&lt;/b&gt; is the class you’ll use to create a connection and issue a query to the indexer.  If you look at the methods exposed by this class you’ll see it’s pretty simple:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;blockquote dir=ltr&gt;
&lt;p&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt;public virtual new &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;Microsoft.Windows.DesktopSearch.Query._Recordset&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteQuery&lt;/span&gt;&lt;/b&gt; ( &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;System.String&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;i&gt;&lt;span style="font-style:italic"&gt;lpcwstrQuery&lt;/span&gt;&lt;/i&gt;&lt;b&gt;&lt;span style="font-weight:bold"&gt; , &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;System.String&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;i&gt;&lt;span style="font-style:italic"&gt;lpcwstrColumn&lt;/span&gt;&lt;/i&gt;&lt;b&gt;&lt;span style="font-weight:bold"&gt; , &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;System.String&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;i&gt;&lt;span style="font-style:italic"&gt;lpcwstrSort&lt;/span&gt;&lt;/i&gt;&lt;b&gt;&lt;span style="font-weight:bold"&gt; , &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;System.String&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;i&gt;&lt;span style="font-style:italic"&gt;lpcwstrRestriction&lt;/span&gt;&lt;/i&gt; )&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt;public virtual new &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;Microsoft.Windows.DesktopSearch.Query._Recordset&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteSQLQuery&lt;/span&gt;&lt;/b&gt; ( &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;u&gt;&lt;font face=Tahoma color=green size=1&gt;&lt;span style="font-weight:bold;font-size:9pt;color:green;font-family:Tahoma"&gt;System.String&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;font face=Tahoma color=black size=1&gt;&lt;span style="font-size:9pt;color:black;font-family:Tahoma"&gt; &lt;i&gt;&lt;span style="font-style:italic"&gt;lpcwstrSQL&lt;/span&gt;&lt;/i&gt; )&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Just two methods of which you’re probably only ever going to call one, &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteQuery()&lt;/span&gt;&lt;/b&gt;.  Why so simple?  It’s a really low level wrapper around the core component used by the UI when it calls the indexer.  The UI and the &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktopClass&lt;/span&gt;&lt;/b&gt; both communicate with the indexer via an OLE-DB Provider exposed off the indexer.  More accurately they both communicate with the indexers OLE-DB provider via ADO so you can think of the &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktopClass&lt;/span&gt;&lt;/b&gt; as a thin wrapper around ADO calls to the indexer which is why results come back as an ADO recordset.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Such low level access to the indexer has PRO’s and CON’s.  The PRO’s are that it’s fast and you can pretty much ask for anything you want.  The CON is that since you can ask for pretty much anything you want you have to first know what it is that you want. :)  Which leads into my explanation of the differences between &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteQuery()&lt;/span&gt;&lt;/b&gt; and  &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteSQLQuery()&lt;/span&gt;&lt;/b&gt;.  Let’s start with &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteSQLQuery()&lt;/span&gt;&lt;/b&gt;.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;Calling SearchDesktopClass.ExecuteSQLQuery()&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;The &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteSQLQuery()&lt;/span&gt;&lt;/b&gt; method is pretty much a direct call to the indexers OLE-DB provider via ADO.  The only thing we’ve done is hidden some connection setup details from you.  It wants as an argument the complete SQL statement that should be evaluated by the indexer.  Here’s the SQL generated when you query for “test query” and don’t filter to a specific type:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;blockquote dir=ltr&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;SELECT DocFormat, Url, HasAttach, Characterization, PerceivedType, IsDeleted, WorkID, IsAttachment, ConversationID, FileExt, Rank, DocTitlePrefix, DocTitle, FlagText, IsFlagged, Create, DueDate, Importance, ToName, CcName, AttachmentNames, DocCompany, Location, DocCategory, DocKeywords, MusicAlbum, FileName, MusicGenre, DocAuthor, PrimaryDate, Size, FileExtDesc, DisplayFolder, PrimaryTelephone, EmailAddress, EndDate, Location, DueDate, TaskStatus, MusicAlbum, MusicGenre, DocComments, DocKeywords, AudioAvgDataRate, DocComments FROM &amp;quot;MyIndex&amp;quot;..scope() WHERE CONTAINS(*,'&amp;quot;test*&amp;quot;',1033) AND CONTAINS(*,'&amp;quot;query*&amp;quot;',1033) ORDER BY PrimaryDate DESC&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Here’s another example of the same query, “test query” but filtered to only show e-mails:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;blockquote dir=ltr&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;SELECT DocFormat, Url, HasAttach, Characterization, PerceivedType, IsDeleted, WorkID, IsAttachment, ConversationID, FileExt, Rank, DocAuthor, FromName, DocTitlePrefix, DocTitle, Importance, IsFlagged, IsFlaggedCompleted, FlagText, DueDate, AttachmentNames, BccName, CcName, ToName, People, DocCategory, ReceivedDate, PrimaryDate, FromAddress, ToAddress, CcAddress, BccAddress, Size, DisplayFolder FROM &amp;quot;MyIndex&amp;quot;..scope() WHERE CONTAINS(*,'&amp;quot;test*&amp;quot;',1033) AND CONTAINS(*,'&amp;quot;query*&amp;quot;',1033) AND (Contains(PerceivedType,'email') RANK BY COERCION(Absolute, 1000)) ORDER BY ReceivedDate DESC&lt;/span&gt;&lt;/font&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;These guys look a little overwhelming but they’re not too bad once you understand them.  If you look closely at these two expressions you’ll notice two differences; 1) some of the columns are different because we’ve figured out you’re querying for e-mails and we might want to show those specialized columns to you. And 2) The WHERE clause has changed to accommodate the added constraint need to only return e-mail’s.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;So how do you know what to put in your SQL expression?  Well for the columns you just have to know which ones you want.  We don’t have them documented yet because they’re not stable enough to say “We’re going to support these forever!”  But check out the &lt;a href="http://addins.msn.com/support/WDSSample.zip"&gt;sample app&lt;/a&gt; and the examples above for a good starter list and I’ll also try to post some additional sample SQL queries in the near future that call out additional columns.  Just be aware that some of them most likely WILL CHANGE in the future. At any rate the columns is a fairly manageable portion of the expression but the WHERE clause is another story.  &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;The sample WHERE clauses above are relatively tame because the original query text didn’t contain any &lt;a href="http://search.msn.com/docs/toolbar.aspx?t=MSNTbar_PROC_CompleteSearchSyntax.htm"&gt;Advanced Query Syntax (AQS)&lt;/a&gt;.  Once you start adding AQS to the mix your WHERE clauses can get messy in a hurry.  To help you out of this jam we added the &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteQuery()&lt;/span&gt;&lt;/b&gt; method.  Remember how I said that’s the only method you’ll ever want to call. :)&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;Calling SearchDesktopClass.ExecuteQuery()&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;The &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteQuery()&lt;/span&gt;&lt;/b&gt; method implements the proper logic for building a well formed SQL expression before calling the indexers OLE-DB provider via ADO.  ExecuteQuery() takes the following arguments:&lt;/span&gt;&lt;/font&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-style:italic;font-family:Arial"&gt;pcwstrQuery&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;:  This is the text of the users query which MAY contain AQS expressions.  The query will be parsed and converted into a WHERE clause to be passed as part of the SQL expression passed to the indexer.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-style:italic;font-family:Arial"&gt;lpcwstrColumn&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;:&lt;b&gt;&lt;span style="font-weight:bold"&gt;  &lt;/span&gt;&lt;/b&gt;This is a list of 1 or more columns you want retrieved from the indexer.  This is the SELECT portion of the SQL expression.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-style:italic;font-family:Arial"&gt;lpcwstrSort&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;:  This is the column you want the results ordered by.  This directly becomes the ORDER BY clause so you’ll need to pass it in as “RecievedDate DESC” or “ReceivedDate ASC”.  This value must be explicitly set to &lt;font color=blue&gt;&lt;span style="color:blue"&gt;null&lt;/span&gt;&lt;/font&gt; if you don’t want the results sorted.&lt;font color=red&gt;&lt;span style="color:red"&gt;  Due to a bug in 2.5 passing an empty string (“”) will cause the method to fail.&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;font color=red&gt;&lt;span style="color:red"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-style:italic;font-family:Arial"&gt;lpcwstrRestriction&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;:  This is any optional constraint you want appended to the SQL expressions WHERE clause.  Why do you need this?  It let’s you filter the results to a particular type without have to append the AQS expression of “type:email” to the users query.  To constrain the results to email you’d pass in “Contains(PerceivedType,'email')”. This value must also be explicitly set to &lt;font color=blue&gt;&lt;span style="color:blue"&gt;null&lt;/span&gt;&lt;/font&gt; if you don’t want any additional constraint applied.&lt;font color=red&gt;&lt;span style="color:red"&gt;  Due to a bug in 2.5 passing an empty string (“”) will cause the method to fail.&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/ul&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;As you can see, calling ExecuteQuery() is a lot simpler then calling ExecuteSQLQuery() even though it takes more arguments.  The only thing special you still need to know is the list of columns you want returned.  But watch this and other blogs for updates to the unofficial list of columns currently supported in 2.5.&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;b&gt;&lt;font face=Arial size=3&gt;&lt;span style="font-weight:bold;font-size:12pt;font-family:Arial"&gt;Final tips…&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;In summary we can’t wait to see what cool tools you guys build using the new API’s.  Check out the &lt;a href="http://addins.msn.com/support/WDSSample.zip"&gt;sample&lt;/a&gt; and use that as a starting point.  And here are a couple of final tips for now:&lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;ul&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Create a new &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktopClass&lt;/span&gt;&lt;/b&gt; instance for every query.  There shouldn’t be any leaks when reusing an existing &lt;b&gt;&lt;span style="font-weight:bold"&gt;SearchDesktopClass&lt;/span&gt;&lt;/b&gt; but in the UI we create a new instance for every query so I’d recommend you do to as this will be the most tested usage pattern.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Don’t pass empty strings (“”) in any of the arguments to &lt;b&gt;&lt;span style="font-weight:bold"&gt;ExecuteQuery()&lt;/span&gt;&lt;/b&gt; at least for 2.5.  Pass &lt;font color=blue&gt;&lt;span style="color:blue"&gt;null&lt;/span&gt;&lt;/font&gt; instead as there is a known bug related to passing empty strings.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;The data binding stuff in the sample is &lt;i&gt;&lt;span style="font-style:italic"&gt;super cool&lt;/span&gt;&lt;/i&gt;!  But when dealing with really large results sets it may not be super efficient as the entire result set has to be copied to a .NET DataTable object before use.  For ultimate speed you’ll have to stick with using the raw ADO recordset we return but you should at least give the data binding stuff a shot and see if you’re happy with the perf.&lt;/span&gt;&lt;/font&gt;
&lt;li&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;Give us &lt;a href="http://www.microsoft.com/communities/newsgroups/en-us/default.aspx?dg=microsoft.public.msn.search&amp;amp;cat=en-us-msn&amp;amp;lang=en&amp;amp;cr=US"&gt;feedback&lt;/a&gt;!  Lots and lots of feedback.  We are listening…&lt;/span&gt;&lt;/font&gt;&lt;/ul&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt;-Steve&lt;/span&gt;&lt;/font&gt;&lt;font face=Arial size=2&gt;&lt;span style="font-size:10pt;font-family:Arial"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=4888996988192148582&amp;page=RSS%3a+Updated+API's+released+for+Windows+Desktop+Search+2.5!&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=wdstech.spaces.live.com&amp;amp;GT1=WDSTech"&gt;</description><category>SDK</category><comments>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!146.entry#comment</comments><guid isPermaLink="true">http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!146.entry</guid><pubDate>Sat, 09 Jul 2005 03:48:39 GMT</pubDate><slash:comments>13</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://WDSTech.spaces.live.com/blog/cns!43D934DB9525CC66!146/comments/feed.rss</wfw:commentRss><wfw:comment>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!146.entry#comment</wfw:comment><dcterms:modified>2005-07-09T05:04:10Z</dcterms:modified></item><item><title>Customizing the Stock Previews</title><link>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!139.entry</link><description>&lt;p&gt;&lt;font face="Times New Roman" size=3&gt;Ok so I thought I’d get the ball rolling by talking about how you can customize the item previews displayed in the large search results UI.  This is a big topic which isn’t easily covered by a single post so I thought I’d first talk broadly about how the previews work and how to perform basic modifications.  In future posts I can drill into more details if there’s interest.  But before any of that I need to throw out a disclaimer:&lt;/font&gt; &lt;p&gt;&lt;i&gt;&lt;font face="Times New Roman" size=3&gt;Modifying the previews shipped with Windows Desktop Search is not a supported feature.  Any new previews you build will not be guaranteed to work in future versions of the product.  The documentation that follows should be considered “unofficial” at best.&lt;/font&gt;&lt;/i&gt; &lt;p&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Preview Selection&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;The first topic I should touch on is how the appropriate preview gets chosen when a user selects an item.  When a new item is selected, the first thing the preview pane does is it identifies what type of previewer it’s going to display.  It currently only has two choices, the &lt;i&gt;folder previewer&lt;/i&gt; or the &lt;i&gt;content previewer&lt;/i&gt;.  The folder previewer is chosen if the item is a file system folder and is simply a shell view over the contents of the folder.  All other items get mapped to the content previewer which is an embedded WebBrowser control.  At this point we’re only interested in items mapped to the content previewer because they’re the only ones we can modify. &lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;Once an item has been mapped to the content previewer it then goes through a second round of analysis to see what type of content should actually be displayed for the item.  This decision process is driven by the registry which means you can modify the registry to influence most of the preview selection decisions made.  Open RegEdit and look for the key:&lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt; &lt;i&gt;HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers &lt;/i&gt;&lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;You’ll notice a few values and a set of 3 sub-keys &lt;i&gt;Extension&lt;/i&gt;, &lt;i&gt;PerceivedType&lt;/i&gt;, and &lt;i&gt;Default&lt;/i&gt;.  Let’s start with the sub-keys.  The contents of those 3 keys are used to determine what preview an item gets and I’ve listed them in the order in which they get consulted.  The previewer first gets the file extension of the item being previewed (if any) and tries to find a sub-key under the Extensions key.  If a sub-key is found preview selection stops and the values of the found key are used to drive preview generation.  If no extension key is found then selection moves on to type based selection.  Every item in the index has, or at least should have, a value called its perceived type.  The perceived type of an item is the value used to tie it to the type filters displayed within the UI and it’s also the value used to tie the item a type wide preview.  So for type based selection we simply get the items perceived type and look for a sub-key of the same name under the PerceivedType key.  Once found preview selection stops and the values of the found key are used to drive preview generation.  If the item has no perceived type or the perceived type isn’t found then the value of the Default key is chosen and selection stops anyway.&lt;/font&gt; &lt;p&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Preview Generation&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;So the items been mapped to a key within the registry but what do the values mean?  We’ll those values bind the previewer to a COM based plug-in that knows how to generate preview content for the item.  The content generated by the plug-in can be essentially anything render-able by IE.  We currently ship with 3 preview plug-ins and the COM interface they implement isn’t public so you can’t add any new ones.  So why are we talking about customizing the previews then?  Because one of those plug-ins is pretty special…&lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;If you were to look through all of the previewer keys you’d not two recurring patterns.  The keys either contain a single &lt;i&gt;default value&lt;/i&gt;, one of two GUID’s.  Or they contain no &lt;i&gt;default value&lt;/i&gt; but several &lt;i&gt;named values&lt;/i&gt;.  The keys with one of the two GUID’s map the items preview to either the Native (“{015CA7C6-DECD-40dc-AAAC-73EA9940E0F9}”) or Office (“{7A35A3A8-3DEA-40e5-B2AA-21DEF91A219A}”) Previewer plug-ins.  Of those two the Native Previewer is the most interesting because it acts as a pass through for the items URL.  When an item is bound to this preview we simply navigate our embedded WebBrowser to the URL of the item which is useful for items that IE already does a good job of rendering like PDFs.  Even more interesting are the keys without a GUID because they get mapped to a special internal previewer called the Registry Based Previewer. &lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;The Registry Based Previewer turns preview creation into an authoring process by generating preview content on the fly from HTML templates containing a set of ASP’ish (read NOT ASP) macros.  The remaining bulk of this post will talk about the structure of these templates but first let me break down the registry entries that control what template is used and how it’s rendered.  Looking at:&lt;/font&gt; &lt;p&gt;&lt;i&gt;&lt;font face="Times New Roman" size=3&gt;HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\contact&lt;/font&gt;&lt;/i&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;We see the values:&lt;/font&gt; &lt;blockquote dir=ltr&gt; &lt;p&gt;&lt;i&gt;&lt;font face="Times New Roman" size=3&gt;(Default):&lt;/font&gt;&lt;/i&gt; &lt;p&gt;&lt;i&gt;&lt;font face="Times New Roman" size=3&gt;ContentType:  0x00000001 (1)&lt;/font&gt;&lt;/i&gt; &lt;p&gt;&lt;i&gt;&lt;font face="Times New Roman" size=3&gt;ScriptOK:        0x00000001 (1)&lt;/font&gt;&lt;/i&gt; &lt;p&gt;&lt;i&gt;&lt;font face="Times New Roman" size=3&gt;TemplateUrl:  res://msnlExt.dll/contact.htm&lt;/font&gt;&lt;/i&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;The blank value for &lt;i&gt;(Default)&lt;/i&gt; is what maps this items preview to the Registry Based Previewer.  The &lt;i&gt;ContentType&lt;/i&gt; value controls the type of content generated by the previewer and can be either 0 for HTML or 1 for MSHTML.  I’d recommend you always use 1 as it’s the most flexible and most tested.  The &lt;i&gt;ScriptOK&lt;/i&gt; value is used to override one of the security decisions we make based upon what store the item we’re previewing lives in.  If the item resides on your hard-drive it’s partially trusted so we let script execute by default.  But if the item lives anywhere else like say Outlook or OE we treat it as un-trusted and disable script execution by default.  The &lt;i&gt;ScriptOK&lt;/i&gt; value lets us re-enable script execution on a per type basis.  Security is deep topic worthy of its own post but I should also point out at this time that we NEVER let ActiveX controls execute and there’s currently no way to override that decision.  Finally, the TemplateUrl value specifies the actual template to use when generating the preview content.  As you can see, all of our templates get pulled from a resource dll but you can change these values to point to a file on the users hard-drive which is the key to replacing the stock previews with custom ones!&lt;/font&gt; &lt;p&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Creating new Preview Templates&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;Probably the easiest way to figure out how to customize the previews is to dive in and start changing them.  You’ll notice that I’ve posted several listing which should act as a good starting point for your adventures.  Before you download and install any of the listings you need to be very sure that this is something you want to explore.  You’ll need to be comfortable working with HTML and modifying the registry.  Executing the &lt;a href="http://spaces.msn.com/members/WDSTech/Blog/cns!1p0tYOH23YIjQaVyUIcoDDIA!137.entry"&gt;UseDebugPreviews.reg&lt;/a&gt; command will replace all of you’re type based previews (meaning most of them) with a new &lt;a href="http://spaces.msn.com/members/WDSTech/Blog/cns!1p0tYOH23YIjQaVyUIcoDDIA!138.entry"&gt;Debug.htm preview&lt;/a&gt; that dumps out most of the available properties within a given view.  I’ve also provided a &lt;a href="http://spaces.msn.com/members/WDSTech/Blog/cns!1p0tYOH23YIjQaVyUIcoDDIA!135.entry"&gt;UseStockPreviews.rgs&lt;/a&gt; command which should roll everything back to stock but I can’t provide any warranties for any of this so USE AT YOUR OWN RISK!&lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;After you’ve downloaded all 3 of the listings you’ll want to run the UseDebugPreviews.reg command to update the registry to use Debug.htm as the preview template for all type wide previews.  There’s an assumption made in UseDebugPreviews.reg that Debug.htm is located in the root of your C-Drive so you’ll need to modify that file if that’s not the case.  It’s very important that Debug.htm is saved as a UTF-8 encoded file.  The macro replacement done by the Registry Based Previewer will not work if you save the file as Unicode which is the default for Notepad.exe.  You’ll also need to either reboot your machine or kill/restart Explorer.exe to get the new previews to take effect.  It’s worth noting at this point that changes made to an already mapped preview template do not require a reboot.  In fact you can modify your template and simply select another item from the results list to see your changes take effect which is nice.  &lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;So once you have Debug.htm installed you should try some queries out and notice what properties are available to your previews in what views.  I said above that Debug.htm will show you MOST of the properties available because some of the views like contacts have a ton of properties.  There are around 200 total but not all of the properties for an item are available in every view.  For instance when an item is displayed in the Contacts view it has a rich set of properties available.  But that same item displayed in the Communications or Everything view has only a subset of its total properties available.  The Debug.htm preview displays the availability of the properties that can be shown for an item no matter what view its in and is therefore quite useful.&lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;Another thing you might notice while browsing around is that image previews still get mapped to the stock image previewer.  That’s because that mapping is done on a per extension basis and UseDebugPreviews.reg only updates the type wide previews.  To map an extension say .JPG you’ll need to modify the registry by hand.  Change the &lt;i&gt;TemplateUrl&lt;/i&gt; value of &lt;i&gt;HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\Extension\.jpg&lt;/i&gt; to “c:\debug.htm” and re-boot.  The previews of .JPG items should now map to the debug preview.&lt;/font&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;&lt;/font&gt;  &lt;p&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Understanding Preview Templates&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;Without getting into too much depth I’ll give you an overview of the templates and the macros we currently support.  The templates themselves are just UTF-8 encoded HTML files with some special macros added in the form of &lt;b&gt;&amp;lt;%cmd:property%&amp;gt;.&lt;/b&gt;  At preview generation time the template along with the meta data of the currently selected item gets run through a transform engine to generate a valid HTML file for rendering within the Content Previewers embedded WebBrowser control.  Most of the macros are about inserting the dynamic values of the currently selected item but there are a few control commands as well.  Here’s a quick list of the major (but not all) commands:&lt;/font&gt; &lt;ul&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&amp;lt;%if:{property}%&amp;gt;&lt;/b&gt;, &lt;b&gt;&amp;lt;%else%&amp;gt;&lt;/b&gt;, and &lt;b&gt;&amp;lt;%endif%&amp;gt;&lt;/b&gt; commands.  These commands let you include or exclude a block of code based upon the availability of a property for an item.  For instance contact have don’t have a MusicAlbum property so you can conditionally display HTML specific to music albums by placing it between “&lt;b&gt;&amp;lt;%if:MusicAlbum%&amp;gt;&lt;/b&gt;Only shown if &amp;lt;b&amp;gt;MusicAlbum&amp;lt;/b&amp;gt; exists.&lt;b&gt;&amp;lt;%endif%&amp;gt;”&lt;/b&gt; commands.&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&amp;lt;%ifValue:{property}%&amp;gt; &lt;/b&gt;command is an extension to the &amp;lt;%if:{property}%&amp;gt; command that also checks to make sure a property has an actually value before including a fragment of HTML.&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&amp;lt;%value:{property}%&amp;gt;&lt;/b&gt; command injects that properties value into the output HTML.  Things like quotes &amp;amp; ampersands get escaped out so its safe to place quotes around this content for passing as an argument to a JavaScript routine.&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&amp;lt;%title:{property}%&amp;gt;&lt;/b&gt; command injects the label of the property into the HTML.  This helps to make sure the column names used in your preview match those used in the results list view.&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&amp;lt;%url:{property}%&amp;gt;&lt;/b&gt; command is an interesting one.  If you recall I recommended you always specify MSHTML as the content type generated by the Regsitry Based Previewer.  When you do that the output from the previewer is a dynamically built multi-part MIME file.  So why do we do that?  Well for items that live in a store like Outlook we sometimes need to render content that doesn’t physically exist as a file on the hard-drive, like say an image sent as an attachment.  Well we still want to be able to preview those items so what we do is embed them as part of the MSHTML file we’re building.  Now from an authoring perspective you want to be able to write an image preview that can preview images that exist either on your hard-drive or within Outlook and the &lt;b&gt;&amp;lt;%url:url%&amp;gt;&lt;/b&gt; command lets you do just that.  Take a look at Debug.htm and notice that we use this command to populate the &lt;i&gt;src&lt;/i&gt; attribute of an &lt;i&gt;&amp;lt;img /&amp;gt;&lt;/i&gt; tag.  If the item is a physical file within the file system you’ll get back the URL for the item but if it’s an item within Outlook, the item gets embedded as a part of MSHTML file being built and you get back a relevant URL to the added part.  The &lt;b&gt;&amp;lt;%url:characterization%&amp;gt;&lt;/b&gt; command is another useful one when passed as the &lt;i&gt;src&lt;/i&gt; of an &lt;i&gt;&amp;lt;iframe /&amp;gt;&lt;/i&gt; because it embeds the body of any Outlook item and returns a URL to the linked content.  For non Outlook items you get back the first 1k or so of text from the item.&lt;/div&gt;&lt;/ul&gt; &lt;p&gt;&lt;font face="Times New Roman" size=3&gt;There are a few other interesting commands but I won’t dive into them at this point.  This is more then enough to get you started.  Just use Debug.htm as a starting point and be sure to send me a link to any interesting previews you come up with.&lt;/font&gt; &lt;p&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Important Notes and Tips&lt;/font&gt;&lt;/b&gt; &lt;ul&gt; &lt;li&gt; &lt;div&gt;&lt;font face="Times New Roman" size=3&gt;There’s no way to map the preview for a file system folder to a content previewer.&lt;/font&gt;&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;font face="Times New Roman" size=3&gt;All preview templates MUST be saved as UTF-8 encoded files.&lt;/font&gt;&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;font face="Times New Roman" size=3&gt;You shouldn’t reference a property using &lt;b&gt;&amp;lt;%url:{property}%&amp;gt;&lt;/b&gt; more than once per template.  This cause the property to get embedded multiple times and for e-mail bodies you may get some other weirdness.&lt;/font&gt;&lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Tip:&lt;/font&gt;&lt;/b&gt;  Use the View Source content menu option off the preview panes browser to see the HTML being generated by your template. &lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Tip:&lt;/font&gt;&lt;/b&gt; You can view the stock templates using IE.  You’ll need to first do a search so the WDS results view is displayed.  Then you can past the “res:” URL of the template you want to view into IE’s address bar.  IE should then display a malformed HTML page.  Do a View Source from within IE to view the template. &lt;/div&gt; &lt;li&gt; &lt;div&gt;&lt;b&gt;&lt;font face="Times New Roman" size=3&gt;Tip: &lt;/font&gt;&lt;/b&gt;You can find the MSHTML file for the current preview under the “%temp%\msnl” directory.  If something isn’t rendering the way you think it should make sure IE renders the raw preview file correctly before blaming the preview pane.  Then let us know. &lt;font face=Wingdings&gt;J&lt;/font&gt;&lt;/div&gt;&lt;/ul&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt; &lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=4888996988192148582&amp;page=RSS%3a+Customizing+the+Stock+Previews&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=wdstech.spaces.live.com&amp;amp;GT1=WDSTech"&gt;</description><category>Previews</category><comments>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!139.entry#comment</comments><guid isPermaLink="true">http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!139.entry</guid><pubDate>Sun, 12 Jun 2005 22:03:00 GMT</pubDate><slash:comments>29</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://WDSTech.spaces.live.com/blog/cns!43D934DB9525CC66!139/comments/feed.rss</wfw:commentRss><wfw:comment>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!139.entry#comment</wfw:comment><dcterms:modified>2005-06-13T01:28:16Z</dcterms:modified></item><item><title>Listing 1:  Debug.htm</title><link>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!138.entry</link><description>&lt;div&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;To create the Debug.htm file copy everything below the “&lt;b&gt;—copy—&lt;/b&gt;“ line into an empty Notepad.exe document.  Then save the document AS UTF-8 to “c:\Debug.htm”&lt;/font&gt;&lt;font face=Arial color=navy size=2&gt;.  &lt;/font&gt;&lt;b&gt;&lt;font face=Arial color=red size=2&gt;The saved file MUST be UTF-8 encoded.&lt;/font&gt;&lt;/b&gt;&lt;font face=Arial color=navy size=2&gt;   &lt;/font&gt;&lt;font face=Arial size=2&gt;Use Notepads &lt;b&gt;Save As&lt;/b&gt; feature to do this because the default for Notepad is to save as Unicode which won’t work.&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;b&gt;&lt;font face=Arial color=black size=2&gt;—copy—&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;lt;html&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;   &amp;lt;head&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;!-- Template: debug.htm --&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;meta http-equiv=&amp;quot;content-type&amp;quot; content=&amp;quot;text/html; charset=UTF-8&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;style&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            .debug-group       { font-family: tahoma; font-size: 12pt; border: 1px solid #7EB6F0; background-color: #2765AB; color: #FFFFFF; }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            .debug-row-header  { font-family: tahoma; font-size: 10pt;background-color: #FFFFFF; color: green; }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        .debug-row-hidden  { font-family: tahoma; font-size: 8pt; background-color: #EEF4FB; color: black; }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        .debug-row         { font-family: tahoma; font-size: 8pt; background-color: #FFFFFF; color: black; }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            .debug-cell-header { border-bottom: 1px solid #7EB6F0; }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        .debug-cell        { border-bottom: 1px solid #7EB6F0; }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;/style&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;script&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        function AddHiddenRow( prop, title, value )&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        {&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;tr class=&amp;quot;debug-row-hidden&amp;quot;&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;td class=&amp;quot;debug-cell&amp;quot;&amp;gt;' + prop + '&amp;lt;/td&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;td class=&amp;quot;debug-cell&amp;quot;&amp;gt;' + title + '&amp;amp;nbsp;&amp;lt;/td&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;td class=&amp;quot;debug-cell&amp;quot;&amp;gt;' + value + '&amp;amp;nbsp;&amp;lt;/td&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;/tr&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        function AddRow( prop, title, value )&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        {&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;tr class=&amp;quot;debug-row&amp;quot;&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;td class=&amp;quot;debug-cell&amp;quot;&amp;gt;' + prop + '&amp;lt;/td&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;td class=&amp;quot;debug-cell&amp;quot;&amp;gt;' + title + '&amp;amp;nbsp;&amp;lt;/td&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;td class=&amp;quot;debug-cell&amp;quot;&amp;gt;' + value + '&amp;amp;nbsp;&amp;lt;/td&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;           document.write('&amp;lt;/tr&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;        }&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;/script&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;   &amp;lt;/head&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;   &amp;lt;body leftmargin=&amp;quot;0&amp;quot; topmargin=&amp;quot;0&amp;quot; marginwidth=&amp;quot;0&amp;quot; marginheight=&amp;quot;0&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;!-- First we'll dump out the available properties --&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;br&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;div align=&amp;quot;center&amp;quot; style=&amp;quot;width: 100%; padding: 0px 15px 0px 15px;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;         &amp;lt;div class=&amp;quot;debug-group&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;width: 100%; height=100%;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;div style=&amp;quot;padding: 5px 5px 5px 5px;&amp;quot;&amp;gt;Item properties&amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;div style=&amp;quot;overflow: auto; width: 100%;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;               &amp;lt;table border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                  &amp;lt;tr class=&amp;quot;debug-row-header&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;td class=&amp;quot;debug-cell-header&amp;quot; width=&amp;quot;100&amp;quot;&amp;gt;Property&amp;lt;/td&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;td class=&amp;quot;debug-cell-header&amp;quot; width=&amp;quot;100&amp;quot;&amp;gt;Title&amp;lt;/td&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;td class=&amp;quot;debug-cell-header&amp;quot;&amp;gt;Value&amp;lt;/td&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                  &amp;lt;/tr&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                  &amp;lt;script&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocFormat%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('DocFormat', '&amp;lt;%title:DocFormat%&amp;gt;', '&amp;lt;%value:DocFormat%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:Url%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('Url', '&amp;lt;%title:Url%&amp;gt;', '&amp;lt;%value:Url%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:HasAttach%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('HasAttach', '&amp;lt;%title:HasAttach%&amp;gt;', '&amp;lt;%value:HasAttach%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:PerceivedType%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('PerceivedType', '&amp;lt;%title:PerceivedType%&amp;gt;', '&amp;lt;%value:PerceivedType%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:IsDeleted%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('IsDeleted', '&amp;lt;%title:IsDeleted%&amp;gt;', '&amp;lt;%value:IsDeleted%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:WorkID%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('WorkID', '&amp;lt;%title:WorkID%&amp;gt;', '&amp;lt;%value:WorkID%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:IsAttachment%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('IsAttachment', '&amp;lt;%title:IsAttachment%&amp;gt;', '&amp;lt;%value:IsAttachment%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:ConversationID%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('ConversationID', '&amp;lt;%title:ConversationID%&amp;gt;', '&amp;lt;%value:ConversationID%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:FileExt%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddHiddenRow('FileExt', '&amp;lt;%title:FileExt%&amp;gt;', '&amp;lt;%value:FileExt%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:Rank%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('Rank', '&amp;lt;%title:Rank%&amp;gt;', '&amp;lt;%value:Rank%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocTitlePrefix%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DocTitlePrefix', '&amp;lt;%title:DocTitlePrefix%&amp;gt;', '&amp;lt;%value:DocTitlePrefix%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocTitle%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DocTitle', '&amp;lt;%title:DocTitle%&amp;gt;', '&amp;lt;%value:DocTitle%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocAuthor%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DocAuthor', '&amp;lt;%title:DocAuthor%&amp;gt;', '&amp;lt;%value:DocAuthor%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:PrimaryDate%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('PrimaryDate', '&amp;lt;%title:PrimaryDate%&amp;gt;', '&amp;lt;%value:PrimaryDate%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:Size%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('Size', '&amp;lt;%title:Size%&amp;gt;', '&amp;lt;%value:Size%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:FileExtDesc%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('FileExtDesc', '&amp;lt;%title:FileExtDesc%&amp;gt;', '&amp;lt;%value:FileExtDesc%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DisplayFolder%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DisplayFolder', '&amp;lt;%title:DisplayFolder%&amp;gt;', '&amp;lt;%value:DisplayFolder%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:FlagText%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('FlagText', '&amp;lt;%title:FlagText%&amp;gt;', '&amp;lt;%value:FlagText%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:IsFlagged%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('IsFlagged', '&amp;lt;%title:IsFlagged%&amp;gt;', '&amp;lt;%value:IsFlagged%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:Create%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('Create', '&amp;lt;%title:Create%&amp;gt;', '&amp;lt;%value:Create%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DueDate%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DueDate', '&amp;lt;%title:DueDate%&amp;gt;', '&amp;lt;%value:DueDate%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:Importance%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('Importance', '&amp;lt;%title:Importance%&amp;gt;', '&amp;lt;%value:Importance%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:ToName%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('ToName', '&amp;lt;%title:ToName%&amp;gt;', '&amp;lt;%value:ToName%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:CcName%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('CcName', '&amp;lt;%title:CcName%&amp;gt;', '&amp;lt;%value:CcName%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:AttachmentNames%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('AttachmentNames', '&amp;lt;%title:AttachmentNames%&amp;gt;', '&amp;lt;%value:AttachmentNames%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocCompany%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DocCompany', '&amp;lt;%title:DocCompany%&amp;gt;', '&amp;lt;%value:DocCompany%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:Location%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('Location', '&amp;lt;%title:Location%&amp;gt;', '&amp;lt;%value:Location%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocCategory%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DocCategory', '&amp;lt;%title:DocCategory%&amp;gt;', '&amp;lt;%value:DocCategory%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:DocKeywords%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('DocKeywords', '&amp;lt;%title:DocKeywords%&amp;gt;', '&amp;lt;%value:DocKeywords%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:MusicAlbum%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('MusicAlbum', '&amp;lt;%title:MusicAlbum%&amp;gt;', '&amp;lt;%value:MusicAlbum%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:FileName%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('FileName', '&amp;lt;%title:FileName%&amp;gt;', '&amp;lt;%value:FileName%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%if:MusicGenre%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                        AddRow('MusicGenre', '&amp;lt;%title:MusicGenre%&amp;gt;', '&amp;lt;%value:MusicGenre%&amp;gt;');&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                     &amp;lt;%endif%&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                  &amp;lt;/script&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;               &amp;lt;/table&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;         &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;!-- Next we'll embed any characterization data --&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;br&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;div align=&amp;quot;center&amp;quot; style=&amp;quot;width: 100%; padding: 0px 15px 0px 15px;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;         &amp;lt;div class=&amp;quot;debug-group&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;width: 100%; height=100%;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;div style=&amp;quot;padding: 5px 5px 5px 5px;&amp;quot;&amp;gt;Characterization&amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;iframe height=&amp;quot;200&amp;quot; width=&amp;quot;100%&amp;quot; src=&amp;quot;&amp;lt;%url:characterization%&amp;gt;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;/iframe&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;         &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;!-- Finally we'll show the items image if it has one --&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;br&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;div align=&amp;quot;center&amp;quot; style=&amp;quot;width: 100%; padding: 0px 15px 0px 15px;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;         &amp;lt;div class=&amp;quot;debug-group&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;width: 100%; height=100%;&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;div style=&amp;quot;padding: 5px 5px 5px 5px;&amp;quot;&amp;gt;Image&amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;table border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;               &amp;lt;tr class=&amp;quot;debug-row-header&amp;quot;&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;                  &amp;lt;td&amp;gt;&amp;lt;img src=&amp;quot;&amp;lt;%url:url%&amp;gt;&amp;quot;&amp;gt;&amp;lt;/img&amp;gt;&amp;lt;/td&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;               &amp;lt;/tr&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;            &amp;lt;/table&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;         &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;      &amp;lt;/div&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;   &amp;lt;/body&amp;gt;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;lt;/html&amp;gt;&lt;/font&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=4888996988192148582&amp;page=RSS%3a+Listing+1%3a++Debug.htm&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=wdstech.spaces.live.com&amp;amp;GT1=WDSTech"&gt;</description><category>Previews</category><comments>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!138.entry#comment</comments><guid isPermaLink="true">http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!138.entry</guid><pubDate>Sun, 12 Jun 2005 21:58:48 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://WDSTech.spaces.live.com/blog/cns!43D934DB9525CC66!138/comments/feed.rss</wfw:commentRss><wfw:comment>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!138.entry#comment</wfw:comment><dcterms:modified>2005-06-13T01:28:08Z</dcterms:modified></item><item><title>Listing 2:  UseDebugPreviews.rgs</title><link>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!137.entry</link><description>&lt;div&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;To create the UseDebugPreviews.rgs file copy everything below the “&lt;b&gt;—copy—&lt;/b&gt;“ line into an empty Notepad.exe document.  Then save the document to “c:\UseDebugPreviews.rgs”.&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;b&gt;&lt;font face=Arial color=black size=2&gt;—copy—&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;Windows Registry Editor Version 5.00&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications/calendar]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications/email]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications/im]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\contact]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\document]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\document/note]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\document/presentation]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\document/spreadsheet]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\document/text]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\favorite]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\folder]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\images]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\images/picture]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\images/video]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\music]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial color=black size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\program]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;c:\\debug.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&amp;quot;ScriptOk&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial color=black size=2&gt;&lt;/font&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=4888996988192148582&amp;page=RSS%3a+Listing+2%3a++UseDebugPreviews.rgs&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=wdstech.spaces.live.com&amp;amp;GT1=WDSTech"&gt;</description><category>Previews</category><comments>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!137.entry#comment</comments><guid isPermaLink="true">http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!137.entry</guid><pubDate>Sun, 12 Jun 2005 21:58:38 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://WDSTech.spaces.live.com/blog/cns!43D934DB9525CC66!137/comments/feed.rss</wfw:commentRss><wfw:comment>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!137.entry#comment</wfw:comment><dcterms:modified>2005-06-13T01:28:00Z</dcterms:modified></item><item><title>Listing 3:  UseStockPreviews.rgs</title><link>http://WDSTech.spaces.live.com/Blog/cns!43D934DB9525CC66!135.entry</link><description>&lt;div&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;To create the UseStockPreviews.rgs file copy everything below the “&lt;b&gt;—copy—&lt;/b&gt;“ line into an empty Notepad.exe document.  Then save the document to “c:\UseStockPreviews.rgs”.&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;b&gt;&lt;font face=Arial size=2&gt;—copy—&lt;/font&gt;&lt;/b&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;Windows Registry Editor Version 5.00&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;res://msnlExt.dll/communications.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications/calendar]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;res://msnlExt.dll/communications-calendar.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications/email]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;res://msnlExt.dll/communications-email.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\communications/im]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;TemplateUrl&amp;quot;=&amp;quot;res://msnlExt.dll/communications-im.htm&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;  &lt;p&gt;&lt;font face=Arial size=2&gt;[HKEY_CURRENT_USER\Software\Microsoft\RSSearch\ContentIndexCommon\Previewers\PerceivedType\contact]&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;@=&amp;quot;&amp;quot;&lt;/font&gt; &lt;p&gt;&lt;font face=Arial size=2&gt;&amp;quot;ContentType&amp;quot;=dword:00000001&lt;/font&gt; &lt;p&gt;&lt;font