<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://windowsteamblog.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"><channel><title>The Windows Blog</title><link>http://windowsteamblog.com/blogs/</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2008 SP1 (Build: 30619.63)</generator><item><title>Developing for the Windows 7 Taskbar – Jump into Jump Lists – Part 3</title><link>http://windowsteamblog.com/blogs/developers/archive/2009/07/02/developing-for-the-windows-7-taskbar-jump-into-jump-lists-part-3.aspx</link><pubDate>Thu, 02 Jul 2009 20:59:29 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:518119</guid><dc:creator>Yochay Kiriaty</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;So far, you have seen how you can opt into the Windows 7 Taskbar Jump List experience by creating a Jump List for your application (in the &lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/06/25/developing-for-the-windows-7-taskbar-jump-into-jump-lists-part-2.aspx"&gt;Developing for the Windows 7 Taskbar – Jump into Jump Lists – Part 2&lt;/a&gt; post.) You have also seen the Windows 7 default support for listing “Recent” or “Frequent” destinations as well as how to create your own custom categories. In this post, we will explore more of the Jump List features and discover how easy it is to add Tasks to your application's Jump List. &lt;/p&gt;  &lt;p&gt;User tasks are customized tasks that get their own Tasks category. As a developer, you can set the title of the displayed task, the icon on the left and, more important, and the “application” that is launched once you activate this task. You can view user’s tasks as shortcuts to the functionality our applications can provide. As you might remember, user tasks are the verbs in our vocabulary; for example, Windows Media Player provides a “Resume last playlist” task and Sticky Notes provides a “New note” task.&lt;/p&gt;  &lt;p&gt;A user task is usually an &lt;a href="http://msdn.microsoft.com/en-us/library/bb774950(VS.85).aspx"&gt;IShellLink&lt;/a&gt; object that launches any given application (your application or any other one you choose) with specific command line parameters. While you cannot categorize tasks, you can separate them using a special separator object. Here’s an example of a Jump List that uses a separator to split three tasks into a group of two plus an additional task:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_17EEBBC0.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_574C6F50.png" width="238" height="230" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;So what does it take to add tasks to a Jump List? Well, not that much. Basically it is a single call to the &lt;b&gt;AddUserTasks&lt;/b&gt; function in an interface that we are already familiar with, the ICustomDestinationList (ICustomDestinationList::AddUserTasks(IObjectArray) Method). Looking at the code, you will see a single line of code, &lt;b&gt;hr = pcdl-&amp;gt;AddUserTasks(poa);.&lt;/b&gt;&lt;b&gt; &lt;/b&gt;However, as always, someone needs to create and build that poa, IObjectArray, and parameter and fill it with relevant information. Let’s review that process now.&lt;/p&gt;  &lt;p&gt;We are going to create a collection of IShellLinks. This collection will be later cast to the required IObjectArray parameter. The following code is the beginning of that process.&lt;/p&gt;  &lt;div id="codeSnippetWrapper"&gt;   &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;IObjectCollection *poc;&lt;br /&gt;HRESULT hr = CoCreateInstance(&lt;br /&gt;D_EnumerableObjectCollection, NULL, CLSCTX_INPROC, IID_PPV_ARGS(&amp;amp;poc));&lt;br /&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;{&lt;br /&gt;    IShellLink * psl;&lt;br /&gt;    hr = _CreateShellLink(L&lt;span style="color: #006080"&gt;&amp;quot;/Task1&amp;quot;&lt;/span&gt;, L&lt;span style="color: #006080"&gt;&amp;quot;Task 1&amp;quot;&lt;/span&gt;, &amp;amp;psl);&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        hr = poc-&amp;gt;AddObject(psl);&lt;br /&gt;        psl-&amp;gt;Release();&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Here you can see that we used COM (again) and CoCreate and IObjectCollection, &lt;b&gt;poc&lt;/b&gt;. Next, we call to a helper function called CreateShellLink that receives three parameters: &lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;The first parameter is the command line argument to the task &lt;/li&gt;

  &lt;li&gt;The second parameter is the title that will be displayed &lt;/li&gt;

  &lt;li&gt;The last parameter is a pointer to IShellLink &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The object is then filed according to the relevant information. &lt;/p&gt;

&lt;p&gt;Last, we add the recently created IShellLink to the object collection. You may ask yourself where the parameter that provides the path to the executable that we plan to launch is. Well that is a good question. For simplicity, we have hard-coded that information as shown in the following code snippet:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;{&lt;br /&gt;    hr = _CreateShellLink2(&lt;br /&gt;            L&lt;span style="color: #006080"&gt;&amp;quot;C:\\Users\\&amp;lt;my user&amp;gt;\\Documents\\new text file.txt&amp;quot;&lt;/span&gt;, &lt;br /&gt;            L&lt;span style="color: #006080"&gt;&amp;quot;NotePad&amp;quot;&lt;/span&gt;, &lt;br /&gt;            &amp;amp;psl);&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        hr = poc-&amp;gt;AddObject(psl);&lt;br /&gt;        psl-&amp;gt;Release();&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Here you can see we call to a hard-coded _&lt;b&gt;CreateShellLink2&lt;/b&gt; function. This receives a path to a text file as one of its parameters and, as you can see, we are launching Notepad. &lt;/p&gt;

&lt;p&gt;Here is the code for the &lt;b&gt;CreateShellLink2&lt;/b&gt; function:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;HRESULT _CreateShellLink2(&lt;br /&gt;            PCWSTR pszArguments, PCWSTR pszTitle, &lt;br /&gt;            IShellLink **ppsl)&lt;br /&gt;{&lt;br /&gt;    IShellLink *psl;&lt;br /&gt;    HRESULT hr = CoCreateInstance(&lt;br /&gt;                    CLSID_ShellLink, &lt;br /&gt;                    NULL, &lt;br /&gt;                    CLSCTX_INPROC_SERVER, &lt;br /&gt;                    IID_PPV_ARGS(&amp;amp;psl));&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        hr = psl-&amp;gt;SetPath(c_szNotePadExecPath);&lt;br /&gt;            &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;            {&lt;br /&gt;                hr = psl-&amp;gt;SetArguments(pszArguments);&lt;br /&gt;                &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                {&lt;br /&gt;                    &lt;span style="color: #008000"&gt;// The title property is required on Jump List items &lt;/span&gt;&lt;br /&gt;                    &lt;span style="color: #008000"&gt;// provided as an IShellLink instance. This value is used &lt;/span&gt;&lt;br /&gt;                    &lt;span style="color: #008000"&gt;// as the display name in the Jump List.&lt;/span&gt;&lt;br /&gt;                    IPropertyStore *pps;&lt;br /&gt;                    hr = psl-&amp;gt;QueryInterface(IID_PPV_ARGS(&amp;amp;pps));&lt;br /&gt;                    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                    {&lt;br /&gt;                        PROPVARIANT propvar;&lt;br /&gt;                        hr = InitPropVariantFromString(pszTitle, &amp;amp;propvar);&lt;br /&gt;                        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                        {&lt;br /&gt;                            hr = pps-&amp;gt;SetValue(PKEY_Title, propvar);&lt;br /&gt;                            &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                            {&lt;br /&gt;                                hr = pps-&amp;gt;Commit();&lt;br /&gt;                                &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                                {&lt;br /&gt;                                    hr = psl-&amp;gt;QueryInterface&lt;br /&gt;                                            (IID_PPV_ARGS(ppsl));&lt;br /&gt;                                }&lt;br /&gt;                            }&lt;br /&gt;                            PropVariantClear(&amp;amp;propvar);&lt;br /&gt;                        }&lt;br /&gt;                        pps-&amp;gt;Release();&lt;br /&gt;                    }&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;else&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            hr = HRESULT_FROM_WIN32(GetLastError());&lt;br /&gt;        }&lt;br /&gt;        psl-&amp;gt;Release();&lt;br /&gt;    }&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; hr;&lt;br /&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;To start with, again we need to use COM and CoCreate to create an IShellLink COM object. A quick look at the SDK reveals that the IShellLink object has many functions. Here are few that we will use:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;GetPath&lt;/b&gt; Gets the path and file name of a Shell link object, that is the path to the executable &lt;/li&gt;

  &lt;li&gt;&lt;b&gt;GetShowCmd&lt;/b&gt; Gets the show command for a Shell link object, the executable name &lt;/li&gt;

  &lt;li&gt;&lt;b&gt;SetArguments&lt;/b&gt; Sets the command-line arguments for a Shell link object &lt;/li&gt;

  &lt;li&gt;&lt;b&gt;SetDescription&lt;/b&gt; Sets the description for a Shell link object; the description can be any application-defined string &lt;/li&gt;

  &lt;li&gt;&lt;b&gt;SetIconLocation&lt;/b&gt; Sets the location (path and index) of the icon for a Shell link object &lt;b&gt;SetPath&lt;/b&gt; Sets the path and file name of a Shell link object &lt;/li&gt;

  &lt;li&gt;&lt;b&gt;SetWorkingDirectory&lt;/b&gt; Sets the name of the working directory for a Shell link object &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As you can see, for each parameter we must get and set appropriate methods. There are additional parameters; take a look at the SDK - &lt;a href="http://msdn.microsoft.com/en-us/library/bb774950(VS.85).aspx"&gt;IShellLink&lt;/a&gt; if you want to learn more.&lt;/p&gt;

&lt;p&gt;In the above example, we set the path to Notepad (by default in the Windows 7 installation, c:\windows\notepad.exe). We also passed a hard-coded (not a good practice) command line argument pointing to a text file in my private document folder (C:\Users\&amp;lt;my user&amp;gt;\Documents\new text file.txt.) The rest of the code sets the title property that is required on Jump List items.&lt;/p&gt;

&lt;p&gt;We call the &lt;b&gt;CreateShellLink2&lt;/b&gt; and &lt;b&gt;CreateShellLink&lt;/b&gt; a few more times to add all three shortcuts as shown in the above screen capture. &lt;/p&gt;

&lt;p&gt;Now let’s add a separator.&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;To add a separator to our Task List, we need to create an IShellLink, and set the PKEY_AppUserModel_IsDestListSeparator property using the COM property variant as shown in the following code snippet:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #008000"&gt;// The Tasks category of Jump Lists supports separator items. &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;// These are simply IShellLink instances that have the &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;//  PKEY_AppUserModel_IsDestListSeparator property set to TRUE. &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;// All other values are ignored when this property is set.&lt;/span&gt;&lt;br /&gt;HRESULT _CreateSeparatorLink(IShellLink **ppsl)&lt;br /&gt;{&lt;br /&gt;    IPropertyStore *pps;&lt;br /&gt;    HRESULT hr = CoCreateInstance(&lt;br /&gt;                    CLSID_ShellLink, &lt;br /&gt;                    NULL, &lt;br /&gt;                    CLSCTX_INPROC_SERVER, &lt;br /&gt;                    IID_PPV_ARGS(&amp;amp;pps));&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        PROPVARIANT propvar;&lt;br /&gt;        hr = InitPropVariantFromBoolean(&lt;span style="color: #0000ff"&gt;TRUE&lt;/span&gt;, &amp;amp;propvar);&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;        {&lt;br /&gt;            hr = pps-&amp;gt;SetValue(PKEY_AppUserModel_IsDestListSeparator, propvar);&lt;br /&gt;            &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;            {&lt;br /&gt;                hr = pps-&amp;gt;Commit();&lt;br /&gt;                &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                {&lt;br /&gt;                    hr = pps-&amp;gt;QueryInterface(IID_PPV_ARGS(ppsl));&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;            PropVariantClear(&amp;amp;propvar);&lt;br /&gt;        }&lt;br /&gt;        pps-&amp;gt;Release();&lt;br /&gt;    }&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; hr;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Here you can see that we used &lt;strong&gt;CoCreate&lt;/strong&gt; to create an &lt;strong&gt;IShellLink&lt;/strong&gt; object. Next, we set a PROPVARIANT, &lt;b&gt;propvar&lt;/b&gt;, to true and set the &lt;strong&gt;IShellLink&lt;/strong&gt; object &lt;strong&gt;PKEY_AppUserModel_IsDestListSepar&lt;/strong&gt;ator property to true. This will instruct the OS to render this &lt;strong&gt;IShellLink&lt;/strong&gt; as a separator and not just as regular &lt;strong&gt;IShellLink&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;OK, that was long. Now let’s look at the short version, using .NET. For that we are going to use the &lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/05/18/windows-7-managed-code-apis.aspx"&gt;Windows API Code pack for the .NET Framework&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;As we can expect from .NET, we get abstraction from most of the “COM code behind” that is required. The &lt;strong&gt;Microsoft.WindowsAPICodePack.Shell.Taskbar&lt;/strong&gt; namespace includes a &lt;b&gt;JumpListLink&lt;/b&gt; object that extends the &lt;b&gt;ShellLink&lt;/b&gt; object and implements &lt;b&gt;IJumpListTasks&lt;/b&gt;.&lt;/p&gt;

&lt;p&gt;The &lt;b&gt;JumpList&lt;/b&gt; class contains the &lt;b&gt;UserTasks&lt;/b&gt; collection of &lt;b&gt;IJumpListTasks&lt;/b&gt; to which you can simple add new &lt;b&gt;JumpListLink&lt;/b&gt; objects as shown in the following code snippet:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #008000"&gt;// Path to Windows system folder&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt; systemFolder = &lt;br /&gt;        Environment.GetFolderPath(Environment.SpecialFolder.System);&lt;br /&gt;&lt;br /&gt;jumpList.UserTasks.Add(&lt;span style="color: #0000ff"&gt;new&lt;/span&gt; JumpListLink&lt;br /&gt;{&lt;br /&gt;    Title = &lt;span style="color: #006080"&gt;&amp;quot;Open Notepad&amp;quot;&lt;/span&gt;,&lt;br /&gt;    Path = Path.Combine(systemFolder, &lt;span style="color: #006080"&gt;&amp;quot;notepad.exe&amp;quot;&lt;/span&gt;),&lt;br /&gt;    IconReference = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; IconReference(&lt;br /&gt;(systemFolder, &lt;span style="color: #006080"&gt;&amp;quot;notepad.exe&amp;quot;&lt;/span&gt;), 0)&lt;br /&gt;});&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Using the C# 3.0 syntax, we initialize a new &lt;b&gt;JumpListLink&lt;/b&gt; object and add it to the &lt;b&gt;UserTasks&lt;/b&gt; collection. As you can see, the managed code &lt;b&gt;JumpListLink&lt;/b&gt; has very similar properties to the native one (which makes perfect sense). We also added an icon to the Notepad shortcut to the above code, but didn't provide any command line parameters. &lt;/p&gt;

&lt;p&gt;You want to add a separator? Well, that is also very easy: just add a &lt;b&gt;JumpListSeperator&lt;/b&gt; object to the UserTasks collection.&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;jumpList.UserTasks.Add(&lt;span style="color: #0000ff"&gt;new&lt;/span&gt; JumpListSeparator());&lt;/pre&gt;
&lt;/div&gt;

&lt;div&gt;Please note that, as always, when working with the Windows Code pack API Taskbar, you have to call the “refresh” function in order to commit the changes, as we explained in the previous post. &lt;/div&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Taskbar.JumpList.RefreshTaskbarList();&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;After the refresh, the Jump List looks as follows:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_7284C851.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_5607D671.png" width="239" height="233" /&gt;&lt;/a&gt; 

  &lt;br /&gt;&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;I’ve compiled a version of a native example from the Windows 7 SDK. You can get a copy of that code from &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers.CodeSamples/CustomJumpList.zip"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can &lt;a href="http://code.msdn.microsoft.com/WindowsAPICodePack"&gt;download the Windows API Code Pack&lt;/a&gt; that includes the manage code example we used in this post. &lt;/p&gt;

&lt;p&gt;This concludes our Jump List discussion. Our next Taskbar topic is Icon Overlay.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=518119" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Developers/default.aspx">Developers</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Taskbar/default.aspx">Taskbar</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/.NET/default.aspx">.NET</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Sample+Code/default.aspx">Sample Code</category></item><item><title>What’s new at Talking About Windows.com</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/07/02/what-s-new-at-talking-about-windows-com.aspx</link><pubDate>Thu, 02 Jul 2009 16:18:55 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:518109</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;If you haven visited &lt;a href="http://www.talkingaboutwindows.com"&gt;Talking About Windows.com&lt;/a&gt; in a while, you are missing a lot! &lt;/p&gt;  &lt;p&gt;You missed Microsoft Engineers like Ian Burgess talking about the engineering design of DirectAccess and BitLocker and Mario Garzia discussing application compatibility and how Windows 7 works with legacy applications. &lt;/p&gt;  &lt;p&gt;You can interact with IT pros like Darren Baker, the National Director of Infrastructure Solutions for Sogeti USA talk about how virtualization and imaging has made implementing Windows 7 in his organization easier.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.talkingaboutwindows.com"&gt;Talking About Windows.com&lt;/a&gt; is your chance to hear what Microsoft Engineers and IT pros like you have to say and gives you a chance to interact with them.&lt;/p&gt;  &lt;p&gt;Hear what they have to say and get heard. Join the conversation.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://talkingaboutwindows.com/archive/2009/06/25/ian-burgess.aspx"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="IAN" border="0" alt="IAN" align="left" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/IAN_5F00_7D875DFD.jpg" width="267" height="127" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;a href="http://talkingaboutwindows.com/archive/2009/06/25/darren-baker.aspx"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Darren" border="0" alt="Darren" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/Darren_5F00_209EE427.jpg" width="267" height="126" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://talkingaboutwindows.com/archive/2009/06/18/mario-garzia.aspx"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Mario" border="0" alt="Mario" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/Mario_5F00_3559A221.jpg" width="267" height="127" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=518109" width="1" height="1"&gt;</description></item><item><title>SCCManager 2007 Service Pack 2 Beta aka ConfigMgr07 SP2</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/07/01/system-center-configuration-manager-2007-service-pack-2-beta.aspx</link><pubDate>Thu, 02 Jul 2009 00:42:49 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:518052</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;Today I am featuring guest Blogger Jeremy Chapman from the Windows Product Team. To see more of Jeremy, view our latest VRT on Application Compatibility. To learn more, &lt;a href="http://windowsteamblog.com/blogs/springboard/archive/2009/06/30/the-springboard-application-compatibility-vrt-rebroadcast-is-live.aspx"&gt;click here.&lt;/a&gt; Below is his interview with Jeff Wettlaufer from the System Center Team.&lt;/p&gt;  &lt;p&gt;I recently interviewed fellow product manager, long-time friend and fellow “automator” of operating system deployment tasks, Jeff Wettlaufer, from the System Center team. He explained the new features in the recently released System Center Configuration Manager 2007 Service Pack 2 Beta (let’s just call it “ConfigMgr07 SP2” for short), and how that will help with Windows 7 deployment and management.&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; What is ConfigMgr07 SP2 and where do people get it?     &lt;br /&gt;&lt;b&gt;Jeff:&lt;/b&gt; Thanks for having me and thanks for saying configmgr and not sccm for once… SP2 adds support for new operating systems – Windows 7 and Server 2008 R2 and Windows Vista SP2 – along with exciting enhancements around Intel AMT integration. If you have the&amp;#160; Intel vPro hardware, there are many things we can do. Out of Box Wired/Wireless Management: Wireless Profile Management, End Point Access Control: 802.1x support, Access Monitor: Audit Log, Remote Power Management: Power State Configuration. You were at Microsoft Management Summit in May and already saw this, but we demoed waking Windows XP PCs up wirelessly and kicking off the deployment to Windows 7 using USMT and hard-link migration. Those machines were mid range Dell latitude laptops, and we migrated to Windows 7 with 4GB user data and apps in 18 minutes.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/Win7ACT_5F00_4451088F.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Win7 ACT" border="0" alt="Win7 ACT" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/Win7ACT_5F00_thumb_5F00_6E5106B7.jpg" width="563" height="451" /&gt;&lt;/a&gt; &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; I saw that, it was amazing. There is a video of that on &lt;a href="https://www.microsoft.com/presspass/presskits/infrastructure/default.aspx"&gt;Microsoft PressPass&lt;/a&gt;. And I thought I was fast with 23-minute migrations from Windows XP on my computers. Let’s take a step back for a second. From the 10,000 ft level, how does ConfigMgr07 help with client management?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeff:&lt;/b&gt; A lot of people probably know about how ConfigMgr can help with their inventory, software update (patch) management, and application distribution - but you may not be aware of things like the ability to manage PCs over the Internet, in the ‘serverless’ branch, at home, on the road and wherever people work these days.&amp;#160; In addition, ConfigMgr can now deploy virtual applications in the same way as SMS and ConfigMgr have always delivered traditional physical formats.&amp;#160; We can stream apps to desktops, or deliver the apps locally in what’s called download and execute, so even mobile laptop users can use virtual apps.&amp;#160; There is a lot there and I’d encourage everyone to check out &lt;a href="http://technet.microsoft.com/en-us/configmgr/default.aspx"&gt;http://technet.microsoft.com/en-us/configmgr/default.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; Explain Internet-based client management.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeff:&lt;/b&gt; A lot of people say that mobile workforce management is a key challenge they face today on the client. Laptops are outselling desktops and people are taking these on the road, home or otherwise not connecting to the corporate network very often. So with ConfigMgr, we can manage ConfigMgr clients when they are not connected to your company network but have a standard Internet connections. This feature has a number of advantages, including the reduced costs of not having to run virtual private networks (VPNs) and being able to deploy software updates to remote users while they are traveling or at home.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/win7AppV_5F00_06747113.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="win7 AppV" border="0" alt="win7 AppV" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/win7AppV_5F00_thumb_5F00_2C6A2169.jpg" width="585" height="420" /&gt;&lt;/a&gt; &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; Explain the new client hardware compatibility reports in HW inventory.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeff:&lt;/b&gt; We’ve updated the hardware compatibility reports in ConfigMgr to include the minimum bars for Windows 7 hardware compatibility, so you can see which machines in your environment are capable of running Windows 7 in a single view.&amp;#160; We did this for Vista, and we found it really helped organizations understand where they were at the hardware level.&amp;#160; We are taking that work forward to also help customers understand from their existing inventory of managed systems, which ones meet the minimum requirements before they start for Windows 7.&amp;#160; As well as helping understand the hardware side of readiness, we also are providing support for applications. In the past we have provided support for the Application Compatibility Toolkit through a connector, that brings the app knowledge right into the Admin console.&amp;#160; As ACT moves to version 6 for Windows 7, we will update the connector to support that effort.&amp;#160; The ACT data is a real hidden gem, in 1 view you can see your apps – and organize your testing to compare it in that 1 view to the vendor, the community, and even Microsoft.&amp;#160; This information can really help make the right decisions moving forward, and ConfigMgr can help migrate apps by supporting Application virtualization where needed.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; How about the operating system deployment support.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeff:&lt;/b&gt; With any operating system deployment, you have to migrate user files off the old system, lay down a new OS, configure it with updates, packages and apps, then restore the user files and settings you migrated off in the first step. ConfigMgr can automate the whole process and do it without you having to visit the targeted PCs. I know you’ve got a lot of videos walking through the Lite Touch Installation process on the web, but ConfigMgr can even target the PCs for installation and kick off the process for you. Along the way we encrypt your user state, passwords and product keys, so it is more automated and enterprise-class.&amp;#160; ConfigMgr has built on the great work in deployment technology from the Windows gang, by embracing and integrating the tools usage like WinPE, USMT, BitLocker and more.&amp;#160; Our Task Sequencer helps to truly separate the hardware from the OS and application layers, by using the boot.wim and install.wim formats from Windows, and then providing a console UI experience to chain user data migration, applications and other settings.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/win7TaskSeq_5F00_5F59B1D0.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="win7 Task Seq" border="0" alt="win7 Task Seq" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/win7TaskSeq_5F00_thumb_5F00_777D1C2B.jpg" width="579" height="514" /&gt;&lt;/a&gt; &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; Are all the Windows 7 deployment enhancements like the image servicing in DISM (Deployment Image Servicing and Management), hard-link migration, and Multicast included in the ConfigMgr SP2’s OS deployment?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeff&lt;/b&gt;: Like you saw at MMS, we do support USMT in ConfigMgr07, including hard-link migration. The Microsoft Deployment Toolkit 2010 Beta 2 extensions for SP2 enable hard-link migration without additional customization, or you can call the User State Migration Tool in a custom task to use the hard-link commands.&amp;#160; Multicast is also supported and since we use the Windows 7 deployment tools, dism.exe is leveraged as well.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; When can we expect RTM release of SP2?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeff:&lt;/b&gt; We recently made the Beta available and the final version should be ready within 90 days of Windows 7 RTM. Everything depends on the customer feedback we get from the Beta though – quality is the priority.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy:&lt;/b&gt; Thanks Jeff. If you have ConfigMgr and want try to SP2 Beta, visit &lt;a href="connect.microsoft.com"&gt;connect.microsoft.com&lt;/a&gt;, join the System Center Configuration Manager 2007 Service Pack 2 Connection and download SP2. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=518052" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Beta/default.aspx">Beta</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/System+Center/default.aspx">System Center</category></item><item><title>Remaining Windows Vista SP2 Languages Released to Windows Update</title><link>http://windowsteamblog.com/blogs/windowsvista/archive/2009/06/30/remaining-windows-vista-sp2-languages-released-to-windows-update.aspx</link><pubDate>Wed, 01 Jul 2009 04:34:10 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517903</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>5</slash:comments><description>&lt;p&gt;Back on May 26th, &lt;a href="http://windowsteamblog.com/blogs/windowsvista/archive/2009/05/26/windows-vista-and-windows-server-2008-sp2-rtw.aspx"&gt;we announced&lt;/a&gt; Windows Vista SP2 and Windows Server 2008 SP2 hit the RTW milestone. The first wave of languages (English, German, French, Spanish, and Japanese) was made available on Windows Update at that time. Today, we are releasing the remaining languages for Windows Vista and Windows Server 2008 SP2 to Windows Update. &lt;/p&gt;  &lt;p&gt;For more information, including languages, on Windows Vista and Windows Server 2008 SP2 &lt;a href="http://technet.microsoft.com/en-us/windows/dd767623.aspx"&gt;click here&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;If you have Windows Update configured to download updates automatically, Windows Update will notify you when Windows Vista SP2 and Windows Server 2008 SP2 is ready to be installed. &lt;/p&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fwindowsteamblog.com%2fblogs%2fwindowsvista%2farchive%2f2009%2f06%2f30%2fremaining-windows-vista-sp2-languages-released-to-windows-update.aspx&amp;amp;title=Remaining+Windows+Vista+SP2+Languages+Released+to+Windows+Update"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517903" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/Announcement/default.aspx">Announcement</category><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/Windows+Update/default.aspx">Windows Update</category><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/Windows+Server+2008/default.aspx">Windows Server 2008</category><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/Windows+Vista+SP2/default.aspx">Windows Vista SP2</category><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/SP2/default.aspx">SP2</category><category domain="http://windowsteamblog.com/blogs/windowsvista/archive/tags/Service+Pack+2/default.aspx">Service Pack 2</category></item><item><title>The Springboard Application Compatibility VRT rebroadcast is live!</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/30/the-springboard-application-compatibility-vrt-rebroadcast-is-live.aspx</link><pubDate>Wed, 01 Jul 2009 01:04:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517894</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>5</slash:comments><description>&lt;p&gt;Last week we posted the promo teaser &lt;a href="http://windowsteamblog.com/blogs/springboard/archive/2009/06/22/application-compatibility-roundtable-promo.aspx"&gt;here&lt;/a&gt; on the Springboard Blog for the Virtual Roundtable on Application Compatibility. As of today, the rebroadcast is live and ready for you to view.&lt;/p&gt;
&lt;p&gt;If you missed the live broadcast, here&amp;rsquo;s your chance to hear Aaron Margosis, Paul Schnell; Darren Baker (also watch for Darren&amp;rsquo;s interview on &lt;a href="http://talkingaboutwindows.com/"&gt;TalkingAboutWindows&lt;/a&gt; next week), Greg Lambert Michael Sciacqua, Gov Maharaj, Celine Allee, Jeremy Chapman, and of course Mark Russinovich discuss the issues in getting your Windows XP and Windows Vista applications to work with Windows 7 quickly and effectively. From ACT 5.5 and Shims to discussions on key resources and tools, this VRT is a must see for those IT pros looking to make the jump to Windows 7.&lt;/p&gt;
&lt;p&gt;To view the complete VRT, &lt;a href="http://technet.microsoft.com/windows/dd981014.aspx?ITPID=sprblog"&gt;click here.&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Also, here are some of our previous VRTs you can view as well.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://technet.microsoft.com/windows/cc952917.aspx?ITPID=sprblog"&gt;Windows Vista Performance&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://technet.microsoft.com/windows/cc949116.aspx?ITPID=sprblog"&gt;Let&amp;rsquo;s Talk Windows Vista Security&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://technet.microsoft.com/windows/cc949113.aspx?ITPID=sprblog"&gt;Windows Vista Adoption and Deployment&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://technet.microsoft.com/windows/dd981014.aspx?ITPID=sprblog"&gt;&lt;img height="179" width="255" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image0015_5F00_0ADDD0D8.jpg" alt="clip_image001[5]" border="0" title="clip_image001[5]" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" /&gt;&lt;/a&gt;&lt;a href="http://technet.microsoft.com/windows/dd981014.aspx?ITPID=sprblog"&gt;&lt;img height="176" width="279" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image0017_5F00_0637A051.jpg" alt="clip_image001[7]" border="0" title="clip_image001[7]" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://technet.microsoft.com/windows/dd981014.aspx?ITPID=sprblog"&gt;&lt;img height="294" width="542" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image001_5F00_418B060F.jpg" alt="clip_image001" border="0" title="clip_image001" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517894" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Springboard/default.aspx">Springboard</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/VRT/default.aspx">VRT</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Mark+Russinovich/default.aspx">Mark Russinovich</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/App+Compat/default.aspx">App Compat</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Application+Compatability/default.aspx">Application Compatability</category></item><item><title>Internet Explorer 8 helps you save time with Accelerators</title><link>http://windowsteamblog.com/blogs/windowsexperience/archive/2009/06/30/internet-explorer-8-helps-you-save-time-with-accelerators.aspx</link><pubDate>Tue, 30 Jun 2009 18:47:46 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517881</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>8</slash:comments><description>&lt;p&gt;There’s been a great deal of more talk lately about browser performance. You may have seen some previous discussion about page load performance as you saw &lt;a href="http://windowsteamblog.com/blogs/windowsexperience/archive/2009/03/12/ie8-gets-you-where-you-want-to-go-quickly.aspx"&gt;here&lt;/a&gt; in a video and whitepaper in March. Page load ensures that you get to where you want to go quickly. But page load time differences actually measure about the length it takes for a person to blink their eye once, making a win for any browser pretty inconsequential as far as time savings go.&lt;/p&gt;  &lt;p&gt;However, Internet Explorer 8 today offers a feature that saves you time and clicks and lets you get things done more quickly: &lt;b&gt;Accelerators&lt;/b&gt;. Accelerators optimize the browser experience by removing repetitive, time consuming actions and give people easy access to the online services they use most. You can discover new Accelerators for Internet Explorer 8 at the &lt;a href="http://www.ieaddons.com/"&gt;Internet Explorer 8 Add-ons Gallery&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;With all the talk about performance, we wanted to see what features like Accelerators really meant for time savings when people use the web, so we created another video looking at common tasks people actually do in four browsers: Safari 4.0, Chrome 2.0 beta, Firefox 3.5 beta 99 and Internet Explorer 8. Please note, all tests were performed using the &lt;em&gt;default installation settings&lt;/em&gt; for each browser. No additional add-ons or extensions were added.&amp;#160; &lt;/p&gt;  &lt;p&gt;Here is a video that shows off how Accelerators in Internet Explorer 8 make your browsing experience quicker and easier: &lt;/p&gt;  &lt;p&gt;&lt;iframe height="326" src="http://www.microsoft.com/video/en/us/player/embed/a4305c9a-113b-4f2f-92d2-78bd9be9135e" frameborder="0" width="430" allowtransparency="allowtransparency" scrolling="no"&gt;&lt;/iframe&gt;    &lt;br /&gt;&lt;a href="http://www.microsoft.com/video/en/us/details/a4305c9a-113b-4f2f-92d2-78bd9be9135e?vp_evt=eref&amp;amp;vp_video=Accelerators+in+IE8+Help+Save+Time!"&gt;Accelerators in IE8 Help Save Time!&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517881" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Performance/default.aspx">Performance</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Web+Browsing/default.aspx">Web Browsing</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Internet+Explorer+8/default.aspx">Internet Explorer 8</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Accelerators/default.aspx">Accelerators</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Internet+Explorer/default.aspx">Internet Explorer</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Browser/default.aspx">Browser</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Web+Browsers/default.aspx">Web Browsers</category></item><item><title>Windows 7 Keyboard Shortcuts</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/29/windows-7-keyboard-shortcuts.aspx</link><pubDate>Mon, 29 Jun 2009 21:18:17 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517837</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>14</slash:comments><description>&lt;p&gt;I love keyboard shortcuts. Using a combination of two or more keys that, when pressed, can be used to perform a task that would typically require a mouse or other pointing device saves me time and effort both in Windows and other programs. &lt;/p&gt;  &lt;p&gt;Here are some of my favorite Windows 7 shortcuts that you may not be familiar with that are great time savers. For a complete list of all shortcuts, &lt;a href="http://windows.microsoft.com/en-US/Windows7/Keyboard-shortcuts "&gt;check out this page here.&lt;/a&gt;&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="591"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt; +T&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Cycle through programs on the taskbar&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt; +Spacebar&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Preview the desktop&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt; +X&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Open Windows Mobility Center&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt; +P&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Choose a presentation display mode&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Shift+Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt;+number&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Start a new instance of the program pinned to the taskbar in the position indicated by the number&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Alt+Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt;+number&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Open the Jump List for the program pinned to the taskbar in the position indicated by the number&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;         &lt;p&gt;Ctrl+Windows logo key &lt;img title="Picture of Windows logo key" alt="Picture of Windows logo key" src="http://res2.windows.microsoft.com/resbox/en/Windows 7/Main/0/d/0d8a4985-b5e2-41a6-a1b6-e4bafb517937/0d8a4985-b5e2-41a6-a1b6-e4bafb517937.png" width="16" height="16" /&gt;+number&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="321"&gt;         &lt;p&gt;Switch to the last active window of the program pinned to the taskbar in the position indicated by the number&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Do you have a favorite that you can’t do without? Share it with us in the comments area.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517837" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category></item><item><title>Important Update Regarding Windows Live Movie Maker Beta</title><link>http://windowsteamblog.com/blogs/windowsexperience/archive/2009/06/29/important-update-regarding-windows-live-movie-maker-beta.aspx</link><pubDate>Mon, 29 Jun 2009 17:14:10 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517827</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>6</slash:comments><description>&lt;p&gt;Starting July 1st, 2009, when you launch Windows Live Movie Maker Beta you will be &lt;a href="http://windowslivewire.spaces.live.com/blog/cns!2F7EB29B42641D59!41143.entry"&gt;prompted to implement a software update&lt;/a&gt; which will extend the beta. You can download the software update &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e7446634-e033-4053-acd3-a7a18ea8a1a2&amp;amp;displaylang=en"&gt;here&lt;/a&gt; to continue to use the software without any interruption. If you choose not to install the software update, you will be unable to continue to use the Windows Live Movie Maker Beta.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/WLMovieMaker_5F00_256x256_5F00_102DBAE7.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="WLMovieMaker_256x256" border="0" alt="WLMovieMaker_256x256" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/WLMovieMaker_5F00_256x256_5F00_thumb_5F00_7FB549EB.png" width="100" height="100" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The folks on the Windows Live Movie Maker Team are hard at work on “V1” which should be out sometime this year. For more information on the future of Windows Live Movie Maker, see this &lt;a href="http://windowslivewire.spaces.live.com/blog/cns!2F7EB29B42641D59!41131.entry"&gt;excellent blog post&lt;/a&gt; by Lead Program Manager Mike Torres from the Windows Live Team Blog.&lt;/p&gt;  &lt;p&gt;I’m pretty excited for what they have in store for Windows Live Movie Maker!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517827" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Live/default.aspx">Windows Live</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Beta/default.aspx">Beta</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Live+Movie+Maker/default.aspx">Windows Live Movie Maker</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Software+Update/default.aspx">Software Update</category></item><item><title>Developing for the Windows 7 Taskbar – Jump into Jump Lists – Part 2</title><link>http://windowsteamblog.com/blogs/developers/archive/2009/06/25/developing-for-the-windows-7-taskbar-jump-into-jump-lists-part-2.aspx</link><pubDate>Fri, 26 Jun 2009 01:19:07 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517510</guid><dc:creator>Yochay Kiriaty</dc:creator><slash:comments>10</slash:comments><description>&lt;p&gt;This is the second post about the Taskbar Jump List in a series of Windows 7 Taskbar posts. In the previous post, &lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/06/22/developing-for-the-windows-7-taskbar-jump-into-jump-lists-part-1.aspx"&gt;Developing for the Windows 7 Taskbar – Jump into Jump Lists – Part 1&lt;/a&gt;, we introduced the elements that comprise the Taskbar Jump Lists: the destination (also referred to as “nouns”) and the Tasks (also referred to as “verbs”). As developer, you have a large amount of control over these elements. In this post, we walk through the different APIs that you can use when programming the Taskbar Jump Lists. &lt;/p&gt;  &lt;p&gt;Before we begin, there is one very important thing you need to know. “Items” in the Recent category, or in any other category (any destination), &lt;b&gt;must have&lt;/b&gt; a &lt;b&gt;registered file handler&lt;/b&gt; &lt;b&gt;for your application&lt;/b&gt; in the registry. This &lt;b&gt;doesn’t&lt;/b&gt; mean that your application must be the &lt;b&gt;default handler&lt;/b&gt; for that specific file type, it just means that your application must have a registered handler for &lt;b&gt;all the files &lt;/b&gt;that you want to be &lt;b&gt;visible&lt;/b&gt; in the Jump List. Therefore, “items” can only be files. Remember, by clicking on one of the items in the Jump List, the OS executes the command associated with that file as it relates to your application. When you register a file handler, you also specify the application that handles this file, and you define how to pass the input parameter for the application. Another important note to remember: All the items (files) have to be local – that is, on the local hard drive, and accessible to your application. Therefore, we can say that each and every item among the Jump List destinations is an accessible, local file, with a file handler registered to your application.&lt;/p&gt;  &lt;p&gt;As we explain in the following section, once you have registered your file handlers, the OS actually helps you keep track of all your files. We will cover file handler registration in the next post. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Step 1 – Use the Out-of-the-Box Windows Experience and Default Behavior&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;By default, a Jump List contains a &lt;i&gt;Recent&lt;/i&gt; category that is populated &lt;b&gt;automatically&lt;/b&gt; for file-based applications through the &lt;b&gt;&lt;i&gt;SHAddToRecentDocs&lt;/i&gt;&lt;/b&gt; function. This function adds the used “item” (file) to the Shell's list of recently used documents. In addition to updating its list of recent documents, the Shell adds a shortcut to the user's &lt;i&gt;Recent&lt;/i&gt; directory. The Windows 7 Taskbar uses that list and the Recent directory to populate the list of recent items in the Jump Lists. &lt;/p&gt;  &lt;p&gt;Windows can also do the work for you if your application's file type is registered. Anytime you double click on a file type with a registered handler, before Windows launches your application it automatically calls &lt;b&gt;&lt;i&gt;SHAddToRecentDocs&lt;/i&gt;&lt;/b&gt; on your application's behalf. This inserts the item in the Windows Recent list and eventually into the Jump List Recent Category. The same automatic behavior occurs when using the Windows &lt;b&gt;Common File Dialog&lt;/b&gt; (CFD) to open files through our applications. Therefore, this is another good reason to use the CFD introduced in the Windows Vista timeframe, and it also plays a vital role regarding libraries, as we explained in the &lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/04/16/light-up-with-windows-7-libraries.aspx"&gt;Light Up with Windows 7 Libraries&lt;/a&gt; post. &lt;/p&gt;  &lt;p&gt;Both of the above cases exploit default Windows behavior in cases where you have a registered handler and an Application ID by which the files are associated with &lt;i&gt;Recent&lt;/i&gt; and &lt;i&gt;Frequent&lt;/i&gt; lists. In both cases, Windows automatically inserts the items into the Jump Lists unless you &lt;b&gt;specifically&lt;/b&gt; remove this functionality by using the COM API. Obviously, users also have the option to remove any items from their Jump Lists. By explicitly removing an item from the Jump List, you insert it into the Removed Items List, which we will discuss below.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Step 2 – Create Your Own Category &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;If the default &lt;i&gt;Recent&lt;/i&gt; or &lt;i&gt;Frequent&lt;/i&gt; categories do not meet your application's needs, it is time to create your own &lt;i&gt;custom&lt;/i&gt; category. In order to do so, you need to use the &lt;strong&gt;ICustomDestinationList&lt;/strong&gt; interface to create a custom Destination List.&lt;/p&gt;  &lt;p&gt;The &lt;strong&gt;ICustomDestinationList&lt;/strong&gt; exposes methods that allow an application to provide a custom Jump List, including destinations and tasks, for display in the Taskbar. Here are the methods that we are using for the example below:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;AppendCategory &lt;/strong&gt;Defines a custom category and the destinations that it contains for inclusion in a custom Jump List &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;AppendKnownCategory &lt;/strong&gt;Specifies that the Frequent or Recent category should be included in the Jump List &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;BeginList &lt;/strong&gt;Initiates a building session for a custom Jump List &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;CommitList &lt;/strong&gt;Declares that the Jump List initiated by a call to &lt;strong&gt;BeginList&lt;/strong&gt; is complete and ready for display &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The following code snippet shows how to create a new custom list called “Custom Lists” and appends a few items to it:&lt;/p&gt;  &lt;div id="codeSnippetWrapper"&gt;   &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;void&lt;/span&gt; CreateJumpList()&lt;br /&gt;{    &lt;br /&gt;    ICustomDestinationList *pcdl;&lt;br /&gt;    HRESULT hr = CoCreateInstance(&lt;br /&gt;                    CLSID_DestinationList, &lt;br /&gt;                    NULL, &lt;br /&gt;                    CLSCTX_INPROC_SERVER, &lt;br /&gt;                    IID_PPV_ARGS(&amp;amp;pcdl));&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        &lt;span style="color: #008000"&gt;//important to setup App Id for the Jump List&lt;/span&gt;&lt;br /&gt;        hr = pcdl-&amp;gt;SetAppID(c_szAppID);&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;        {&lt;br /&gt;            UINT uMaxSlots;&lt;br /&gt;            IObjectArray *poaRemoved;&lt;br /&gt;            hr = pcdl-&amp;gt;BeginList(&lt;br /&gt;                            &amp;amp;uMaxSlots, &lt;br /&gt;                            IID_PPV_ARGS(&amp;amp;poaRemoved));&lt;br /&gt;            &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;            {&lt;br /&gt;                hr = _AddCategoryToList(pcdl, poaRemoved);&lt;br /&gt;                &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;                {&lt;br /&gt;                    pcdl-&amp;gt;CommitList();&lt;br /&gt;                }&lt;br /&gt;                poaRemoved-&amp;gt;Release();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Here you see that we started with a standard COM initialization call. We call CoCreateInstance to initialize the &lt;b&gt;ICustomDestinationList&lt;/b&gt; object (this is the joy of working with COM….). Next, we set the &lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/06/18/developing-for-the-windows-7-taskbar-application-id.aspx"&gt;Application ID&lt;/a&gt; in order to allow you to start populating items to the list. &lt;/p&gt;

&lt;p&gt;The &lt;b&gt;BeginList&lt;/b&gt; function initiated the build session for the custom Jump List. This function returns the maximum number of items that can fit in a given Jump List; the default is 10. You may note the &lt;b&gt;Remove&lt;/b&gt; item parameter&lt;em&gt;, &lt;/em&gt;&lt;strong&gt;IObjectArray *poaRemoved&lt;/strong&gt;, that the &lt;strong&gt;BeginList() &lt;/strong&gt;returned as an out parameter. This holds any specific items that the user removed from the Jump List in his current session. We discuss the Removed Items List later in this post. &lt;/p&gt;

&lt;p&gt;Next we called a helper function, &lt;strong&gt;_AddCategoryToList()&lt;/strong&gt;, to do the actual work of adding items into the custom category. &lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #008000"&gt;// This is the helper function that actually appends the items to a collection &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;// object HRESULT _AddCategoryToList(ICustomDestinationList *pcdl, &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;// IObjectArray *poaRemoved)&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;    IObjectCollection *poc;&lt;br /&gt;    HRESULT hr = CoCreateInstance&lt;br /&gt;                    (CLSID_EnumerableObjectCollection, &lt;br /&gt;                    NULL, &lt;br /&gt;                    CLSCTX_INPROC_SERVER, &lt;br /&gt;                    IID_PPV_ARGS(&amp;amp;poc));&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; (UINT i = 0; i &amp;lt; ARRAYSIZE(c_rgpszFiles); i++)&lt;br /&gt;        {&lt;br /&gt;            IShellItem *psi;&lt;br /&gt;            &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(SHCreateItemInKnownFolder(&lt;br /&gt;                                FOLDERID_Documents, &lt;br /&gt;                                KF_FLAG_DEFAULT, &lt;br /&gt;                                c_rgpszFiles[i], &lt;br /&gt;                                IID_PPV_ARGS(&amp;amp;psi)))&lt;br /&gt;                )&lt;br /&gt;            {&lt;br /&gt;                &lt;span style="color: #0000ff"&gt;if&lt;/span&gt;(!_IsItemInArray(psi, poaRemoved))&lt;br /&gt;                {&lt;br /&gt;                    poc-&amp;gt;AddObject(psi);&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;                psi-&amp;gt;Release();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        IObjectArray *poa;&lt;br /&gt;        hr = poc-&amp;gt;QueryInterface(IID_PPV_ARGS(&amp;amp;poa));&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;        {&lt;br /&gt;            pcdl-&amp;gt;AppendCategory(L&lt;span style="color: #006080"&gt;&amp;quot;Custom category&amp;quot;&lt;/span&gt;, poa);&lt;br /&gt;            poa-&amp;gt;Release();&lt;br /&gt;        }&lt;br /&gt;        poc-&amp;gt;Release();&lt;br /&gt;    }&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; hr;&lt;br /&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Another new interface that we use is the &lt;b&gt;IObjectCollection&lt;/b&gt; that represents a collection of objects that support &lt;b&gt;IUnknown. &lt;/b&gt;To this collection we add &lt;a href="http://msdn.microsoft.com/en-us/library/bb761144.aspx"&gt;&lt;b&gt;IShellItems&lt;/b&gt;&lt;/a&gt;. Each item (file) that we added to the Jump List is of an &lt;b&gt;&lt;i&gt;IShellItem&lt;/i&gt;&lt;/b&gt; type. In the above code, we created a Shell item object for a single file that exists inside a known folder, Documents. However, before we actually added the new item to the collection, we needed to determine if the user had already removed it. If the user explicitly removed an item from the Jump List, that item will be in the &lt;i&gt;Removed Items List&lt;/i&gt; (again associated with the AppID), and, as developers, we need to respect the user's requests and avoid adding that item to the Jump List. We already have the list of removed items, &lt;b&gt;&lt;i&gt;IObjectArray *poaRemoved&lt;/i&gt;&lt;/b&gt;, that we got when we called the &lt;strong&gt;BeginList(…) &lt;/strong&gt;function when we initiated creation of a new list. &lt;/p&gt;

&lt;p&gt;At this stage, you have a collection of Shell items that the user expects to see in the Jump List. Next we added that collection to the &lt;strong&gt;ICustomDestinationList &lt;/strong&gt;object and created a new category named “&lt;i&gt;Custom category&lt;/i&gt;”, &lt;strong&gt;pcdl-&amp;gt;AppendCategory (L&amp;quot;Custom category&amp;quot;, poa);&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;So now you have successfully created a new category in the Taskbar called “Custom category” and populated it with four items. However, our work is not done yet. The final step in the CreateJumpList function is to call CommitList() to end the “transaction” that began with calling BeginList(). Only after our call to CommitList()&lt;b&gt; &lt;/b&gt;are&lt;b&gt; &lt;/b&gt;the new category and new items displayed. Calling CommitList() causes the stored list of removed items to be cleared and a new Removed Items List to begin. The ICustomDestinationList interface provides a &amp;quot;transactional base&amp;quot; API. &lt;/p&gt;

&lt;p&gt;In order to ensure a positive end user experience, make sure that a safe copy of the new repopulated list is complete and ready for use, and that the only operation the Taskbar must perform is to switch the pointer to the new list. The end result looks like:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_3D4A7529.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_0E84BC87.png" width="451" height="367" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Using the &lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/05/18/windows-7-managed-code-apis.aspx" target="_blank"&gt;Windows API Code Pack&lt;/a&gt; we can write the same application using managed code.&lt;/p&gt;

&lt;p&gt;Once we are sure that we are using the same &lt;strong&gt;AppID&lt;/strong&gt; with all the Taskbar elements, we can create an instance of the Taskbar Jump List for the button that we are working on, as shown in the following code snippet. This code snippet is part of the &lt;strong&gt;CTOR&lt;/strong&gt; of the main application window:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #008000"&gt;// Set the application specific id&lt;/span&gt;&lt;br /&gt;Taskbar.AppId = appId;&lt;br /&gt;&lt;span style="color: #008000"&gt;// Retrieve the taskbar jump list&lt;/span&gt;&lt;br /&gt;jumpList = Taskbar.JumpList;&lt;br /&gt;category1 = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CustomCategory(&lt;span style="color: #006080"&gt;&amp;quot;Custom Category 1&amp;quot;&lt;/span&gt;);&lt;br /&gt;category2 = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CustomCategory(&lt;span style="color: #006080"&gt;&amp;quot;Custom Category 2&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;span style="color: #008000"&gt;// Add custom categories&lt;/span&gt;&lt;br /&gt;jumpList.CustomCategories.Add(category1);&lt;br /&gt;jumpList.CustomCategories.Add(category2);&lt;br /&gt;&lt;span style="color: #008000"&gt;// Default values for jump lists&lt;/span&gt;&lt;br /&gt;comboBoxKnownCategoryType.SelectedItem = &lt;span style="color: #006080"&gt;&amp;quot;Recent&amp;quot;&lt;/span&gt;;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Here you can see that we set the &lt;strong&gt;AppID&lt;/strong&gt; using the &lt;strong&gt;AppId&lt;/strong&gt; property and created an instance of the Taskbar Jump List using the Taskbar.&lt;strong&gt;JumpList&lt;/strong&gt; static property. We also create two categories, named Custom Category 1 and Custom Category 2. Next, we add these categories to the Jump List custom categories container. Last we set the Known category of this Taskbar Jump List to Recent. This will automatically get populated as described above. &lt;/p&gt;

&lt;p&gt;After we set up the custom category, it is time to put some content in it. To do so, we just need to call the &lt;b&gt;Add&lt;/b&gt; function to add a &lt;b&gt;JumpListItem&lt;/b&gt; to the &lt;b&gt;JumpListCollection&lt;/b&gt;. The &lt;strong&gt;JumpListItemCollection&lt;/strong&gt; is a generic collection (of&amp;lt;IJumpListItem&amp;gt;) holding &lt;b&gt;IJumpListItem &lt;/b&gt;items. &lt;strong&gt;IJumpListItem&lt;/strong&gt; item is basically some sort of wrapper for the native IShellItem. &lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #008000"&gt;// Specify path for shell item&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt; path = String.Format(&lt;span style="color: #006080"&gt;&amp;quot;{0}\\test{1}.txt&amp;quot;&lt;/span&gt;,&lt;br /&gt;                            executableFolder,&lt;br /&gt;                            category1.JumpListItems.Count);&lt;br /&gt;&lt;span style="color: #008000"&gt;// Add shell item to custom category&lt;/span&gt;&lt;br /&gt;category1.JumpListItems.Add(&lt;span style="color: #0000ff"&gt;new&lt;/span&gt; JumpListItem(path));&lt;/pre&gt;
&lt;/div&gt;

&lt;div&gt;First, we need to construct a path to the file we want to include in the Jump List. Please remember that we can call the Add function only if this file is local and accessible to your user. The above code (along with a few other methods that we will describe in future posts), results in a Taskbar dialog that looks like: &lt;/div&gt;

&lt;div&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_6D9149DF.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_4C9DD738.png" width="371" height="434" /&gt;&lt;/a&gt; &lt;/div&gt;

&lt;div&gt;Finally, we need to call the Taskbar.&lt;strong&gt;JumpList.RefreshTaskbarList() &lt;/strong&gt;Function. As with the native Jump List implementation, we need to “commit” the changes made to the Jump List. A closer look at this Refresh function (you have access to it in the Code Pack API) shows a call to the &lt;strong&gt;AppendCustomCategories&lt;/strong&gt; function that appends any custom categories to the Taskbar button Jump List. Within this function, you can find a managed code implementation of the native code shown above. It includes a call to the &lt;strong&gt;AppendCateogry&lt;/strong&gt; function that is a wrapper for the native &lt;strong&gt;AppendCategory&lt;/strong&gt; function above.&lt;/div&gt;

&lt;div&gt;&amp;#160;&lt;/div&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;IObjectCollection categoryContent =&lt;br /&gt;    (IObjectCollection)&lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CEnumerableObjectCollection();&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;// Add each link's shell representation to the object array&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #0000ff"&gt;foreach&lt;/span&gt; (IJumpListItem link &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; category.JumpListItems)&lt;br /&gt;    categoryContent.AddObject(link.GetShellRepresentation());&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;// Add current category to destination list&lt;/span&gt;&lt;br /&gt;HRESULT hr = customDestinationList.AppendCategory(&lt;br /&gt;    category.Name,&lt;br /&gt;    (IObjectArray)categoryContent);&lt;br /&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;div&gt;&amp;#160;&lt;/div&gt;

&lt;p&gt;As you can see, it is easy to opt into the Windows 7 Taskbar functionality. Windows automatically performs most of the work for you and, if you do need to create your own category, that is also very easy. &lt;/p&gt;

&lt;p&gt;In the next post we will describe how you can add new Tasks to the Jump List and how to register a file handler.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517510" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Developers/default.aspx">Developers</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Taskbar/default.aspx">Taskbar</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/.NET/default.aspx">.NET</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Sample+Code/default.aspx">Sample Code</category></item><item><title>Announcing the Windows 7 Upgrade Option Program &amp; Windows 7 Pricing – Bring on GA!</title><link>http://windowsteamblog.com/blogs/windows7/archive/2009/06/25/announcing-the-windows-7-upgrade-option-program-amp-windows-7-pricing-bring-on-ga.aspx</link><pubDate>Thu, 25 Jun 2009 13:00:28 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:517186</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>520</slash:comments><description>&lt;p&gt;Today we have some news to share around Windows 7 including answering what may be some of the “hottest” questions people have as we head toward General Availability (GA) on October 22nd. &lt;/p&gt;  &lt;p&gt;I had the opportunity to sit down with &lt;a href="http://www.microsoft.com/presspass/exec/brooks/"&gt;Brad Brooks&lt;/a&gt;, Corporate VP for Windows Consumer Marketing, to talk about today’s announcements. &lt;/p&gt;  &lt;p&gt;&lt;iframe src="http://www.microsoft.com/video/en/us/player/embed/48eaee9f-21a2-43b4-9c8d-3f18cb3a5206" allowtransparency="true" width="430" height="326" scrolling="no" frameborder="0"&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;a href="http://www.microsoft.com/video/en/us/details/48eaee9f-21a2-43b4-9c8d-3f18cb3a5206?vp_evt=eref&amp;amp;vp_video=Announcing+the+Windows+7+Upgrade+Option+Program+%26+Windows+7+Pricing"&gt;Announcing the Windows 7 Upgrade Option Program &amp; Windows 7 Pricing&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Special thanks to Brad for taking the time to talk through these details with me. You’ll find a transcript of the video &lt;a href="http://windowsteamblog.com/blogs/windows7/pages/windows-7-pricing-and-offers-q-amp-a-transcript.aspx"&gt;here&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;As Brad discussed in the video, today we’re announcing details for the Windows 7 Upgrade Option Program, pricing, and a special pre-order offer for select markets. &lt;/p&gt;  &lt;p&gt;But first, I want to talk a little bit more about GA and the worldwide availability of Windows 7. We’ve really focused a lot of our efforts on getting the product out to as many people around the world as quickly as possible. OEMs will start shipping PCs with Windows 7 in all language versions beginning on GA, October 22nd. &lt;/p&gt;  &lt;p&gt;And for our retail software, we’ve made significant strides in terms of timing. Gone are the days when it could take months for all language versions to be available. In fact – we’ve narrowed the gap to just over ONE week! &lt;/p&gt;  &lt;p&gt;On October 22nd, Windows 7 will be available in the following 14 languages: English, Spanish, Japanese, German, French, Italian, Dutch, Russian, Polish, Brazilian Portuguese, Korean, Simplified Chinese, Traditional Chinese and Chinese (Hong Kong).&lt;/p&gt;  &lt;p&gt;Then on October 31st, the remaining 21 languages will become available: Turkish, Czech, Portuguese, Hungarian, Swedish, Danish, Norwegian, Finnish, Greek, Ukrainian, Romanian, Arabic, Lithuanian, Bulgarian, Estonian, Slovenian, Hebrew, Thai, Croatian, Serbian Latin, and Latvian.&lt;/p&gt;  &lt;p&gt;Windows 7 truly is a global release and I’m excited to be able to tell my international friends that when I say Windows 7 will be available for the holidays – I mean &lt;i&gt;everywhere in the world. &lt;/i&gt;&lt;/p&gt;  &lt;p&gt;But, you don’t have to wait until GA to get a new Windows PC. In fact, we know many people need that new PC sooner – for back to school specifically. And we have the answer for people who need a new PC now but still want to get Windows 7 and that’s the &lt;b&gt;Windows 7 Upgrade Option Program&lt;/b&gt;, which kicks off tomorrow, June 26th! Anyone who buys a PC &lt;i&gt;from a participating OEM or retailer&lt;/i&gt; with Windows Vista Home Premium, Business or Ultimate on it will all receive an upgrade to the corresponding version of Windows 7 &lt;b&gt;at little or no cost to customers&lt;/b&gt;. The Windows 7 Upgrade Option Program will be available until January 31st, 2010 – and is global! For more information on taking advantage of the Windows 7 Upgrade Option Program, visit &lt;a href="http://www.microsoft.com/windows/buy/offers/upgrade.aspx"&gt;www.windows.com/upgradeoffer&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Another one of the most common questions I get is: how much will Windows 7 cost? Well, today we’re sharing these details. &lt;/p&gt;  &lt;p&gt;For Windows 7, we are reducing the price on our most popular retail product for customers, the Home Premium Upgrade, by approximately 10% (depending on the market). In the U.S., this means a customer buying Windows 7 Home Premium upgrade will pay only $119.99 instead of the $129.99 being charged today for its predecessor. &lt;/p&gt;  &lt;p&gt;Overall, customers will be paying less and getting more with Windows 7. This includes fun new features such as HomeGroup, Device Stage, Aero Shake, Snap, Peek, Jump Lists and our completely redesigned Windows Taskbar (one of my favorite new features in Windows 7 today). These new features make your PC simpler and much easier to use. &lt;/p&gt;  &lt;p&gt;So here’s the low-down on pricing for Windows 7. The estimated retail prices for &lt;b&gt;upgrade&lt;/b&gt; packaged retail product of Windows 7 in the U.S. are: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Windows 7 Home Premium (Upgrade):&lt;/b&gt; $119.99 &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Windows 7 Professional (Upgrade):&lt;/b&gt; $199.99 &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Windows 7 Ultimate (Upgrade):&lt;/b&gt; $219.99 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;And the estimated retail prices for &lt;b&gt;full&lt;/b&gt; packaged retail product of Windows 7 in the U.S. are: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Windows 7 Home Premium (Full):&lt;/b&gt; $199.99 &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Windows 7 Professional (Full):&lt;/b&gt; $299.99 &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Windows 7 Ultimate (Full):&lt;/b&gt; $319.99 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This means that Windows 7 Home Premium full retail product is &lt;i&gt;$40.00 less&lt;/i&gt; than Windows Vista Home Premium today. &lt;/p&gt;  &lt;p&gt;As Brad describes in the video, for Europe, we will not have a separate upgrade SKU for the packaged retail product versions of Windows 7 at GA. But we will be offering upgrade pricing on our full licenses to make sure that European customers who want to upgrade have the pricing options available in the rest of the world.&lt;/p&gt;  &lt;p&gt;Finally, as a way of saying thank you to our loyal Windows customers, we are excited to introduce a special time limited offer! &lt;b&gt;We will offer people in select markets the opportunity to pre-order Windows 7 at a more than 50% discount&lt;/b&gt;. In the US, this will mean you can pre-order Windows 7 Home Premium for USD $49.99 or Windows 7 Professional for USD $99.99. You can take advantage of this special offer online via select retail partners such as Best Buy or Amazon, or the online &lt;a href="http://store.microsoft.com/home.aspx"&gt;Microsoft Store&lt;/a&gt; (in participating markets). &lt;/p&gt;  &lt;p&gt;This program begins tomorrow in the U.S., Canada and Japan. The offer ends July 11th in the U.S. and Canada and on July 5th for Japan or while supplies last. Customers in the UK, France and Germany, can pre-order their copy of Windows 7 starting July 15th and will run until August 14th (or supplies last) to ensure folks don’t miss out on this. Act fast if you want to be the first in line to get Windows 7 at this screaming deal!&lt;i&gt; Note: The special low pre-order price will vary per country.&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;For more information on this special pre-order offer, &lt;a href="http://www.microsoft.com/windows/buy/offers/pre-order.aspx"&gt;click here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;I am really excited to be sharing these Windows 7 announcements with you today. Because of the great feedback we received from you, we are confident we are poised to deliver a great product this fall!&lt;/p&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fwindowsteamblog.com%2fblogs%2fwindows7%2farchive%2f2009%2f06%2f25%2fannouncing-the-windows-7-upgrade-option-program-amp-windows-7-pricing-bring-on-ga.aspx&amp;amp;title=Announcing+the+Windows+7+Upgrade+Option+Program+%26+Windows+7+Pricing+%e2%80%93+Bring+on+GA!"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=517186" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Announcement/default.aspx">Announcement</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7+Professional/default.aspx">Windows 7 Professional</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7+Home+Premium/default.aspx">Windows 7 Home Premium</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7+Ultimate/default.aspx">Windows 7 Ultimate</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/General+Availability/default.aspx">General Availability</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7+Upgrade+Option+Program/default.aspx">Windows 7 Upgrade Option Program</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Pricing/default.aspx">Pricing</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Brad+Brooks/default.aspx">Brad Brooks</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Offers/default.aspx">Offers</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Pre-order/default.aspx">Pre-order</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Global/default.aspx">Global</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/International/default.aspx">International</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/International+Availability/default.aspx">International Availability</category></item><item><title>Check out the New Windows 7 Packaging</title><link>http://windowsteamblog.com/blogs/windows7/archive/2009/06/23/check-out-the-new-windows-7-packaging.aspx</link><pubDate>Wed, 24 Jun 2009 01:22:24 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516887</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>308</slash:comments><description>&lt;p&gt;&lt;em&gt;Simple, Clean and Easy To Open…&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;We approached the packaging for Windows 7 the same way we approached the product – by listening to what our customers told us they wanted: make it a simple clean design, easy to open, and reduce waste.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/Win7_5F00_HomePremium_5F00_3DL_5F00_0E89DFD3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Windows 7 Home Premium" border="0" alt="Windows 7 Home Premium" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/Win7_5F00_HomePremium_5F00_3DL_5F00_thumb_5F00_06FE7066.jpg" width="150" height="188" /&gt;&lt;/a&gt; &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/Win7_5F00_Professional_5F00_3DL_5F00_26AD4A2E.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Windows 7 Professional" border="0" alt="Windows 7 Professional" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/Win7_5F00_Professional_5F00_3DL_5F00_thumb_5F00_34135D34.jpg" width="150" height="188" /&gt;&lt;/a&gt; &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/Win7_5F00_Ultimate_5F00_3DL_5F00_1AAB59FA.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Windows 7 Ultimate" border="0" alt="Windows 7 Ultimate" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/Win7_5F00_Ultimate_5F00_3DL_5F00_thumb_5F00_7A241A47.jpg" width="150" height="188" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Simple Design&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Customers told us they liked the big bold Windows logo and how it clearly communicates that it’s Windows 7. They like larger typefaces to make it easy to read. They also like the background colors for each edition that make it easier to differentiate between Windows 7 Home Premium all the way to Windows 7 Ultimate. In their own words, the “clean” design gives off a “fresh” feel. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Make It Easy To Open&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;We’ve reduced the number of elements in the package down to three: the plastic case, the paper sleeve, and a simple Getting Started Guide. The plastic case opens easily like a standard DVD case and it will have a single easy-to-remove seal at the top - and that’s it! &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/DSCN0370_5F00_04E1719D.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Opens like a book!" border="0" alt="Opens like a book!" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/DSCN0370_5F00_thumb_5F00_4AF22EB0.jpg" width="300" height="225" /&gt;&lt;/a&gt; &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/image_5F00_2A6AEEFE.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Getting Started Guide Cover" border="0" alt="Getting Started Guide Cover" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windows7/image_5F00_thumb_5F00_707BAC11.png" width="157" height="225" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Reduce Waste&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The plastic case protecting the Windows 7 disk is lighter and is recyclable. The packaging itself has a 37% weight reduction and the econometrics score has improved by 50% over it’s predecessor.&lt;b&gt; &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Essentially, the packaging is what customers told us they were most interested in picking up to learn more about Windows 7. We hope you do the same. &lt;/p&gt;  &lt;p&gt;Look for the new Windows 7 packaging to hit this fall!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516887" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/General+Availability/default.aspx">General Availability</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Packaging/default.aspx">Packaging</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Getting+Started+Guide/default.aspx">Getting Started Guide</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Boxshots/default.aspx">Boxshots</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Retail/default.aspx">Retail</category></item><item><title>Lenovo Announces New T-Series ThinkPad Laptop – The T400s</title><link>http://windowsteamblog.com/blogs/windowsexperience/archive/2009/06/23/lenovo-announces-new-t-series-thinkpad-laptop-the-t400s.aspx</link><pubDate>Tue, 23 Jun 2009 21:14:09 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516854</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Lenovo &lt;a href="http://www.lenovo.com/news/us/en/2009/06/ThinkPad_T400s.html"&gt;announced today&lt;/a&gt; a new T-Series ThinkPad Laptop called the &lt;b&gt;T400s&lt;/b&gt;. Lenovo’s T-Series laptops cater to business customers looking for a powerful and thin laptop. Lenovo put a lot of effort in designing this laptop to be light, durable, robust, and powerful – key elements to a great business laptop for the &lt;b&gt;mobile worker&lt;/b&gt;. I’ve had the chance to play with a T400s here in my office for the last few days and it has been a great experience so far. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0598_5F00_2107D228.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0598" border="0" alt="DSC_0598" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0598_5F00_thumb_5F00_00BD15AB.jpg" width="240" height="160" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The T400s will ship with the following specs:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Choices of Intel 2.53 GHz Core2Duo processors and graphics &lt;/li&gt;    &lt;li&gt;Choices of up to 128GB SSD or 250GB hard drive storage &lt;/li&gt;    &lt;li&gt;9.5 mm slim DVD burner or Blu-Ray player &lt;/li&gt;    &lt;li&gt;Ethernet (Gigabit) &amp;amp; WiFi &lt;/li&gt;    &lt;li&gt;Optional WiMAX, WWAN, Bluetooth and Ultra-wideband Connectivity &lt;/li&gt;    &lt;li&gt;34mm Express Card slot or 5-in-1 multimedia card reader &lt;/li&gt;    &lt;li&gt;Almost 6 hours of battery life &lt;/li&gt;    &lt;li&gt;Display Port and VGA connectors (Supports 2 External Monitors!) &lt;/li&gt;    &lt;li&gt;Energy Star 5.0 Compliant &lt;/li&gt;    &lt;li&gt;2 Built-in USB Ports &lt;/li&gt;    &lt;li&gt;1 Built-in eSATA/USB Combo Port (Total of 3 USB Ports) &lt;/li&gt;    &lt;li&gt;Fingerprint Reader &lt;/li&gt;    &lt;li&gt;TPM 1.2 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0618_5F00_6E081BF3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0618" border="0" alt="DSC_0618" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0618_5F00_thumb_5F00_5B8FA571.jpg" width="240" height="160" /&gt;&lt;/a&gt; &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0619_5F00_6527EDDA.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0619" border="0" alt="DSC_0619" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0619_5F00_thumb_5F00_44347B33.jpg" width="240" height="160" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;As you can see, with these specs the T400s is quite powerful. It also can come jam-packed with network connectivity options (including support for Mobile Broadband) helping keep you connected no matter where you go. Because security is super important to the Mobile Worker – the T400s comes with a Fingerprint Reader and TPM 1.2. With TPM 1.2, BitLocker can be used in both Windows Vista and Windows 7 to secure the laptop. You also get your choice of storage. My T400s had a 250GB hard drive. &lt;/p&gt;  &lt;p&gt;The design of the T400s is pretty slick. The T400s uses Lenovo’s “Top Cover Roll Cage”, which they first introduced with the X300, in the construction of its frame. This roll cage is made out of reinforced monocoque carbon fiber which is the same stuff they use on airplanes and super-fast cars. This keeps the T400s pretty light. It weighs in at just under 4lbs (with a 6 cell battery) which is about 20% less than its T400 predecessor. A non-SSD hard drive may also add some weight to the laptop as well as they tend to be a little bit heavier. But Lenovo gives you the choice to choose (as mentioned above). &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0614_5F00_0AB16B3C.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0614" border="0" alt="DSC_0614" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0614_5F00_thumb_5F00_29F4120F.jpg" width="240" height="160" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This is a pretty thin laptop, measuring in at 0.83 inches (yes, I measured!). Part of the ability to keep this laptop so thin is that Lenovo uses a very thin 14.1 inch LED screen. &lt;/p&gt; &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0587_5F00_577531D2.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0587" border="0" alt="DSC_0587" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0587_5F00_thumb_5F00_28AF7930.jpg" width="240" height="160" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;/p&gt;  &lt;p&gt;For the T400s, Lenovo tweaked the keyboard a bit. The keys are much closer to each other – likely to prevent gunk from getting underneath. The Delete and ESC keys are also larger. &lt;/p&gt;  &lt;p&gt;The touchpad is now flush with the palm rest and is textured to help people feel its location.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0589_5F00_4F115C7B.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0589" border="0" alt="DSC_0589" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0589_5F00_thumb_5F00_074FD394.jpg" width="240" height="160" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I also discovered that the T400s has an “always on” USB port in the back. This means that if the system is in sleep/standby or hibernate mode you can still plugin devices like MP3 players or mobile phones and have them charge off the laptop’s battery. &lt;/p&gt;  &lt;p&gt;Another very interesting aspect of this laptop is how Lenovo optimized it for VoIP. Many businesses are utilizing VoIP for their communications. This laptop can essentially serve as your communication hub when you’re out-and-about. Lenovo added a new toggle switch at the top of the keyboard so that you can easily increase and decrease your system volume – putting the user in more control of their audio. I’m told this will become a standard for all Lenovo laptops going forward. The speaker volume has been amped up to be more than 2x greater than audio levels see on the T400. And the speakers themselves have been moved to the sides instead of on the palm rest area seen on the X300 series laptops. &lt;/p&gt; &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0592_5F00_1FDF70E4.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DSC_0592" border="0" alt="DSC_0592" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/DSC_5F00_0592_5F00_thumb_5F00_26264772.jpg" width="240" height="160" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Lenovo put 2 digital microphones in for better recording. The dual microphones are expected to cut down the amount of ambient noise picked up during your VoIP calls and improve clarity with sound. And of course you can have audio without video. The T400s comes with built in 2.0 megapixel webcam that can shoot video up to 30fps. The webcam also has “Lower Light Capture Capability” to capture decent video is very low-lit conditions. &lt;/p&gt;  &lt;p&gt;Lenovo puts Windows Vista Business or Windows Vista Ultimate on their business laptops. The T400s I have came with Windows Vista Business.&lt;/p&gt;  &lt;p&gt;However I decided to put Windows 7 (the Windows 7 RC) on it. Instead of upgrading from Windows Vista, I did a clean install. Windows 7 picked up most of the drivers with updates to many of them available for me on Windows Update. I had everything up and running very quickly. &lt;/p&gt;  &lt;p&gt;With Windows 7 and the T400s, I am able to secure the laptop with a variety of features from Windows 7. Windows 7 has BitLocker (which we introduced with Windows Vista). Using TPM, I was able to encrypt the hard drive of the laptop to ensure if the laptop ever gets lost so that no one can get the data off the hard drive. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/biometric_5F00_lenovo_5F00_77CCC1C4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="biometric_lenovo" border="0" alt="biometric_lenovo" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/biometric_5F00_lenovo_5F00_thumb_5F00_76F45BDA.png" width="350" height="276" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Windows 7 has &lt;a href="http://windowsteamblog.com/blogs/windows7/archive/2009/01/08/windows-7-puts-it-s-finger-on-enhanced-biometric-support.aspx"&gt;a new biometric framework&lt;/a&gt; and in combination with UPEK’s biometric software – I was able to quickly enroll fingerprints for a further enhanced security. UPEK takes advantage of Windows 7’s biometric enhancements. This process was incredibly easy. As mentioned above, the T400s can come with built in Mobile Broadband. Windows 7 brings enhancements &lt;a href="http://windowsteamblog.com/blogs/windows7/archive/2009/02/17/partners-to-support-native-windows-7-mobile-broadband.aspx"&gt;that take advantage of Mobile Broadband&lt;/a&gt; making it easy to connect and stay connected. &lt;/p&gt;  &lt;p&gt;I had fun playing with this laptop. Special thanks to Lenovo for the opportunity!&lt;/p&gt;  &lt;p&gt;The Lenovo ThinkPad T400s will become available at &lt;a href="http://www.lenovo.com"&gt;www.lenovo.com&lt;/a&gt; starting at $1,599.&lt;/p&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fwindowsteamblog.com%2fblogs%2fwindowsexperience%2farchive%2f2009%2f06%2f23%2flenovo-announces-new-t-series-thinkpad-laptop-the-t400s.aspx&amp;amp;title=Lenovo+Announces+New+T-Series+ThinkPad+Laptop+%e2%80%93+The+T400s"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516854" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Laptop/default.aspx">Laptop</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Security/default.aspx">Security</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Biometrics/default.aspx">Biometrics</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/BitLocker/default.aspx">BitLocker</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Mobile+Broadband/default.aspx">Mobile Broadband</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Lenovo/default.aspx">Lenovo</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Mobile+Worker/default.aspx">Mobile Worker</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/ThinkPad/default.aspx">ThinkPad</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Biometric+Framework/default.aspx">Windows Biometric Framework</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/TPM/default.aspx">TPM</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Partner/default.aspx">Partner</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Business/default.aspx">Business</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/T-Series/default.aspx">T-Series</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/T400s/default.aspx">T400s</category></item><item><title>Sheraton to Deploy Windows 7 Across Link@Sheraton Locations</title><link>http://windowsteamblog.com/blogs/windows7/archive/2009/06/23/sheraton-to-deploy-windows-7-across-link-sheraton-locations.aspx</link><pubDate>Tue, 23 Jun 2009 19:03:39 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516847</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;Today at HITEC (Hospitality Industry Technology Exposition and Conference) in Anaheim, CA, Sheraton Hotel &amp;amp; Resorts announced their plans to roll-out Windows 7 across their “Link@Sheraton” locations. I was able to chat with Mark McBeth who is the Vice President of IT for Starwood Hotels &amp;amp; Resorts (the parent company for Sheraton) to get some more details and insight into their plans:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Brandon LeBlanc: &lt;/b&gt;So tell me about the Link@Sheraton and your Windows 7 plans.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mark McBeth: &lt;/b&gt;The Link@Sheraton is a social area in the lobbies of some of our Sheraton hotels that includes computers and technology resources for our guests. We’re working closely with Microsoft and will have Windows 7 available on the Link@Sheraton machines in select Sheraton locations later this summer – that’s before Windows 7 is even publicly available. What’s great about this arrangement is that our customers will be able to experience Windows 7, get a feel for some of the new features, and experiment with some of the applications we’ve developed in cooperation with Microsoft specifically for Link@Sheraton – all while being connected with the latest technologies.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Brandon LeBlanc: &lt;/b&gt;How is this deployment impacting your IT Department on the back-end?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mark McBeth: &lt;/b&gt;It’s allowing us to develop our knowledge base on Windows 7. We support 480 hotels across North America and the deployment at the Link@Sheraton locations is serving as our testing grounds for a broader deployment across our national infrastructure.&amp;#160; So it’s serving two purposes: customer satisfaction for our hotel guests, and hands-on experience with the OS for our IT Pros. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Brandon LeBlanc: &lt;/b&gt;What’s the general feedback you’ve received from your IT Pros on Windows 7 thus far?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mark McBeth: &lt;/b&gt;From an IT perspective, we’ve received positive feedback on the performance and stability. For us, those are the very first things we look for in an OS for Sheraton. Stemming from the encouraging results we saw with our initial tests running Windows 7 on the Link@Sheraton machines, we expanded our current deployment to some of our production machines. We have about 40-50 machines at this point and once the general release comes later this fall, we plan to make Windows 7 our standard OS and begin to refresh our entire business operations environment.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Brandon LeBlanc: &lt;/b&gt;What’s the best thing about the Link@Sheraton and Windows 7?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mark McBeth: &lt;/b&gt;It's a competitive differentiator -- we're using the latest technology to help our customers get their work done or bring them closer to their families when they're traveling. The Link allows them to do this in the lobby area instead of in some far away corner like in many other hotels.&amp;#160; Plus, Windows 7 just works the way you want.&amp;#160; It makes the user experience simpler, faster, easier and more fun - some of the computers in our lobbies will even have touch screen capabilities available for our customers to try.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Brandon LeBlanc: &lt;/b&gt;Thanks for chatting with me, Mark – I look forward to hearing more about Sheraton’s deployment down the line.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mark McBeth: &lt;/b&gt;Thanks, Brandon.&lt;/p&gt;  &lt;p&gt;&lt;i&gt;For more information on Windows 7 being deployed across select Link@Sheraton sites, check out the PressPass feature &lt;a href="http://www.microsoft.com/presspass/features/2009/Jun09/06-23SheratonWin7.mspx"&gt;here&lt;/a&gt;. &lt;/i&gt;&lt;/p&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fwindowsteamblog.com%2fblogs%2fwindows7%2farchive%2f2009%2f06%2f23%2fsheraton-to-deploy-windows-7-across-link-sheraton-locations.aspx&amp;amp;title=Sheraton+to+Deploy+Windows+7+Across+Link%40Sheraton+Locations"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516847" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Sheraton+Hotels+_2600_+Resorts/default.aspx">Sheraton Hotels &amp; Resorts</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Link_4000_Sheraton/default.aspx">Link@Sheraton</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Customer/default.aspx">Customer</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/IT/default.aspx">IT</category><category domain="http://windowsteamblog.com/blogs/windows7/archive/tags/Deployment/default.aspx">Deployment</category></item><item><title>Windows 7 Release Candidate downloads will end August 15th</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/23/windows-7-release-candidate-downloads-will-end-august-15th.aspx</link><pubDate>Tue, 23 Jun 2009 16:39:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516844</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>77</slash:comments><description>&lt;p&gt;Still on the Windows 7 Beta,? You need to move to the RC and fast. Starting July 1st, the Beta will start to reboot every 2 hrs and expire Aug 1st. &lt;/p&gt;
&lt;p&gt;Want to download the RC? The RC download program closes August 15. After that, you won&amp;rsquo;t be able to get the download, but you can still install the RC and get a key if you need one. (To get a key, just go to the &lt;a href="http://technet.microsoft.com/en-us/evalcenter/dd353205.aspx?ITPID=wcfeed"&gt;Downloads&lt;/a&gt; page and follow the instructions.) &lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re using the Windows 7 Release Candidate, we hope you like what you see. Let us know - go to &lt;a href="http://input.microsoft.com "&gt;http://input.microsoft.com &lt;/a&gt;and tell us what you think. You&amp;rsquo;ll be able to give feedback on various aspects of the operating system.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516844" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7+Beta/default.aspx">Windows 7 Beta</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7+Release+Candidate/default.aspx">Windows 7 Release Candidate</category></item><item><title>Application Compatibility Roundtable Promo</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/22/application-compatibility-roundtable-promo.aspx</link><pubDate>Tue, 23 Jun 2009 06:00:52 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516839</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>4</slash:comments><description>&lt;p&gt;&lt;b&gt;Our latest Virtual Roundtable on Application Compatibility was another great success. Thank you to all our viewers who tuned in live to watch it last week.&lt;/b&gt; &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Missed it? Well, here is a promo video of some of the highlights. Watch for details later this week here on where to view the full program. &lt;/b&gt;&lt;/p&gt; &lt;embed src="http://images.video.msn.com/flash/soapbox1_1.swf" width="432" height="364" id="evdfjukb" type="application/x-shockwave-flash" allowFullScreen="true" allowScriptAccess="always" pluginspage="http://macromedia.com/go/getflashplayer" flashvars="c=v&amp;v=7372d3d7-4c99-4561-9591-7fd338650d58&amp;ifs=true&amp;fr=msnvideo&amp;mkt=en-US"&gt;&lt;/embed&gt;&lt;noembed&gt;&lt;br/&gt;&lt;a href="http://video.msn.com/video.aspx?vid=7372d3d7-4c99-4561-9591-7fd338650d58" target="_new" title="VRT Promo"&gt;Video: VRT Promo&lt;/a&gt;&lt;/noembed&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516839" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Mark+Russinovich/default.aspx">Mark Russinovich</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/App+Compat/default.aspx">App Compat</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Application+Compatability/default.aspx">Application Compatability</category></item><item><title>You’ve angered the great Master Russinovich!</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/22/you-ve-angered-the-great-master-russinovich.aspx</link><pubDate>Tue, 23 Jun 2009 03:24:44 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516835</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;If you’re anything like me and you love XBOX and IT as much as I do, you’ll get a kick out of this video. Trevor and Sam are back for their 3rd installment in the Talkin’ IT series. This time Sam has a “spinning green doughnut” that is taunting him. It’s the Great Master Russinovich and SysInternals to the rescue! Will Sam downgrade to Windows XP? Will he learn how to cut the fat from his MSCONFIG files? Will Trevor figure out what’s up with Mr. Canfield’s toupee? Watch and find out! &lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:61a14d9b-7a08-4701-b23f-8709c2f87d2d" class="wlWriterEditableSmartContent"&gt;&lt;div&gt;&lt;embed src="http://images.video.msn.com/flash/soapbox1_1.swf" quality="high" width="432" height="364" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://macromedia.com/go/getflashplayer" flashvars="c=v&amp;v=620ac630-9379-4743-b22b-ba851318e968&amp;from=writer&amp;mkt=en-US"&gt;&lt;/embed&gt;&lt;/div&gt;&lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;(Yes, we like to have a little fun as we attempt to inform IT professionals like yourself about Windows 7.)&lt;/p&gt;  &lt;p&gt;If you aren’t familiar with &lt;a href="http://www.talkingaboutwindows.com" target="_blank"&gt;Talking About Windows.com&lt;/a&gt;, Brandon did a piece on our first viral video &lt;a href="http://windowsteamblog.com/blogs/windowsexperience/archive/2009/04/27/talking-about-windows.aspx" target="_blank"&gt;here&lt;/a&gt;. But in all seriousness, we have a lot to say about the performance enhancements in Windows 7. OS optimization has been a key area of focus for us her at Microsoft. &lt;/p&gt;  &lt;p&gt;Watch for new videos next week from key members of the engineering team and from IT pros like yourself.&lt;/p&gt;  &lt;p&gt;So keep the comments coming and don’t forget to ask your questions to our Windows 7 Engineering team by joining the conversation at &lt;a href="http://www.talkingaboutwindows.com" target="_blank"&gt;Talking About Windows.com&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516835" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Mark+Russinovich/default.aspx">Mark Russinovich</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Talking+About+Windows/default.aspx">Talking About Windows</category></item><item><title>Developing for the Windows 7 Taskbar – Jump into Jump Lists – Part 1</title><link>http://windowsteamblog.com/blogs/developers/archive/2009/06/22/developing-for-the-windows-7-taskbar-jump-into-jump-lists-part-1.aspx</link><pubDate>Tue, 23 Jun 2009 00:07:24 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516831</guid><dc:creator>Yochay Kiriaty</dc:creator><slash:comments>15</slash:comments><description>&lt;p&gt;Welcome to yet another Windows 7 Taskbar post. In the previous post, &lt;i&gt;&lt;a href="http://windowsteamblog.com/blogs/developers/archive/2009/06/18/developing-for-the-windows-7-taskbar-application-id.aspx"&gt;Developing for the Windows 7 Taskbar – Get to Know Your Application ID&lt;/a&gt; &lt;/i&gt;, we introduced a very important component of the underlying architecture of the Taskbar, the Application ID (AppID), which is the key controller of how different applications are grouped under the same Taskbar button. The AppID also has a direct affect on how Jump List items are aggregated and populated in the Jump List. &lt;/p&gt;  &lt;p&gt;Microsoft designed the Windows 7 Taskbar to provide users with &lt;b&gt;quick and easy&lt;/b&gt; access to those “things” they use most frequently. “Things” can be any type of content such as pictures, music, word documents or links and shortcuts to applications or folders, or any other type of “clickable” item in Windows. By quick and easy access, we mean the ability to access commonly used programs with a single mouse click or with a significantly reduced number of clicks per operation. Quick and easy access also means users should be able to “jump” directly to those things they want to work with and start working with them in a single mouse click. To provide this functionality, the Windows 7 Taskbar introduces the concept of “Jump Lists.” More info about the reasons and background for creating the Taskbar Jump List can be found in Chaitanya’s &lt;a href="http://blogs.msdn.com/e7/archive/2008/11/20/happy-anniversary-windows-on-the-evolution-of-the-taskbar.aspx"&gt;Engineering Windows 7: The Windows 7 Taskbar&lt;/a&gt; post, and &lt;a href="http://channel9.msdn.com/posts/yochay/Windows-7-New-Taskbar-an-overview/"&gt;Windows 7 New Taskbar - An Overview&lt;/a&gt; video on Channel 9.&lt;/p&gt;  &lt;p&gt;As much as I love talking about the reasons for creating the new Taskbar (since I love user functionality and usability in general) I am going to focus on the API for using the Taskbar. As a developer, you should think of a Jump List as your application's own mini Start Menu. Jump Lists bring to the surface commonly used destinations (nouns) and tasks (verbs) of a program. This enables easy user access to destinations by eliminating the need to launch the application and then load the relevant content, or by performing common tasks without launching the application in advance. The following picture illustrates how Jump Lists work with Microsoft Office Word 2007. You can see that under the “Recent” category, there is a list of recent documents that I’ve used with Office Word. Clicking on one of the items in the “Recent” list will launch Office Word with the relevant document already loaded.&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="564"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="287"&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_04084771.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_1578A849.png" width="268" height="365" /&gt;&lt;/a&gt; &lt;/td&gt;        &lt;td valign="top" width="275"&gt;         &lt;br /&gt;We previously identified Word 2007 as an example of an application that “plays” nicely with the Windows 7 Taskbar even if that application was released a long time before the Windows 7 Taskbar was available. The Taskbar buttons are all grouped under the same Taskbar icon and the Jump list is automatically populated with the most recently used Word documents. In the next post, I will explain in detail how Jump List are populated automatically like Office Word 2007 and word documents. For this post, let’s focus on the different Jump Lists players.           &lt;br /&gt;          &lt;br /&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;The default Out-of-The-Box tasks that are shipped provide the means to launch a new instance of the application, to pin or unpin an application to the taskbar, and to close the application. You can access the Jump List by right clicking on an application icon in the Taskbar. However, as the following picture illustrates, you can opt to take more control of the Taskbar experience by customizing the context of the Jump List for your application.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_26E90921.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_5B1D3267.png" width="542" height="285" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Definitions from the Windows 7 SDK:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;”… &lt;b&gt;&lt;i&gt;Destinations&lt;/i&gt;&lt;/b&gt; are items that appear in the &lt;i&gt;Recent&lt;/i&gt;, &lt;i&gt;Frequent,&lt;/i&gt; or custom categories (the 'Important' category in the diagram above), based on the user’s item usage. Destinations can be files, folders, Web sites, or other content-based items, but are not necessarily file-backed. Destinations can be pinned to or removed from the Jump List by the user. They are generally represented by IShellItem objects, but they can also be IShellLink objects…”&lt;/p&gt;  &lt;p&gt;”…&lt;b&gt;&lt;i&gt;Tasks&lt;/i&gt;&lt;/b&gt; are common actions performed in applications that apply to all users of the application regardless of the individual usage patterns. Task can’t be pinned or removed. Tasks are represented by IShellLink objects because they are actually links (with parameters – optional) to commands – 'Actions'…”&lt;/p&gt;  &lt;p&gt;As developer, you can: &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;b&gt;Control Application Destinations&lt;/b&gt; (that is control the items you want users to be able to “Jump” directly into and start working on)       &lt;ol&gt;       &lt;li&gt;Destinations can be any one of the known categories such as &lt;i&gt;Recent&lt;/i&gt; or &lt;i&gt;Frequent.&lt;/i&gt; &lt;/li&gt;        &lt;li&gt;The &lt;i&gt;Custom&lt;/i&gt; category is just like any other Destination category, except that it allows you to create a &lt;b&gt;new &lt;/b&gt;name for that category as well as populate it with items of your choice. &lt;/li&gt;        &lt;li&gt;The &lt;i&gt;Pinned&lt;/i&gt; category is provided for pinned items that users want to keep permanently in their Jump Lists. Please note: &lt;b&gt;ONLY users&lt;/b&gt; can pin items in the Jump List, there is NO supported programmatic way that you, as developer, can pin an item. &lt;/li&gt;        &lt;li&gt;You can completely remove the Pinned category from the Jump List so the user cannot pin items – but you might want to think twice before preventing users from pinning items in your application. &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Define Common User Tasks&lt;/b&gt;       &lt;ol&gt;       &lt;li&gt;The Taskbar surfaces its own out-of-the-box tasks such as launching, pinning/unpinning, or closing the application. As developers we have &lt;b&gt;no control&lt;/b&gt; over the Taskbar Tasks. However, we do control the User Tasks. &lt;/li&gt;        &lt;li&gt;User Tasks are common tasks the application developer wants to surface at the Jump List level that will enable users to perform a task directly from the Jump List (for example, &lt;i&gt;Play all&lt;/i&gt; music in media player without switching to media player). Usually, this will result in launching an instance of the application and performing the task, or launching another application, like Internet Explorer, when clicking on the “Go to MSN Home Page” task in the Windows Live Messenger Jump List as shown in the next picture. Again, all of the above Jump List functionality saves time and reduces the number of clicks needed to achieve the user's end goal, thereby making the user happy. &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_4148FC38.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_329E5053.png" width="233" height="364" /&gt;&lt;/a&gt;In the next post, we will dive into the Taskbar Jump List API. But first, we need to address the Taskbar programming model. The Taskbar exposes its set of APIs like any other Windows Shell component, through a set of COM interfaces. However, there are a few actions we developers can do even before starting to use the Windows Taskbar COM APIs. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516831" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Developers/default.aspx">Developers</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Taskbar/default.aspx">Taskbar</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/.NET/default.aspx">.NET</category></item><item><title>MAP 4.0 Beta now available!</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/19/map-4-0-beta-now-available.aspx</link><pubDate>Fri, 19 Jun 2009 18:52:51 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516773</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;Our friends over in the Solution Accelerators team just released the beta version of the Microsoft Assessment and Planning tool (MAP) 4.0.&amp;#160; Many of you have discovered just how valuable these Solution Accelerators have been, based on the feedback we receive.&amp;#160; We want to bring this particular release to your attention, since assessing your current environment is a critical first step to see how ready your organization is for a Windows 7 deployment.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/MAPUI40beta_5F00_5D202F3C.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="MAP-UI-4-0-beta" border="0" alt="MAP-UI-4-0-beta" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/MAPUI40beta_5F00_thumb_5F00_155EA655.jpg" width="471" height="354" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In the case of the Microsoft Assessment and Planning tool, this agentless and scalable toolkit has the ability to discover all computers within Active Directory and workgroup environments. It performs key functions that include hardware and device inventory, hardware compatibility analysis, and generation of actionable, environment-specific IT proposals for migration to most major Microsoft technologies.&lt;/p&gt;  &lt;p&gt;For more information, head over to Baldwin Ng’s team blog posting &lt;a href="http://blogs.technet.com/MAPBLOG/"&gt;here&lt;/a&gt;.&amp;#160; You might already know Baldwin as our resident expert on the &lt;a href="http://technet.microsoft.com/en-us/windows/aa905090.aspx"&gt;Springboard Performance and Hardware compatibility zone&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516773" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows7/default.aspx">Windows7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/MAP/default.aspx">MAP</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Beta/default.aspx">Beta</category></item><item><title>Developing for the Windows 7 Taskbar – Application ID – Part 2</title><link>http://windowsteamblog.com/blogs/developers/archive/2009/06/19/developing-for-the-windows-7-taskbar-application-id-part-2.aspx</link><pubDate>Fri, 19 Jun 2009 17:06:55 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516770</guid><dc:creator>Yochay Kiriaty</dc:creator><slash:comments>9</slash:comments><description>&lt;p&gt;[June 19th - I added a code sample and new screenshots.]&lt;/p&gt;  &lt;p&gt;In response to some of the comments I included a link to the download and new screenshots to show the effect of changing Application ID in run time. And Just to make sure we are all on the same page here are two images to illustrate the power of AppID. You can clearly see that the same application (with the same original application ID) can have two different Taskbar buttons. You can also &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers.CodeSamples/Taskbar-Application-ID.zip" target="_blank"&gt;download the code for this application&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/Taskbar_5F00_buttons_5F00_Multiplebuttone1_5F00_411DB221.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Taskbar_buttons_Multiplebuttone1" border="0" alt="Taskbar_buttons_Multiplebuttone1" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/Taskbar_5F00_buttons_5F00_Multiplebuttone1_5F00_thumb_5F00_2668EE0A.png" width="558" height="340" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/Taskbar_5F00_buttons_5F00_Multiplebuttone2_5F00_2891FEA1.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Taskbar_buttons_Multiplebuttone2" border="0" alt="Taskbar_buttons_Multiplebuttone2" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/Taskbar_5F00_buttons_5F00_Multiplebuttone2_5F00_thumb_5F00_548EAFF8.png" width="557" height="382" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Just a note as response to one of the comments. Yes you can place a different Taskbar button between to windows with different AppID!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers.CodeSamples/Taskbar-Application-ID.zip" target="_blank"&gt;download the code for this application&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can find the managed code Taskbar object in the &lt;a href="http://code.msdn.microsoft.com/WindowsAPICodePack"&gt;Windows API Code pack&lt;/a&gt; project.&lt;/p&gt;  &lt;div&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516770" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Developers/default.aspx">Developers</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Taskbar/default.aspx">Taskbar</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/.NET/default.aspx">.NET</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Sample+Code/default.aspx">Sample Code</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Source+Code/default.aspx">Source Code</category></item><item><title>Developing for the Windows 7 Taskbar – Application ID</title><link>http://windowsteamblog.com/blogs/developers/archive/2009/06/18/developing-for-the-windows-7-taskbar-application-id.aspx</link><pubDate>Thu, 18 Jun 2009 17:18:35 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516746</guid><dc:creator>Yochay Kiriaty</dc:creator><slash:comments>17</slash:comments><description>&lt;p&gt;This is the first post in a new Windows 7 Taskbar series. One of the first Windows 7 changes that developers should pay attention to is the new Windows Taskbar. We all need to understand the functionality this feature introduces so that we can ensure that our applications work well with the Taskbar, resulting in an enhanced experience for our end users.&lt;/p&gt;  &lt;p&gt;I assume that by now you are familiar with the basic functionality that Windows 7 Taskbar offers and the reasons behind the change we made from previous taskbar versions. If you are not familiar with and haven’t seen any demonstrations of the Windows 7 Taskbar, please watch the &lt;a href="http://channel9.msdn.com/posts/yochay/Windows-7-New-Taskbar-an-overview/"&gt;Windows 7 Taskbar Overview&lt;/a&gt; webcast on Channel 9. There are also great posts on the E7 blog like &lt;a href="http://blogs.msdn.com/e7/archive/2008/11/20/happy-anniversary-windows-on-the-evolution-of-the-taskbar.aspx"&gt;The Windows 7 Taskbar&lt;/a&gt; about some of the reasons we introduced the new Taskbar and desktop experience in Windows 7. I do encourage you to read these posts and watch the video so that you have some context for the technical material we are going to cover here.&lt;/p&gt;  &lt;p&gt;The new Taskbar is probably the most noticeable change to Windows 7 when you first log on. The Windows 7 Taskbar is an application-launching and window-switching mechanism that consolidates the functions of previous Windows Desktop mechanisms, such as Quick Launch, Recent Documents, Notification Area icons, desktop shortcuts, and running application windows. Windows 7 Taskbar offers features like Jump Lists, Preview Handler, and Overlay Icons. But before we start diving into the various Windows 7 Taskbar features, let’s lay the basic foundation to our discussion and define some Windows 7 taskbar terminology. &lt;/p&gt;  &lt;p&gt;The basic component is the Taskbar button. The Taskbar button is represented as an icon displayed on the Taskbar. As you can see in the following image, the Taskbar contains several buttons. You can tell what their status is by how they are displayed.&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/Taskbar_5F00_buttons1_5F00_328301CE.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Taskbar_buttons1" border="0" alt="Taskbar_buttons1" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/Taskbar_5F00_buttons1_5F00_thumb_5F00_2A8B5F6C.png" width="564" height="137" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;For example, the Media Player button has no frame or border, but simply sits directly on the Taskbar. This indicates that Media Player is not running. But it is pinned to the Taskbar, and will stay on the Taskbar unless we unpin it. A transparent frame that lets most of the color of the underlying Taskbar through the Windows Explorer button. This indicates that the app is running but is not the active application. The Visual Studio icon has a more opaque rectangular frame underlying its icon indicating that the user is actively using this app. You will also notice that Word has a “stack” of icons representing that multiple instances of Word or multiple Windows are grouped under the same Taskbar button. It is very important to understand the logic that underlies the creation, assignment, and grouping of Taskbar buttons. &lt;/p&gt;  &lt;p&gt;A very large number of applications that run on Windows 7 (for example, Office Word 2007 and Visual Studio 2008), were not designed to work with the Windows 7 Taskbar, so how is it that they can play ball with the Taskbar, group multiple instances, and even take advantage of Word Jump Lists? Basically, a behind-the-scenes Application ID (AppID) is automatically computed and assigned to an application once you launch it. Every running application has an AppID assigned to it, either automatically computed for the app by Windows, or set by the app itself. Guess what? It is not a GUID; it is just a string (with a maximum of 128 characters), that either you provide or is being computed by the OS. All windows and applications, including Jump Lists, which have the same AppID are grouped under the same Taskbar button. Therefore, it is important to understand that every component (process, shortcut, window, Taskbar button, and document type – that is, registered file type handler) of your application has the AppID associated with it.&lt;/p&gt;  &lt;p&gt;You may ask, &amp;quot;Where do AppIDs come from?&amp;quot; As mentioned before, the OS generates Application IDs for your application using a very simple, yet important to understand heuristic. Since in Windows 7 you can assign AppIDs to individual windows, the OS tries to extrapolate the AppID from a window. Applications usually display at least one window that the OS can query for its AppID. However, most existing apps do not have an AppID attached to each window (or, for that matter, any AppID at all), and therefore the OS falls back to the process to which the window belongs for the AppID. Each process has several properties that the OS can check, like the executable of the process. But even then, the process may not provide a granular enough separation. Different shortcuts may provide different start up command line parameters to the same executable and launch different applications (imagine a “launcher” application) that will be grouped under the same Taskbar button. In such cases, the OS has the ability to look into the specific shortcut that launched the application, to find the executable, the command line parameters, and so on. Note that if you have a register file, this registration points to an application that gets launched once you double click that file. Again, this is another way to calculate the AppID. The following image illustrates this automatic computation process. &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_709C1C7F.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/developers/image_5F00_thumb_5F00_21BB5720.png" width="553" height="337" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;If you are interested in really understanding the internals of the Windows 7 taskbar, a great Channel 9 video describes its underlying architecture. Watch the Rob Jarrett and Ben Bets &lt;a href="http://channel9.msdn.com/posts/yochay/Windows-7-Taskbar-Behind-the-Scenes/"&gt;Windows 7 Taskbar - Behind the Scenes&lt;/a&gt; video and, specifically for the Application ID overview, watch &lt;a href="http://channel9.msdn.com/posts/yochay/Jump-into-the-Windows-7-Taskbar-Jump-Lists/"&gt;Jump into the Windows 7 Taskbar Jump Lists&lt;/a&gt; (between 29:30 and 34:40).&lt;/p&gt;  &lt;p&gt;While the OS can compute AppIDs for you, you may want to have greater control over the AppID for a given application or even an individual window in your application. Assume that you have an application that hosts (runs) another application (like what happens when you debug an application using Visual Studio). Or you have several different applications or processes that you wish to group under the same Taskbar button. The Taskbar API offers you ways to control the Application ID per application or per window. IN ANY CASE, if you are writing a &lt;b&gt;new&lt;/b&gt; application that targets Windows 7, we &lt;b&gt;highly recommend&lt;/b&gt; that you provide your own application ID, as we will describe below. &lt;/p&gt;  &lt;p&gt;OK, let’s examine the API that allows you to control the AppID associations of your application.&lt;/p&gt;  &lt;p&gt;If you want to have a separate Taskbar button for each &lt;i&gt;process&lt;/i&gt; (including all windows owned by that process), you can set an explicit AppID for the entire process that affects all windows within the process that do not have their own explicit AppID. Setting the explicit process AppID is very easy. All it takes is a single call to the &lt;a href="http://msdn.microsoft.com/en-us/library/dd378422(VS.85).aspx"&gt;SetCurrentProcessExplicitAppUserModelID&lt;/a&gt; function as shown in the following code snippet:&lt;/p&gt;  &lt;div id="codeSnippetWrapper"&gt;   &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;SetCurrentProcessExplicitAppUserModelID(c_rgszAppID[0]);&lt;/pre&gt;
Where c_rgszAppID[0] is a pointer to a string. You should note that according to the SDK documentation, &lt;em&gt;“This method must be called during an application's initial startup routine before the application presents any user interface (UI) or makes any manipulation of its Jump Lists.”&lt;/em&gt; 

  &lt;br /&gt;&lt;/div&gt;

&lt;p&gt;In managed code, from the latest &lt;a href="http://code.msdn.microsoft.com/WindowsAPICodePack"&gt;Windows API Code Pack Library&lt;/a&gt;, you can use the &lt;b&gt;&lt;i&gt;AppID &lt;/i&gt;&lt;/b&gt;property that is part of the &lt;b&gt;&lt;i&gt;Taskbar&lt;/i&gt;&lt;/b&gt; object, which you can find in the &lt;i&gt;Microsoft.WindowsAPICodePack.Shell.Taskbar &lt;/i&gt;namespace. Using that property you can set and get the application ID of a given application. &lt;/p&gt;

&lt;p&gt;Setting the AppID for a window is a bit more complicated (but only a bit). It requires calling the &lt;a href="http://msdn.microsoft.com/en-us/library/dd378430(VS.85).aspx"&gt;SHGetPropertyStoreForWindow&lt;/a&gt; function and then manipulating the resulting &lt;a href="http://msdn.microsoft.com/en-us/library/bb761474(VS.85).aspx"&gt;IPropertyStore&lt;/a&gt; object to retrieve the requested property as shown in the following code snippet:&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;void&lt;/span&gt; SetAppID(HWND hWnd, &lt;span style="color: #0000ff"&gt;int&lt;/span&gt; iAppID)&lt;br /&gt;{&lt;br /&gt;    IPropertyStore *pps;&lt;br /&gt;    HRESULT hr = SHGetPropertyStoreForWindow(hWnd, IID_PPV_ARGS(&amp;amp;pps));&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;    {&lt;br /&gt;        PROPVARIANT pv;&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (iAppID &amp;gt;= 0)&lt;br /&gt;        {&lt;br /&gt;            hr = InitPropVariantFromString(c_rgszAppID[iAppID], &amp;amp;pv);&lt;br /&gt;        }&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;else&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            PropVariantInit(&amp;amp;pv);&lt;br /&gt;        }&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (SUCCEEDED(hr))&lt;br /&gt;        {&lt;br /&gt;            hr = pps-&amp;gt;SetValue(PKEY_AppUserModel_ID, pv);&lt;br /&gt;            PropVariantClear(&amp;amp;pv);&lt;br /&gt;        }&lt;br /&gt;        pps-&amp;gt;Release();&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Here you can see how we extract the current windows property store by calling SHGetPropertyStoreForWindow, passing hWnd as refrence to the window. Next we initiate, InitPropVariantFromString(c_rgszAppID[iAppID], &amp;amp;pv), a property variant with a string that represents the AppID for that window. Finally, we set the value of the new property store to the window. &lt;/p&gt;

&lt;p&gt;Unfortunately, the current Windows API Code pack doesn’t support setting specific application IDs per window, although all you need to do is add the following function to the Taskbar.cs file:&lt;/p&gt;

&lt;div&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; SetWindowAppId(&lt;span style="color: #0000ff"&gt;string&lt;/span&gt; appId)&lt;br /&gt;{&lt;br /&gt;    Microsoft.WindowsAPICodePack.Shell.ShellNativeMethods.SetWindowAppId&lt;br /&gt;        (OwnerHandle, &lt;span style="color: #006080"&gt;&amp;quot;name here&amp;quot;&lt;/span&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Since the Windows API Code Pack provides the source code, you can actually check the specific implementation of SetWindowAppId function and see for yourself that it is very similar to the SetAppID example above. Note you don’t have to use the full qualified assembly name “&lt;em&gt;Microsoft.WindowsAPICodePack.Shell’&lt;/em&gt;, but I did to help you navigate the Windows API Code Pack hierarchy.&lt;/p&gt;

&lt;p&gt;By the way, the window AppID is dynamic, so it’s entirely possible for a window to show up as part of one Taskbar button and then change its AppID so that it appears on an entirely different Taskbar button. This has interesting effects. For example, the Jump List is attached to a Taskbar button (with a specific AppID), so the same window might show a different Jump List when it is reattached to an entirely different Taskbar button. This potentially can confuse users, so the recommended practice is to set the window AppID and stick to it, using the same process for determining the AppID every time the window displays. &lt;/p&gt;

&lt;p&gt;You can find the managed code Taskbar object in the &lt;a href="http://code.msdn.microsoft.com/WindowsAPICodePack"&gt;Windows API Code pack&lt;/a&gt; project.&lt;/p&gt;

&lt;p&gt;[&lt;a href="http://blogs.microsoft.co.il/blogs/sasha"&gt;Sasha Goldshtein&lt;/a&gt; helped write this post, and you can find his original posting &lt;a href="http://blogs.microsoft.co.il/blogs/sasha/archive/2009/02/15/windows-7-taskbar-application-id.aspx"&gt;here&lt;/a&gt;].&lt;/p&gt;

&lt;div&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516746" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Developers/default.aspx">Developers</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Taskbar/default.aspx">Taskbar</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/.NET/default.aspx">.NET</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Sample+Code/default.aspx">Sample Code</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Source+Code/default.aspx">Source Code</category></item><item><title>Top 6 Things to Consider Before Buying a Small Notebook PC</title><link>http://windowsteamblog.com/blogs/windowsexperience/archive/2009/06/17/top-6-things-to-consider-before-buying-a-small-notebook-pc.aspx</link><pubDate>Wed, 17 Jun 2009 20:24:58 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516710</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>12</slash:comments><description>&lt;p&gt;With small notebook PCs (sometimes called netbook PCs) now accounting for about 10% of PC sales worldwide (up to 20% of PC sales in some geographies according to leading retail sales analysts), I’m starting to get more and more questions about what a buyer should look into as he or she is shopping for a small notebook PC. &lt;/p&gt;  &lt;p&gt;Ultimately, it depends on how you need to use your small notebook PC. While a small percentage of people are choosing to use these devices as their only computer, most are finding them better suited as a “companion PC” to a traditional desktop or notebook (for example, I use my Dell Mini 9 as a “companion PC” to my desktop PCs at work and at home). They are great for staying more conveniently connected on-the-go (for example: browsing the web on the train home from work, sending email from a coffee shop, or just getting office and/or personal tasks done). &lt;/p&gt;  &lt;p&gt;There’s a small notebook PC out there for everyone depending on budget and hardware needs – but sometimes the different choices can get a little overwhelming. &lt;/p&gt;  &lt;p&gt;To help out, I’ve pulled together a “checklist” of basic questions that you’ll want to think about before handing the cashier your credit card:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;1. &lt;/b&gt;&lt;b&gt;Is it easy to use?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;This question may seem obvious, but when you think about it, it’s probably the most important one on this list. How are you going to be using your small notebook PC? Are you using this as a companion to your primary desktop or laptop PC? If so, then you’ll want it to have the same interface and experience as your primary machine so you can seamlessly move back and forth without any confusion or hassle and easily transfer and share files between your computers. You’ll also want to be sure that it can easily connect to a wireless or 3G broadband network so you can instantly get online wherever you are. And of course, make sure that there’s a built in tool, like Windows Instant Search, to help you instantly find your, music, photos and files…after all, your computer isn’t very handy if you can’t find your stuff on it!&lt;/p&gt;  &lt;p&gt;&lt;b&gt;2. &lt;/b&gt;&lt;b&gt;Will it work with my stuff?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Think about what software you expect to use on your small notebook PC. Check for compatibility with your cameras, printers, music players, webcams, and anything else that you expect to connect, such as a GPS unit or mobile phone. Windows supports nearly 3,000 printers, over 700 digital cameras, 240 webcams, and 180 digital video cameras, as well as hundreds of more specialized devices. It also runs more than 10,000 applications, and it’s the only OS that runs Microsoft Office, iTunes and Quicken. This means that whatever it is you use, chances are &lt;a href="http://www.microsoft.com/windows/compatibility/"&gt;it works with Windows&lt;/a&gt;. It’s also a good idea to make sure that your computer works with free, easy to use tools for email, blogging, chatting, working with photos and movies, online storage, and syncing your stuff between your PCs. I use &lt;a href="file:///C:\Users\The%20Rudolphs\AppData\Local\Microsoft\Windows\Temporary%20Internet%20Files\Content.Outlook\EHPIAA4K\download.live.com"&gt;Windows Live Essentials&lt;/a&gt; and &lt;a href="http://www.live.com/skydrive"&gt;Windows Live SkyDrive&lt;/a&gt; to do these things on my computers.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;3. &lt;/b&gt;&lt;b&gt;Is it the right size?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;While screen and keyboard size are personal decisions, I can tell you that many of today’s small notebook PCs come with 9” or 10” screens for a good reason. Machines this size offer a better balance between lightweight portability, having a screen big enough to be productive with more than one window at once, and a keyboard that’s comfortable enough for most people’s hands. My Dell Mini 9 has a 8.9” screen. The size doesn’t bother me much but if I were to go out and buy another small notebook PC, I would likely go with a 10” screen. If you find that even 10” is still too small for you though, there are a number of larger but still lightweight notebooks at pretty affordable prices that may work better for your needs over a small notebook PC. If you do decide to go that route, check out the &lt;a href="http://www.microsoft.com/windows/windows-laptop-scout/?icid=ftp_wmg_scout_145"&gt;Windows Laptop Scout&lt;/a&gt;, which will help you find exactly the right machine for your needs.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;4. &lt;/b&gt;&lt;b&gt;Does it have the hardware horsepower I need?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;When it comes to hardware, there are four key areas to consider – screen &amp;amp; keyboard size, processor speed, RAM, and storage. Screen and keyboard size we covered earlier, but in terms of the processor, look for a machine with at least a 1GHz CPU, and for RAM, get at least 1GB. 1GB of RAM is what my machine came with, but I added another 1GB to it for an extra performance boost. Many models allow you to add at least an extra stick of memory. If you buy a small notebook PC and want to give it more power down the road, having this ability is quite nice.&lt;/p&gt;  &lt;p&gt;Storage is largely a personal call, and how much you need really depends on what you expect to do with your small notebook PC. If you want to put your pictures and music on it, then you probably want a 120GB or larger Hard Disk Drive. If you’re just looking to do basic email and web browsing, you might go for a smaller Solid State Drive (typically, these are 8-32GB). SSDs often run cooler and quieter, and may use less power, which means they can potentially get you a bit of boost in battery life. My Dell Mini 9 came with a 16GB SSD, but I found that it wasn’t enough space for me so I replaced it with a 32GB SSD. I also purchased a 320GB &lt;a href="http://www.westerndigital.com/en/products/Products.asp?DriveID=525"&gt;My Passport Essential&lt;/a&gt; from Western Digital I carry around with me everywhere as well for the added storage.&lt;/p&gt;  &lt;p&gt;I recommend checking out &lt;a href="http://reviews.cnet.com/laptop-reviews/?filter=1101502_17294757_&amp;amp;tag=mncol"&gt;CNET’s reviews&lt;/a&gt;, as well as the great information, reviews and tips on &lt;a href="http://www.liliputing.com/"&gt;Liliputing&lt;/a&gt; to help you find a small notebook PC with exactly the specs you want.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;5. &lt;/b&gt;&lt;b&gt;Will I be safe online?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;You’re probably going to be online quite a bit, so you’ll want to make sure you can browse, chat, and share safely. Key security features to look for in both your OS and browser are comprehensive phishing and Cross-Site Scripting filters along with ClickJacking protection to help guard against identity theft, built-in spyware and malware protection, comprehensive parental controls, a built-in firewall, and a private browsing model. As an FYI – &lt;a href="http://www.microsoft.com/windows/internet-explorer/default.aspx"&gt;Internet Explorer 8&lt;/a&gt; in combination with &lt;a href="http://download.live.com/familysafety"&gt;Windows Live Family Safety&lt;/a&gt; can do all these things for you. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;6. &lt;/b&gt;&lt;b&gt;What level of support do I need?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Making sure that you can get the right kind of support when you need it is critical. It’s a good idea to get a small notebook PC that has built-in features to keep your gear up and running, such as automatic self-diagnosing tools and a comprehensive built-in system to help you automatically get security, OS and software updates, without having to track them down yourself and manually install them 1-by-1. When you do run into a need for assistance, you’ll also be better off with multiple support options including online resources, a call-in tech support center, or in-person help at a repair shop or retailer. &lt;/p&gt;  &lt;p&gt;Hopefully, if you’re on the market for a new small notebook PC this checklist of questions will come in handy in helping you with your buying decision!&lt;/p&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fwindowsteamblog.com%2fblogs%2fwindowsexperience%2farchive%2f2009%2f06%2f17%2ftop-6-things-to-consider-before-buying-a-small-notebook-pc.aspx&amp;amp;title=Top+6+Things+to+Consider+Before+Buying+a+Small+Notebook+PC"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516710" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows/default.aspx">Windows</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Internet+Explorer+8/default.aspx">Internet Explorer 8</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Laptop+Scout/default.aspx">Windows Laptop Scout</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Browser/default.aspx">Browser</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/PC/default.aspx">PC</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Netbook/default.aspx">Netbook</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Small+Notebook+PC/default.aspx">Small Notebook PC</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/SSD/default.aspx">SSD</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Companion+PC/default.aspx">Companion PC</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Live+Family+Safety/default.aspx">Windows Live Family Safety</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Online+Safety/default.aspx">Online Safety</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Screen+size/default.aspx">Screen size</category></item><item><title>Windows 7 Deep Dive Lab Event</title><link>http://windowsteamblog.com/blogs/developers/archive/2009/06/17/windows-7-deep-dive-lab-event.aspx</link><pubDate>Wed, 17 Jun 2009 07:21:22 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516699</guid><dc:creator>Yochay Kiriaty</dc:creator><slash:comments>5</slash:comments><description>&lt;p&gt;In this post I will deviate from our normal routine of writing about Windows 7 features, APIs, and code samples, and will instead talk a little about an amazing opportunity to attend the Windows 7 &amp;quot;Deep Dive&amp;quot; Development Lab at the Microsoft Campus in Redmond, Washington on&lt;strong&gt; 6-8 July 2009&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;A Deep Dive lab enables you to work on scenarios of your choice with experts from the Windows 7 product team. This is not a traditional training event. This is a special onetime event and a unique opportunity to meet the people who build Windows 7. The agenda includes a few presentations and some lab time, but our goal is for you to work on your own application(s) with our experts, focusing on how Windows 7 features like Sensor and Location, Taskbar, Multi-Touch, Libraries, Graphics, Ribbon, XPS &amp;amp; Print Path, Performance and Instrumentation, Troubleshooting Pack, and Application Compatibility can add value to your applications. &lt;/p&gt;  &lt;p&gt;If accepted into the Deep Dive lab, you will be working on your own applications with members from the Windows 7 product teams. Meetings with specific team members may also be arranged as required and upon request. We are also available to assist you with Windows 7 compatibility issues to ensure that your application is Windows 7 compatible. Each participating group gets its own lab room, which accommodates up to 4 people, in which to develop the solution.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Who can come? &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Up to &lt;b&gt;four&lt;/b&gt; people from each company, normally developers and architects.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;What does it cost? &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;There is no charge for the event. Microsoft will provide a light breakfast and lunch during the 3-day event, and will also provide one on-site dinner. &lt;b&gt;&lt;u&gt;You&lt;/u&gt;&lt;/b&gt; are responsible for &lt;b&gt;&lt;u&gt;any other expenses&lt;/u&gt;&lt;/b&gt; including accommodations, travel costs to Redmond, and evening meals.&lt;/p&gt;  &lt;h5&gt;How do I nominate my organization? &lt;/h5&gt;  &lt;p&gt;Due to high demand, Deep Dive developer labs have extremely limited capacity, and enrollment is based on a nomination process. Please complete the nomination form and e-mail it to &lt;a href="mailto:dpewin7@microsoft.com"&gt;dpewin7@microsoft.com&lt;/a&gt;. Nominations will be evaluated based on the project scenario and its status. The information you provide will also help us to prepare for your arrival at the Lab. You should receive an acknowledgement e-mail within few business days. Once we have verified your nomination form and selected your team as participants, we will send you more detailed event logistics.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;u&gt;Please do NOT make travel arrangements until your participation has been confirmed.&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;h2&gt;&lt;strong&gt;Windows 7 Deep Dive Nomination Form &lt;/strong&gt;&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;Primary Contact &lt;/strong&gt;- Provide primary contact information for communicating information related to the event:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Primary Contact Name: &lt;/li&gt;    &lt;li&gt;Primary Contact E-mail: &lt;/li&gt;    &lt;li&gt;Primary Contact Phone: &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Deep Dive Attendees&lt;/strong&gt; - List the names of the individuals likely to attend the Deep Dive Lab and their roles on the team:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Project / Product Details&lt;/strong&gt; - Provide some background information about the application(s) that you wish to work on during the event: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Project Name: &lt;/li&gt;    &lt;li&gt;Scheduled Release Date: &lt;/li&gt;    &lt;li&gt;Description (Include purpose, software environment, and users): &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Windows 7 Features&lt;/strong&gt; - Provide a list of the Windows 7 features you wish to incorporate into your application:&lt;/p&gt;  &lt;p&gt;Please complete the nomination form on the next page and e-mail it to &lt;a href="mailto:dpewin7@microsoft.com"&gt;dpewin7@microsoft.com&lt;/a&gt;. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516699" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Developers/default.aspx">Developers</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://windowsteamblog.com/blogs/developers/archive/tags/Labs/default.aspx">Labs</category></item><item><title>Find The Windows Blog on Facebook!</title><link>http://windowsteamblog.com/blogs/windowsexperience/archive/2009/06/16/find-the-windows-blog-on-facebook.aspx</link><pubDate>Wed, 17 Jun 2009 04:02:01 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516689</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;You can now find The Windows Blog on Facebook and become a fan! Just click on the button below to go to our Facebook Page. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.facebook.com/pages/The-Windows-Blog/92975552417"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Find us on Facebook!" border="0" alt="Find us on Facebook!" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/windowsexperience/find_5F00_us_5F00_on_5F00_facebook_5F00_badge_5F00_00D19380.gif" width="144" height="44" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Remember, you can also &lt;a href="http://twitter.com/windowsblog"&gt;follow The Windows Blog&lt;/a&gt; on Twitter as well. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516689" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Twitter/default.aspx">Twitter</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows/default.aspx">Windows</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Social+Networking/default.aspx">Social Networking</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/The+Windows+Blog/default.aspx">The Windows Blog</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Facebook/default.aspx">Facebook</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Social+Media/default.aspx">Social Media</category></item><item><title>Keyboard Shortcuts for Windows Media Player in Windows 7</title><link>http://windowsteamblog.com/blogs/windowsexperience/archive/2009/06/16/keyboard-shortcuts-for-windows-media-player-in-windows-7.aspx</link><pubDate>Tue, 16 Jun 2009 23:43:10 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516670</guid><dc:creator>Brandon LeBlanc</dc:creator><slash:comments>11</slash:comments><description>&lt;p&gt;In Windows 7, we’ve improved how people can play and manage their digital media content (like music and videos) through Windows Media Player. Not only did we give Windows Media Player a face lift, it also takes advantage of key Windows 7 features such as the new &lt;b&gt;Windows Taskbar&lt;/b&gt;,&lt;b&gt; HomeGroup&lt;/b&gt; and &lt;b&gt;Jump Lists&lt;/b&gt;. With all the new stuff packed into Windows Media Player, I thought it might be a good idea to highlight some tips for using Windows Media Player. &lt;/p&gt;  &lt;p&gt;Starting today, I plan to do a series of 6 blog posts over the course of the next 3 weeks, each dedicated to a single tip for Windows Media Player. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Today’s Tip: Keyboard Shortcuts!&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Below is a list of keyboard shortcuts you can use for a variety of activities in Windows Media Player ranging from switching to Player Mode to turning on or off shuffle to shifting between play speeds. If you’re a keyboard fiend – this list is a &lt;i&gt;must-have&lt;/i&gt;.&lt;/p&gt;  &lt;p&gt;   &lt;table border="1" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;&lt;strong&gt;Shortcut&lt;/strong&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;&lt;strong&gt;Action&lt;/strong&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;&lt;strong&gt;State&lt;/strong&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + 1&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Switches to library mode&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;From any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + 2&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Switches to skin mode&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;From any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + 3&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Switches to player mode&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;From any mode except full screen&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + 7&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Add to Play &lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In library mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + 8&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Add to Burn &lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In library mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + 9&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Add to Sync &lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In library mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + A&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Selects everything in a list&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In the library or list&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + B&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Previous (Item or Chapter)&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + E&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Focus on Search text box and switch to library mode if not there&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;&amp;#160;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + F&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Next (Item or Chapter)&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + H&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Turn on/off shuffle mode&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;&amp;#160;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + J&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Eject&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + M&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Toggle menu bar in library&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + N&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Create playlist&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In library mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + O&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Shows Open Dialog&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + P&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Play/Pause Toggle&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content queued up&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Q&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Adds selected track to open list&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Default is Play list&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + S&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Stops Playback&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + T&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Turn on/off repeat mode&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + U&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Shows Open URL Dialog&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + W&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Stops playback&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing or paused&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Shift + B&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Rewinds playing content&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With DVD playing &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Shift + C&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Caption On/Off Toggle&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Playing content which has captions&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Shift + F&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Fast forwards playing content&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Shift + G&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Play Speed Fast&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Shift + N&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Play Speed Normal&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Shift + S&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Play Speed Slow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;With content playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Right Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Next playlist in playlist history&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus not on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Left Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Previous playlist in playlist history&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus not on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Right Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Skip forward (large increment)&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Left Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Skip backward (large increment)&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Shift + Right Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Skip forward (small increment)&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Shift + Left Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Skip backward (small increment)&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Right Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Skip forward &lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Left Arrow&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Skip backward&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on Seek bar&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Ctrl + Click&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Resize player to image&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In Now Playing mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Escape&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Return to Now Playing&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Full Screen Mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F1&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Opens Help file&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F2&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Edit meta data column&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In library mode with an item selected&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F4&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Switch view mode&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In library mode, focus in list view&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F5&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Refresh screen &lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus on library or in online services &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F6&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Increases album art&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus in list view&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Shift + F6&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Decreases album art&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;Focus in list view&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F7&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Mutes sound&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F8&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Decrease sound volume&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F9&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Increases sound volume&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;F10&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Show menu bar in library&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;From any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Shift + F10&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Context menu shortcut&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In any mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Alt + 1&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Video Size 50%&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In Now Playing or skin mode, with a video playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Alt + 2&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Video Size 100%&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In Now Playing or skin mode, with a video playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Alt + 3&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Video Size 200%&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In Now Playing or skin mode, with a video playing&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="138"&gt;           &lt;p&gt;Alt + Enter&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="215"&gt;           &lt;p&gt;Full Screen Toggle&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="253"&gt;           &lt;p&gt;In Now Playing, skin, or full screen mode&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;Stay tuned – I’ll have another tip for Windows Media Player coming up soon!&lt;/p&gt;  &lt;p&gt;&lt;em&gt;NOTE: These tips are for Windows Media Player in Windows 7 only.&lt;/em&gt;&lt;/p&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fwindowsteamblog.com%2fblogs%2fwindowsexperience%2farchive%2f2009%2f06%2f16%2fkeyboard-shortcuts-for-windows-media-player-in-windows-7.aspx&amp;amp;title=Keyboard+Shortcuts+for+Windows+Media+Player+in+Windows+7"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516670" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Tips/default.aspx">Tips</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Tips+_2600_+Tricks/default.aspx">Tips &amp; Tricks</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Keyboard+Shortcuts/default.aspx">Keyboard Shortcuts</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Media+Player+12/default.aspx">Windows Media Player 12</category><category domain="http://windowsteamblog.com/blogs/windowsexperience/archive/tags/Windows+Media+Player/default.aspx">Windows Media Player</category></item><item><title>Understanding XP Mode</title><link>http://windowsteamblog.com/blogs/springboard/archive/2009/06/16/understanding-xp-mode.aspx</link><pubDate>Tue, 16 Jun 2009 18:27:37 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:516648</guid><dc:creator>Stephen L Rose</dc:creator><slash:comments>5</slash:comments><description>&lt;p&gt;(reposted from our blog of May 26th)&lt;/p&gt;  &lt;p&gt;After we announced Windows XP Mode, I sat down again with Jeremy Chapman at the Microsoft Management Summit in Las Vegas a few weeks ago to find out what he thought about Windows XP Mode as a solution for solving application compatibility issues. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; Hi Jeremy, seems like I’m interviewing you a lot lately. So we’re at MMS here in Las Vegas and we just announced the Windows 7 Release Candidate and Windows XP Mode as a solution for allowing applications to run within a Windows XP session on a Windows 7 machine. What do you think about this technology? Will this solve everything for people having problems moving off Windows XP or Internet Explorer 6?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; Windows XP Mode adds the seamless virtual desktop integration like we saw in Microsoft Enterprise Desktop Virtualization (MEDV), so you can see applications within the virtual operating system in the start menu: &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image002_5F00_5031D32A.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image002_5F00_thumb_5F00_7D46BFF8.jpg" width="237" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And you can view applications within the physical operating system’s desktop without showing the entire virtual machine desktop.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image004_5F00_55A043CE.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/springboard/clip_5F00_image004_5F00_thumb_5F00_54C7DDE4.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It definitely makes the use of Virtual PC technologies much easier for the average user. As we’ve seen for the last decade or so, you can run legacy applications under the context of the legacy operating system. Initially that sounds like a good thing, as Virtual PC always has.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; Explain what you mean by initially.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; To the undiscerning eye, this looks like an easy fix and for many in sales and marketing roles, it might sound like a silver bullet for application compatibility. Despite the more intuitive user experience, the IT management issues with that are essentially the same as they have been for the last ten years or so with Virtual PC.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; What do you see as the challenges with this technology then?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; First, there are two operating systems to manage per userSecond, while we can automate and customize full operating system provisioning, it isn’t so easy to custom provision the virtual machine according to user roles and needs. Third, by default the virtual PC user account is a local administrator.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; Ok, so is there anything that helps IT pros with any of these areas?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; Definitely, MED-V (Microsoft Enterprise Desktop Virtualization) adds the control so you can sandbox the virtual PC environment from the physical environment. It also provides the administrative tools to provision within the virtual environment. There is granular control over how the two operating systems behave with one another and you can even pre-define which websites or web-based Line-of-Business applications need to be automatically invoked in the virtual machine’s web browser (Internet Explorer 6 by default). MED-V is also self adjusting as the virtual PC memory allocation based on available RAM on host, so that the virtual PC does not take significant resources from the user. Features like TrimTransfer update a master Virtual PC image, and MED-V will automatically distribute and apply the changes to all endpoints. Finally, MED-V will work on both Windows 7 and Windows Vista, and will not require processor-based virtualization support &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; That definitely sounds like the more manageable solution, but is running Virtual PC and MED-V the only recommended solution for Windows 7?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; From the application compatibility perspective, the best thing to do is to get applications that run natively without any virtualization aids, recoding, compatibility fixes or compatibility modes needed. If you own the code and can recode the application, then do that. If you can’t recode a line-of-business application or are not dependent on support for a third party application, you can try compatibility fixes – or “shims” – to remediate the application. Finally, when all these options aren’t possible, then look into legacy operating system virtualization. If you have exhausted all other options for application remediation and intend on using Windows XP Mode, then I’d recommend following all the best practices in the &lt;a href="http://technet.microsoft.com/en-us/library/cc163061.aspx"&gt;Windows XP Security Compliance Management Toolkit&lt;/a&gt; to secure the virtual environment and manage configuration with Group Policy and desired configuration management in System Center Configuration Manager.&lt;/p&gt;  &lt;p&gt;&lt;a&gt;&lt;font color="#000000"&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; So who should be using Windows XP Mode then?&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; For individual users or smaller organizations where desktops are not managed, Windows XP Mode is a relatively easy solution to get working. You’ll need to find installation media for those older applications and manually install them, but it can get them working until you port everything over to the physical operating system.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; So for a transitional period to the new OS, these legacy client virtualization tools can help people run their incompatible legacy applications. Is there anything else to remember with Virtual Windows XP?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; We haven’t talked about hardware yet. So hardware needs to have hardware virtualization – Intel VT or AMDV – and have it enabled in the BIOS. Most business grade hardware produced in the last 2-3 years has that, but netbooks and older PCs often do not meet this requirement. The virtual machine also uses memory, so you’ll probably want to use PCs with 2 GB or more RAM. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; Good advice. So where can people find more information on Windows XP Mode?&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Jeremy Chapman:&lt;/b&gt; Check out &lt;a href="http://windowsteamblog.com/blogs/business/archive/2009/04/28/how-med-v-v2-helps-you-manage-windows-xp-mode.aspx"&gt;Scott Woodgate’s blog&lt;/a&gt; post on the Windows Team Blog and &lt;a href="http://www.microsoft.com/presspass/features/2009/Apr09/04-28Win7QA.mspx"&gt;Scott’s Q&amp;amp;A on PressPass&lt;/a&gt;. There is also a Virtual PC Tips and Tricks FAQ on &lt;a href="http://www.microsoft.com/springboard" target="_blank"&gt;Springboard&lt;/a&gt; located &lt;a href="http://go.microsoft.com/?linkid=9666708" target="_blank"&gt;here&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Stephen Rose:&lt;/b&gt; Thanks again for your time Jeremy.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=516648" width="1" height="1"&gt;</description><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/XP+Mode/default.aspx">XP Mode</category><category domain="http://windowsteamblog.com/blogs/springboard/archive/tags/Virtualization/default.aspx">Virtualization</category></item></channel></rss>