<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Jose Barreto's Blog</title><subtitle type="html">These are the top-of-mind issues and random thoughts of Jose Barreto, a member of the File Server team at Microsoft Corporation.</subtitle><id>http://blogs.technet.com/josebda/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.technet.com/josebda/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2009-07-17T06:53:00Z</updated><entry><title>Mistakes when configuring your Hyper-V environment</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/11/05/mistakes-when-configuring-your-hyper-v-environment.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/11/05/mistakes-when-configuring-your-hyper-v-environment.aspx</id><published>2009-11-05T17:02:00Z</published><updated>2009-11-05T17:02:00Z</updated><content type="html">&lt;P&gt;I came across some interesting tips on things to consider in a virtualized environment by Greg Shields (Consultant and Microsoft MVP).&amp;nbsp;&lt;BR&gt;They are non-issues (or settled issues) on physical environments and you might overlook them when making the transition to virtual machines. &lt;/P&gt;
&lt;P&gt;Here's a summary to get you interested:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Screensavers&lt;/LI&gt;
&lt;LI&gt;Managing from the console&lt;/LI&gt;
&lt;LI&gt;AV on VM disk files&lt;/LI&gt;
&lt;LI&gt;Power options&lt;/LI&gt;
&lt;LI&gt;Cluster Failback&lt;/LI&gt;
&lt;LI&gt;RAM availability&lt;/LI&gt;
&lt;LI&gt;Backup for CSV&lt;/LI&gt;
&lt;LI&gt;Number of processors&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;Here are the links to the actual articles:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;&lt;A href="http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1365989_mem1,00.html" mce_href="http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1365989_mem1,00.html"&gt;http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1365989_mem1,00.html&lt;/A&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;&lt;A href="http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1372408_mem1,00.html" mce_href="http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1372408_mem1,00.html"&gt;http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1372408_mem1,00.html&lt;/A&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3291761" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Hyper-V" scheme="http://blogs.technet.com/josebda/archive/tags/Hyper-V/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /></entry><entry><title>Scary SQL Server stuff: tombstones, phantoms, blobs, ghosts and zombies</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/10/31/scary-sql-server-stuff-tombstones-phantoms-blobs-ghosts-and-zombies.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/10/31/scary-sql-server-stuff-tombstones-phantoms-blobs-ghosts-and-zombies.aspx</id><published>2009-10-31T22:10:00Z</published><updated>2009-10-31T22:10:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;This post mixes the spirit of Halloween and the passion for SQL Server :-)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Have you noticed how SQL Server has a number of things that seem right out of a horror movie? &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;As a test of your SQL Server expertise and for a fun Halloween trivia game, try to describe the items in the list below in the context of SQL Server. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;If you can’t, follow the links to figure them out:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Tombstones&lt;/STRONG&gt;. Marking the burial places of your deceased data. If you don't keep them, you might end up&amp;nbsp;meeting the undead. &lt;A href="http://msdn.microsoft.com/en-us/library/ms186771.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms186771.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Phantoms&lt;/STRONG&gt;.&amp;nbsp;Seeing things that are not there? These haunted queries can only be avoided&amp;nbsp;with proper isolation.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/aa259216.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa259216.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Deadlocks&lt;/STRONG&gt;.&amp;nbsp;Weird things happens when hairy transactions collide.&amp;nbsp;If one of those wrap around you, you might end up as the victim. &lt;A href="http://msdn.microsoft.com/en-us/library/ms178104.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms178104.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Blobs&lt;/STRONG&gt;. Oh, the nightmares from these huge things sucking the air out of your database. Your only way out may be pushing them down a stream.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/3517w44b.aspx"&gt;http://msdn.microsoft.com/en-us/library/3517w44b.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Kill&lt;/STRONG&gt;. Why would a database need such a command? Well, make sure you're well behaved it might never be needed.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/ms173730.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms173730.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Crypt&lt;/STRONG&gt; &lt;STRONG&gt;properties&lt;/STRONG&gt;. Tales from a database that implemented additional security. Just make sure you don't&amp;nbsp;misplace your&amp;nbsp;keys. &lt;A href="http://msdn.microsoft.com/en-us/library/ms189536.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms189536.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Hash Match&lt;/STRONG&gt;. It's not a competition to see who's the fastest slasher.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/aa237090.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa237090.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Drop user&lt;/STRONG&gt;. Users don't really live forever, after all.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/ms189438.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms189438.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Ghost rows&lt;/STRONG&gt;. An army of ghosts, all perfectly lined up? Not really.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/ms188436.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms188436.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Zombie rowsets&lt;/STRONG&gt;. What's Halloween without zombies, even if they only show up in small places.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/aa258325.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa258325.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Execute reader&lt;/STRONG&gt;. Sounds like a curse on whoever reads your data. But it's actually quite useful and fast.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/9kcbe65k.aspx"&gt;http://msdn.microsoft.com/en-us/library/9kcbe65k.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Shadow Copies&lt;/STRONG&gt;. Not as scary as it sounds. It's much scarier when your data goes bad and you don't have them.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/cc966520.aspx"&gt;http://msdn.microsoft.com/en-us/library/cc966520.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;Nested Triggers&lt;/STRONG&gt;. It could be a code for snipers waiting to hit you from the rooftops. But it's much harder to explain than that.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/ms190739.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms190739.aspx&lt;/A&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;&lt;STRONG&gt;RIP. &lt;/STRONG&gt;No, it's not an epitaph. It's a way to help you clear your tracks and achieve compliance.&amp;nbsp;&lt;A href="http://msdn.microsoft.com/en-us/library/bb326650.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb326650.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;And, of course, there’s a number of Wizards all over the place.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;If you know any other good ones, please do share in the post comments.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;P.S.: I&amp;nbsp;was also reminded by Kalen Delaney of the classic "Halloween Problem" which can cause pretty scary results, as&amp;nbsp;described at &lt;A href="http://en.wikipedia.org/wiki/Halloween_Problem"&gt;http://en.wikipedia.org/wiki/Halloween_Problem&lt;/A&gt;. Not specific to SQL Server, but there was a related issue with SQL Server 7 : &lt;A href="http://support.microsoft.com/kb/248441"&gt;http://support.microsoft.com/kb/248441&lt;/A&gt;.&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Happy Halloween!&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;IMG style="WIDTH: 102px; HEIGHT: 110px" title="SQL Halloween" alt="SQL Halloween" src="http://blogs.technet.com/photos/josebda/images/3290488/original.aspx" width=102 height=110 mce_src="http://blogs.technet.com/photos/josebda/images/3290488/original.aspx"&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3290487" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="SQL Server" scheme="http://blogs.technet.com/josebda/archive/tags/SQL+Server/default.aspx" /><category term="Events" scheme="http://blogs.technet.com/josebda/archive/tags/Events/default.aspx" /></entry><entry><title>Implementing an End-User Data Centralization Solution with Folder Redirection and Offlines Files</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/10/23/implementing-an-end-user-data-centralization-solution-with-folder-redirection-and-offlines-files.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/10/23/implementing-an-end-user-data-centralization-solution-with-folder-redirection-and-offlines-files.aspx</id><published>2009-10-24T05:00:00Z</published><updated>2009-10-24T05:00:00Z</updated><content type="html">&lt;P&gt;There's a new 77-page white paper covering the use of Folder Redirection and Offline Files in a very practical way.&lt;/P&gt;
&lt;P&gt;Here's an excerpt:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;"The objective of this white paper is to show through a case study how to use different Microsoft products and technologies to put in place a comprehensive solution satisfying the needs of a mid-sized organization around users’ file data management. The study was conducted by the Quality Assurance group of the Storage Solutions Division (SSD) at Microsoft, a division that focuses on enabling customers of all sizes to store, manage, and reliably access their file data."&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Download from &lt;A href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=d8541618-5c63-4c4d-a0fd-d942cd3d2ec6" mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=d8541618-5c63-4c4d-a0fd-d942cd3d2ec6"&gt;http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=d8541618-5c63-4c4d-a0fd-d942cd3d2ec6&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3288834" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Storage" scheme="http://blogs.technet.com/josebda/archive/tags/Storage/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="SMB" scheme="http://blogs.technet.com/josebda/archive/tags/SMB/default.aspx" /></entry><entry><title>SharePoint 2010 beta in November. Details and documentation right now!</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/10/19/sharepoint-2010-beta-in-november-details-and-documentation-right-now.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/10/19/sharepoint-2010-beta-in-november-details-and-documentation-right-now.aspx</id><published>2009-10-20T05:28:00Z</published><updated>2009-10-20T05:28:00Z</updated><content type="html">&lt;P&gt;Jeff Teper (Corporate Vice President, SharePoint Server) and Steve Ballmer (CEO) shared SharePoint Server 2010 feature details and announced the November beta during the SharePoint Conference today in Las Vegas. &lt;/P&gt;
&lt;P&gt;Jeff also posted a long and revealing blog, outlining 8 categories and 40 feature areas:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Sites&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;SharePoint Web Experience&lt;/LI&gt;
&lt;LI&gt;Office Client&lt;/LI&gt;
&lt;LI&gt;SharePoint Workspace&lt;/LI&gt;
&lt;LI&gt;Office Web Apps&lt;/LI&gt;
&lt;LI&gt;SharePoint Mobile Access&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Communities&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Collaborative Content&lt;/LI&gt;
&lt;LI&gt;Social Feedback and Organization&lt;/LI&gt;
&lt;LI&gt;User Profiles&lt;/LI&gt;
&lt;LI&gt;MySites&lt;/LI&gt;
&lt;LI&gt;People Connections&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Content&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Large Lists and Libraries&lt;/LI&gt;
&lt;LI&gt;Enterprise Metadata&lt;/LI&gt;
&lt;LI&gt;Document Sets&lt;/LI&gt;
&lt;LI&gt;Web Publishing including Digital Asset Management&lt;/LI&gt;
&lt;LI&gt;Governance and Records Management&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Search&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Interactive Search Experience&lt;/LI&gt;
&lt;LI&gt;Relevance&lt;/LI&gt;
&lt;LI&gt;People Search&lt;/LI&gt;
&lt;LI&gt;Connectivity&lt;/LI&gt;
&lt;LI&gt;Scale and Platform Flexibility&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Insights&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Excel Services&lt;/LI&gt;
&lt;LI&gt;Performance Point Services&lt;/LI&gt;
&lt;LI&gt;SQL Server&lt;/LI&gt;
&lt;LI&gt;“Gemini”&lt;/LI&gt;
&lt;LI&gt;Visio Services&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Composites&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;SharePoint Designer&lt;/LI&gt;
&lt;LI&gt;InfoPath Forms Service&lt;/LI&gt;
&lt;LI&gt;Access Services&lt;/LI&gt;
&lt;LI&gt;Sandbox Solutions&lt;/LI&gt;
&lt;LI&gt;Business Connectivity Services&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Administration&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Improved Upgrade&lt;/LI&gt;
&lt;LI&gt;Throttling, Health Monitoring, Analytics&lt;/LI&gt;
&lt;LI&gt;Web and PowerShell Admin&lt;/LI&gt;
&lt;LI&gt;Scalability and Availability&lt;/LI&gt;
&lt;LI&gt;Identity Management and Security&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Development&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;New SharePoint APIs&lt;/LI&gt;
&lt;LI&gt;Application Lifecycle&lt;/LI&gt;
&lt;LI&gt;Visual Studio 2010 Support&lt;/LI&gt;
&lt;LI&gt;Developer Dashboard View&lt;/LI&gt;
&lt;LI&gt;Development on Windows 7&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;
&lt;P&gt;Jeff did an amazing job summarizing the upcoming SharePoint Server 2010 in a single blog post that includes additional information on each of the 48 bullets above, plus 8 screenshots (one per category). Absolute&amp;nbsp;must read!!!&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;Check the blog post at&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://blogs.msdn.com/sharepoint/archive/2009/10/19/sharepoint-2010.aspx" mce_href="http://blogs.msdn.com/sharepoint/archive/2009/10/19/sharepoint-2010.aspx"&gt;http://blogs.msdn.com/sharepoint/archive/2009/10/19/sharepoint-2010.aspx&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Recorded keynote from the SharePoint Conference available from&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/presspass/presskits/sharepoint/videoGallery.aspx"&gt;http://www.microsoft.com/presspass/presskits/sharepoint/videoGallery.aspx&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Also, documentation and learning resources on SharePoint 2010 are available starting today for both Developers and IT Professionals:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://msdn.microsoft.com/en-us/sharepoint/default.aspx" mce_href="http://msdn.microsoft.com/en-us/sharepoint/default.aspx"&gt;&lt;FONT color=#006ff7&gt;SharePoint Developer Center&lt;/FONT&gt;&lt;/A&gt; on MSDN&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://technet.microsoft.com/en-us/sharepoint/default.aspx" mce_href="http://technet.microsoft.com/en-us/sharepoint/default.aspx"&gt;&lt;FONT color=#006ff7&gt;SharePoint Products TechCenter&lt;/FONT&gt;&lt;/A&gt;&amp;nbsp;on TechNet&lt;/LI&gt;&lt;/UL&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P align=right&gt;&lt;IMG style="WIDTH: 395px; HEIGHT: 205px" title="SharePoint 2010" alt="SharePoint 2010" align=middle src="http://i.technet.microsoft.com/ee263917.Feature_SharePointServer2010WhatsNew(en-us,MSDN.10).png" width=395 height=205 mce_src="http://i.technet.microsoft.com/ee263917.Feature_SharePointServer2010WhatsNew(en-us,MSDN.10).png"&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3287800" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="SharePoint" scheme="http://blogs.technet.com/josebda/archive/tags/SharePoint/default.aspx" /><category term="Search" scheme="http://blogs.technet.com/josebda/archive/tags/Search/default.aspx" /><category term="Events" scheme="http://blogs.technet.com/josebda/archive/tags/Events/default.aspx" /></entry><entry><title>File Server Capacity Tool (FSCT) 1.0 available for download</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/09/16/file-server-capacity-tool-fsct-1-0-available-for-download.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/09/16/file-server-capacity-tool-fsct-1-0-available-for-download.aspx</id><published>2009-09-16T20:57:00Z</published><updated>2009-09-16T20:57:00Z</updated><content type="html">&lt;P&gt;Version 1.0 of the File Server Capacity Tool (FSCT) was announced yesterday during a presentation by Jian Yan and&amp;nbsp; Bartosz Nyczkowski at SNIA’s Storage Developer Conference in Santa Clara, CA. The presentation covered a number of details about FSCT and included a demo running FSCT with the HomeFolders workload.&lt;/P&gt;
&lt;P&gt;If you are not familiar with FSCT, the download page offers this overview: “File server capacity planning and performance troubleshooting are critical aspects of high-level network administration. Central file servers and distributed client workstations are now the norm in most corporate networks. This structure reduces storage capacity requirements, centralizes backup, increases the availability of files, and simplifies the document revision and review process. However, because data storage and access are centralized, performance limitations impact the entire network population. Accurately projecting the number of users that hardware can support under a specific workload, and understanding when and where bottlenecks occur, are critical to making efficient improvements to the server configuration. File server capacity planning tools can be valuable in choosing new hardware for purchase, identifying the capacity of existing hardware, locating existing bottlenecks, and planning for resource expansion in advance of resource exhaustion. The throughput capacity of a file server can be expressed either as the maximum number of operations per second or a maximum number of users supported by the configuration. These values are influenced by several factors, some of which include processor speed, available memory, disk speed, network throughput and latency, and the speed with which SMB requests are processed.”&lt;/P&gt;
&lt;P&gt;The final version is available for download in both 32-bit (x86) and 64-bit (x64) versions. It is supported on&amp;nbsp; Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2, Windows Vista and&amp;nbsp; Windows 7 (with the latest service pack applied). &lt;/P&gt;
&lt;P&gt;Downloads are available now:&lt;BR&gt;x64: &lt;A href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=b20db7f1-15fd-40ae-9f3a-514968c65643" mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=b20db7f1-15fd-40ae-9f3a-514968c65643"&gt;http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=b20db7f1-15fd-40ae-9f3a-514968c65643&lt;/A&gt; &lt;BR&gt;x86: &lt;A href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=0b212272-1884-4af1-972d-42ef1db9f977" mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=0b212272-1884-4af1-972d-42ef1db9f977"&gt;http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=0b212272-1884-4af1-972d-42ef1db9f977&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;A white paper is also included in the download packages, with detailed description of the tool, step-by-step instructions on how to use it and reference of the command line interface.&lt;/P&gt;
&lt;P&gt;For questions about FSCT and how to use it, please use the forum at&lt;BR&gt;&lt;A href="http://social.technet.microsoft.com/Forums/en-US/fsct/threads" mce_href="http://social.technet.microsoft.com/Forums/en-US/fsct/threads"&gt;http://social.technet.microsoft.com/Forums/en-US/fsct/threads&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Also check some details on FSCT on these previous posts (from the release of the beta last year and the release candidate back in July):&lt;BR&gt;&lt;A href="http://blogs.technet.com/josebda/archive/2009/07/08/file-server-capacity-tool-fsct-release-candidate-available-for-download.aspx" mce_href="http://blogs.technet.com/josebda/archive/2009/07/08/file-server-capacity-tool-fsct-release-candidate-available-for-download.aspx"&gt;http://blogs.technet.com/josebda/archive/2009/07/08/file-server-capacity-tool-fsct-release-candidate-available-for-download.aspx&lt;/A&gt;&lt;BR&gt;&lt;A href="http://blogs.technet.com/josebda/archive/2008/10/06/fsct-a-cifs-smb-smb2-file-server-tool-for-capacity-planning-and-performance-troubleshooting.aspx" mce_href="http://blogs.technet.com/josebda/archive/2008/10/06/fsct-a-cifs-smb-smb2-file-server-tool-for-capacity-planning-and-performance-troubleshooting.aspx"&gt;http://blogs.technet.com/josebda/archive/2008/10/06/fsct-a-cifs-smb-smb2-file-server-tool-for-capacity-planning-and-performance-troubleshooting.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;This is a major milestone in the two-year journey to offer this tool publicly, which included efforts from a number of people from different teams at Microsoft, including the File Server Team and the Windows Performance Team.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3281464" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Windows Server 2008" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008/default.aspx" /><category term="Storage" scheme="http://blogs.technet.com/josebda/archive/tags/Storage/default.aspx" /><category term="Windows 7" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+7/default.aspx" /><category term="FSCT" scheme="http://blogs.technet.com/josebda/archive/tags/FSCT/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="SMB" scheme="http://blogs.technet.com/josebda/archive/tags/SMB/default.aspx" /><category term="Interoperability" scheme="http://blogs.technet.com/josebda/archive/tags/Interoperability/default.aspx" /></entry><entry><title>TI-55-II calculator, the first device I ever programmed</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/29/ti-55-ii-calculator-the-first-device-i-ever-programmed.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/29/ti-55-ii-calculator-the-first-device-i-ever-programmed.aspx</id><published>2009-08-30T05:50:00Z</published><updated>2009-08-30T05:50:00Z</updated><content type="html">&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR vAlign=top align=left&gt;
&lt;TD&gt;
&lt;P&gt;I recently bought a used TI-55-II on eBay. This is an old (early 80’s) Texas Instruments calculator, one the first programmable ones. I got it mostly for sentimental value, since I used to own one back in Brazil in 1983, my last year in high school. &lt;/P&gt;
&lt;P&gt;Looking back, the fact that I got this specific programmable calculator exactly at that moment in my life was probably an important contributing factor to my choice of Computer Science when I joined the Federal University of Ceara in Brazil in 1984. Before that, I had my eyes set on Architecture. And not Computer or Systems Architecture, I should say, since back&amp;nbsp;then we did not associate Architecture with Computer Science careers.&lt;/P&gt;
&lt;P&gt;The TI-55-II is actually a pretty limited device by today’s standards. You have a 10-digit LCD display, 8 “memories” and 56 “programming steps”. Programming the calculator basically meant storing a sequence of keystrokes and you had no conditional statements, just one RST command to go back to step 0. Even with that, I remember being quite impressed with the ability to create a program, use multiple variables and display data on the screen (there is a PAUSE instruction to let you see a number on the screen before moving to the next step). &lt;/P&gt;
&lt;P&gt;The calculator I used back in high school was actually manufactured in the city of Manaus in Brazil ("Produzida na Zona Franca de&amp;nbsp;Manaus") by a subsidiary of Texas Instruments. I found some information about it on the internet: &lt;A href="http://www.datamath.org/Sci/Slanted/TI-55-II-AA.htm" mce_href="http://www.datamath.org/Sci/Slanted/TI-55-II-AA.htm"&gt;http://www.datamath.org/Sci/Slanted/TI-55-II-AA.htm&lt;/A&gt;. In fact, there is even a soft copy of the manual in PDF format: &lt;A href="http://www.datamath.net/Manuals/TI-55-II_QR_US.pdf" mce_href="http://www.datamath.net/Manuals/TI-55-II_QR_US.pdf"&gt;http://www.datamath.net/Manuals/TI-55-II_QR_US.pdf&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;My used TI-55-II I got from eBay (shown on the right) was made in the US in 1982. It's almost the same as the Brazilian model except for the type of battery it uses. Details&amp;nbsp;at &lt;A href="http://www.datamath.org/Sci/Slanted/TI-55-II.htm"&gt;http://www.datamath.org/Sci/Slanted/TI-55-II.htm&lt;/A&gt;. Mine is actually working fine and I even managed to remember how to create simple programs with it. Interesting how your brain can retain that kind of information decades later… &lt;/P&gt;
&lt;P&gt;See also a previous blog post on CP/M and the TRS-80, which I used a few years after that: &lt;A href="http://blogs.technet.com/josebda/archive/2009/08/07/the-good-old-days-of-cp-m-2-2-on-a-trs-80-with-an-8-bit-z80-cpu.aspx" mce_href="http://blogs.technet.com/josebda/archive/2009/08/07/the-good-old-days-of-cp-m-2-2-on-a-trs-80-with-an-8-bit-z80-cpu.aspx"&gt;http://blogs.technet.com/josebda/archive/2009/08/07/the-good-old-days-of-cp-m-2-2-on-a-trs-80-with-an-8-bit-z80-cpu.aspx&lt;/A&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;IMG style="WIDTH: 234px; HEIGHT: 402px" title=TI-55-II alt=TI-55-II src="http://blogs.technet.com/photos/filecab/images/3278051/original.aspx" width=234 height=402 mce_src="http://blogs.technet.com/photos/filecab/images/3278051/original.aspx"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3278050" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Brazil" scheme="http://blogs.technet.com/josebda/archive/tags/Brazil/default.aspx" /><category term="History" scheme="http://blogs.technet.com/josebda/archive/tags/History/default.aspx" /></entry><entry><title>Windows Server DFS-Namespaces Performance and Scalability </title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/22/windows-server-dfs-namespaces-performance-and-scalability.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/22/windows-server-dfs-namespaces-performance-and-scalability.aspx</id><published>2009-08-22T21:45:00Z</published><updated>2009-08-22T21:45:00Z</updated><content type="html">&lt;P&gt;The DFS-N test team has completed some extensive Performance and Scalability testing and we wanted to share some of the results.&lt;/P&gt;
&lt;P&gt;It includes results on standalone namespaces, "2000 mode" domain namespaces and "2008 mode" domain namespaces, under Windows Server 2003, Windows Server 2008 and Windows Server 2008 R2.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Check the post by Marcello Hasegawa at &lt;A href="http://blogs.technet.com/filecab/archive/2009/08/22/windows-server-dfs-namespaces-performance-and-scalability.aspx" mce_href="http://blogs.technet.com/filecab/archive/2009/08/22/windows-server-dfs-namespaces-performance-and-scalability.aspx"&gt;http://blogs.technet.com/filecab/archive/2009/08/22/windows-server-dfs-namespaces-performance-and-scalability.aspx&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3275952" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Windows Server 2008" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="DFS" scheme="http://blogs.technet.com/josebda/archive/tags/DFS/default.aspx" /></entry><entry><title>Three ways to design your DFS Namespaces</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/21/three-ways-to-design-your-dfs-namespaces.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/21/three-ways-to-design-your-dfs-namespaces.aspx</id><published>2009-08-22T02:00:00Z</published><updated>2009-08-22T02:00:00Z</updated><content type="html">&lt;P&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;In this blog post, we’ll showcase the flexibility you have with DFS-N by showing three distinct ways that you could design a namespace.&lt;/P&gt;
&lt;P&gt;Note: If you’re not familiar with DFS-N, please read this blog post first: &lt;BR&gt;&lt;A href="http://blogs.technet.com/josebda/archive/2009/03/10/the-basics-of-the-windows-server-2008-distributed-file-system-dfs.aspx" mce_href="http://blogs.technet.com/josebda/archive/2009/03/10/the-basics-of-the-windows-server-2008-distributed-file-system-dfs.aspx"&gt;http://blogs.technet.com/josebda/archive/2009/03/10/the-basics-of-the-windows-server-2008-distributed-file-system-dfs.aspx&lt;/A&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Scenario&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;The scenario here is simple: you have three file servers in different locations: S1 is in New York, S2 is in Amsterdam and S3 is in Hong Kong. Each server has a unique set of data (Proposals, Marketing information and Engineering documents for each geography) and you want to expose this under a single namespace. Here’s the structure on each file server:&lt;/P&gt;
&lt;P&gt;Server S1 in New York:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;F:\AMER\PROPOSAL – Proposals for the AMER (Americas) region&lt;/LI&gt;
&lt;LI&gt;F:\AMER\MARKETING – Marketing information for the AMER region&lt;/LI&gt;
&lt;LI&gt;F:\AMER\ENGINEERING – Engineering documents for the AMER region&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Server S2 in Amsterdam:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;F:\EMEA\PROPOSAL – Proposals for the EMEA (Europe, Middle East and Africa) region&lt;/LI&gt;
&lt;LI&gt;F:\EMEA\MARKETING – Marketing information for the EMEA region&lt;/LI&gt;
&lt;LI&gt;F:\EMEA\ENGINEERING – Engineering documents for the EMEA region&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Server S3 in Hong Kong:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;F:\APAC\PROPOSAL – Proposals for the APAC (Asia and Pacific) region&lt;/LI&gt;
&lt;LI&gt;F:\APAC\MARKETING – Marketing information for the APAC region&lt;/LI&gt;
&lt;LI&gt;F:\APAC\ENGINEERING – Engineering documents for the APAC region&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Please note that this specific scenario does not include replication. Each server each has completely an independent set of files. For instance, a proposal for an EMEA customer would exist only in the F:\EMEA\PROPOSALS folder in S2 and it would not exist in servers S1 or S3. Replication across these servers could be accomplished using DFS-R, but I am purposely avoiding it in this example to focus specifically on DFS-N design.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Creating the folders and shares&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;First of all, I am providing the scripts to create the folder structure and the shares. These are 3 distinct scripts and each one needs to be run on a specific server (S1, S2 or S3). We could actually do this all remotely, but I’m keeping it simple. &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;CREATE-S1.CMD&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;REM ## RUN THIS SCRIPT in S1, the file server in New York&lt;BR&gt;MD F:\AMER\PROPOSALS&lt;BR&gt;MD F:\AMER\MARKETING&lt;BR&gt;MD F:\AMER\ENGINEERING&lt;BR&gt;NET SHARE AMER=F:\AMER
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;CREATE-S2.CMD&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;REM&amp;nbsp;## RUN THIS SCRIPT in S2, the file server in Amsterdam&lt;BR&gt;MD F:\EMEA\PROPOSALS&lt;BR&gt;MD F:\EMEA\MARKETING&lt;BR&gt;MD F:\EMEA\ENGINEERING&lt;BR&gt;NET SHARE EMEA=F:\EMEA
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;CREATE-S3.CMD&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;REM ## RUN THIS SCRIPT in S3, the file server in Hong Kong&lt;BR&gt;MD F:\APAC\PROPOSALS&lt;BR&gt;MD F:\APAC\MARKETING&lt;BR&gt;MD F:\APAC\ENGINEERING&lt;BR&gt;NET SHARE APAC=F:\APAC
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Please note that the shares will end up with read-only permissions using the commands above. In your real-world deployment you will need to properly plan your NTFS and file share permissions and implement them properly with CACLS or ICACLS.EXE (for NTFS) and the /GRANT option in NET SHARE (for the file shares). The focus of this post is not on permissions but on the structure of the shares, folders and namespaces. &lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Namespace option 1 – Simple mapping of shares&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;The first option I will cover is a simple mapping at the root share on each server. This is simpler because it requires a namespace with only three folders (or links). Assuming we use a fourth server (S4) as the namespace server (or target) and NS1 as the name of the namespace (or root), users would basically use \\S4\NS1 as the UNC path to the entire set of data from all three file servers.&lt;/P&gt;
&lt;P&gt;Note 1: You could host the namespace in one of the file servers, see details at&amp;nbsp; &lt;A href="http://blogs.technet.com/josebda/archive/2009/06/26/how-many-dfs-n-namespaces-servers-do-you-need.aspx" mce_href="http://blogs.technet.com/josebda/archive/2009/06/26/how-many-dfs-n-namespaces-servers-do-you-need.aspx"&gt;http://blogs.technet.com/josebda/archive/2009/06/26/how-many-dfs-n-namespaces-servers-do-you-need.aspx&lt;/A&gt; &lt;BR&gt;Note 2: We’re using a standalone namespace here, but you could just as easily use a domain namespace instead.&lt;BR&gt;Note 3: We’re not adding any fault tolerance for the namespace or the file servers in these scenarios. This could be accomplished with Failover Clustering for standalone namespaces or with multiple targets for a domain namespace.&lt;/P&gt;
&lt;P&gt;Here’s a script to create the namespace, which should be run on S4:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;CREATE-NS1.CMD&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;REM ## scenario 1 - Simple mapping of shares
REM ## RUN THIS SCRIPT in S4, the namespace server
MD F:\NS1
NET SHARE NS1=F:\NS1
DFSUTIL ROOT ADDSTD \\S4\NS1
DFSUTIL LINK ADD \\S4\NS1\AMER \\S1\AMER
DFSUTIL LINK ADD \\S4\NS1\EMEA \\S2\EMEA
DFSUTIL LINK ADD \\S4\NS1\APAC \\S3\APAC
DIR \\S4\NS1 /S /B
DFSUTIL ROOT EXPORT \\S4\NS1 F:\NS1EXPORT.XML VERBOSE
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;From an end-user perspective, the folder structure under \\S4\NS1 would look like this:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;IMG style="WIDTH: 153px; HEIGHT: 272px" title="DFS NSD 1" alt="DFS NSD 1" src="http://blogs.technet.com/photos/josebda2/images/3275497/original.aspx" width=153 height=272 mce_src="http://blogs.technet.com/photos/josebda2/images/3275497/original.aspx"&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;At the end of this script, an XML export of the namespace is created. Here’s what it looks like:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;NS1EXPORT.XML&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;BR&gt;&amp;lt;Root xmlns = "http://schemas.microsoft.com/dfs/2007/03/dfsutil" majorVersion = "2" minorVersion = "0" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name="\\S4\NS1" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S4\NS1&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="AMER" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="EMEA" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="APAC" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;lt;/Root&amp;gt;
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Namespace option 2 – Flattening out the tree in the namespace&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;This second options shows the flexibility of DFS-N by creating a flat list of folders from the three servers and their folder structures. Users might find convenient to see a long list of folders without any nesting of folders. This shows how you can point your folder targets (or link targets) to a folder inside the share, not only the root of the file share. Again we’ll use that fourth server (S4) as the namespace server (or target), but now with NS2 as the name of the namespace (or root). Users would use \\S4\NS2 as the UNC path to the entire set of data from all three file servers.&lt;/P&gt;
&lt;P&gt;Here’s a script to create the namespace, which should be run on S4:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;CREATE-NS2.CMD&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;REM ## scenario 2 - Flattening out the tree in the namespace
REM ## RUN THIS SCRIPT in S4, the namespace server
MD F:\NS2
NET SHARE NS2=F:\NS2
DFSUTIL ROOT ADDSTD \\S4\NS2
DFSUTIL LINK ADD \\S4\NS2\AMERPROP \\S1\AMER\PROPOSALS
DFSUTIL LINK ADD \\S4\NS2\AMERMARK \\S1\AMER\MARKETING
DFSUTIL LINK ADD \\S4\NS2\AMERENGI \\S1\AMER\ENGINEERING
DFSUTIL LINK ADD \\S4\NS2\EMEAPROP \\S2\EMEA\PROPOSALS
DFSUTIL LINK ADD \\S4\NS2\EMEAMARK \\S2\EMEA\MARKETING
DFSUTIL LINK ADD \\S4\NS2\EMEAENGI \\S2\EMEA\ENGINEERING
DFSUTIL LINK ADD \\S4\NS2\APACPROP \\S3\APAC\PROPOSALS
DFSUTIL LINK ADD \\S4\NS2\APACMARK \\S3\APAC\MARKETING
DFSUTIL LINK ADD \\S4\NS2\APACENGI \\S3\APAC\ENGINEERING
DIR \\S4\NS2 /S /B
DFSUTIL ROOT EXPORT \\S4\NS2 F:\NS2EXPORT.XML VERBOSE
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;From an end-user perspective, the folder structure under \\S4\NS2 would be flat, like this:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;IMG style="WIDTH: 127px; HEIGHT: 212px" title="DFS NSD 2" alt="DFS NSD 2" src="http://blogs.technet.com/photos/josebda2/images/3275498/original.aspx" width=127 height=212 mce_src="http://blogs.technet.com/photos/josebda2/images/3275498/original.aspx"&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;At the end of this script, an XML export of the namespace is created. Here’s what it looks like:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;NS2EXPORT.XML&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;BR&gt;&amp;lt;Root xmlns = "http://schemas.microsoft.com/dfs/2007/03/dfsutil" majorVersion = "2" minorVersion = "0" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name="\\S4\NS2" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S4\NS2&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="EMEAMARK" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA\MARKETING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="APACENGI" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC\ENGINEERING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="APACMARK" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC\MARKETING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="AMERMARK" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER\MARKETING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="AMERENGI" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER\ENGINEERING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="AMERPROP" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER\PROPOSALS&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="APACPROP" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC\PROPOSALS&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="EMEAPROP" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA\PROPOSALS&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="EMEAENGI" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA\ENGINEERING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;lt;/Root&amp;gt;
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Namespace option 3 -&amp;nbsp; Namespace reversing the original tree structure on each file server&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;Last but not least, the most interesting exhibit of the flexibility of DFS-N. In this case we’ll create a namespace showing the collection of folders group by type instead of geography. DFS-N makes it easy, since we can basically restructure the shares as we create the namespace. This shows how you can also use a tree structure on the DFS folder (or link) side of the equation, which can do a lot when you combine with what we did in option 2 above. Again we’ll use that fourth server (S4) as the namespace server (or target), but now with NS3 as the name of the namespace (or root). Users would use \\S4\NS3 as the UNC path to the entire set of data from all three file servers.&lt;/P&gt;
&lt;P&gt;Here’s a script to create the namespace, which should be run on S4:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;CREATE-NS3.CMD&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;REM ## scenario 3 –  Namespace reversing the original tree structure on each file server
REM ## RUN THIS SCRIPT in S4, the namespace server
MD F:\NS3
NET SHARE NS3=F:\NS3
DFSUTIL ROOT ADDSTD \\S4\NS3
DFSUTIL LINK ADD \\S4\NS3\PROPOSALS\AMER \\S1\AMER\PROPOSALS
DFSUTIL LINK ADD \\S4\NS3\MARKETING\AMER \\S1\AMER\MARKETING
DFSUTIL LINK ADD \\S4\NS3\ENGINEERING\AMER \\S1\AMER\ENGINEERING
DFSUTIL LINK ADD \\S4\NS3\PROPOSALS\EMEA \\S2\EMEA\PROPOSALS
DFSUTIL LINK ADD \\S4\NS3\MARKETING\EMEA \\S2\EMEA\MARKETING
DFSUTIL LINK ADD \\S4\NS3\ENGINEERING\EMEA \\S2\EMEA\ENGINEERING
DFSUTIL LINK ADD \\S4\NS3\PROPOSALS\APAC \\S3\APAC\PROPOSALS
DFSUTIL LINK ADD \\S4\NS3\MARKETING\APAC \\S3\APAC\MARKETING
DFSUTIL LINK ADD \\S4\NS3\ENGINEERING\APAC \\S3\APAC\ENGINEERING
DIR \\S4\NS3 /S /B
DFSUTIL ROOT EXPORT \\S4\NS3 F:\NS3EXPORT.XML VERBOSE
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;From an end-user perspective, the folder structure under \\S4\NS3 is shown below. It examplifies how DFS-N can completely mask the physical infrastructure behind the namespace:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;IMG style="WIDTH: 141px; HEIGHT: 277px" title="DFS NSD 3" alt="DFS NSD 3" src="http://blogs.technet.com/photos/josebda2/images/3275499/original.aspx" width=141 height=277 mce_src="http://blogs.technet.com/photos/josebda2/images/3275499/original.aspx"&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Note that \\S4\NS3\ENGINEERING, \\S4\NS3\MARKETING and \\S4\NS3\PROPOSALS don’t actually exist as DFS folders (or links) at all. They are basically abstract constructs shown only in the UI, which don’t map to any specific target. You can confirm this when you look at the export of the namespace:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;NS3EXPORT.XML&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;BR&gt;&amp;lt;Root xmlns = "http://schemas.microsoft.com/dfs/2007/03/dfsutil" majorVersion = "2" minorVersion = "0" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name="\\S4\NS3" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S4\NS3&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="MARKETING\APAC" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC\MARKETING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="MARKETING\AMER" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER\MARKETING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="ENGINEERING\EMEA" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA\ENGINEERING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="MARKETING\EMEA" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA\MARKETING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="ENGINEERING\AMER" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER\ENGINEERING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="PROPOSALS\AMER" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S1\AMER\PROPOSALS&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="PROPOSALS\APAC" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC\PROPOSALS&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="PROPOSALS\EMEA" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S2\EMEA\PROPOSALS&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Link Name="ENGINEERING\APAC" State="OK" Timeout="300" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Target State="ONLINE" &amp;gt;\\S3\APAC\ENGINEERING&amp;lt;/Target&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Link&amp;gt;&lt;BR&gt;&amp;lt;/Root&amp;gt;
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Conclusion&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;I hope this helped you understand how DFS-N folder (or links) and folder targets (link targets) work. Please note that we could create this all using the DFS Management graphical user interface (or MMC). We did this in the command line because it’s easier to document that way. Here’s a view from the MMC of all the three namespaces we created:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;IMG style="WIDTH: 794px; HEIGHT: 617px" title="DFS NSD 4" alt="DFS NSD 4" src="http://blogs.technet.com/photos/josebda2/images/3275500/original.aspx" width=794 height=617 mce_src="http://blogs.technet.com/photos/josebda2/images/3275500/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;Please note that you do not want to create all three namespaces simultaneously. I did this just for showing it here. You would choose the option that best fits your purpose. The goal here is to simplify things for the users, not to confuse them :-)&lt;/P&gt;
&lt;P&gt;I also did not cover replication here at all. In fact, this example uses only DFS-N and can even be run without the DFS-R role service installed. We could certainly design a namespace that takes replication into account, but that’s a topic for another blog post…&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Links&lt;/STRONG&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;For more information about DFS-Namespaces, see also the following links from TechNet:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;DFS Management: &lt;A href="http://technet.microsoft.com/en-us/library/cc730736.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc730736.aspx"&gt;http://technet.microsoft.com/en-us/library/cc730736.aspx&lt;/A&gt;.&lt;/LI&gt;
&lt;LI&gt;Checklist: Deploy DFS Namespaces: &lt;A href="http://technet.microsoft.com/en-us/library/cc725830.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc725830.aspx"&gt;http://technet.microsoft.com/en-us/library/cc725830.aspx&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;Choose a Namespace Type: &lt;A href="http://technet.microsoft.com/en-us/library/cc770287.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc770287.aspx"&gt;http://technet.microsoft.com/en-us/library/cc770287.aspx&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;&lt;/BLOCKQUOTE&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3275501" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Windows Server 2008" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008/default.aspx" /><category term="Storage" scheme="http://blogs.technet.com/josebda/archive/tags/Storage/default.aspx" /><category term="Windows Storage Server" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Storage+Server/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="DFS" scheme="http://blogs.technet.com/josebda/archive/tags/DFS/default.aspx" /></entry><entry><title>Experimenting with PowerShell Cmdlets, Snap-ins and Modules</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/09/experimenting-with-powershell-cmdlets-snap-ins-and-modules.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/09/experimenting-with-powershell-cmdlets-snap-ins-and-modules.aspx</id><published>2009-08-10T08:12:00Z</published><updated>2009-08-10T08:12:00Z</updated><content type="html">&lt;P&gt;As I continue to experiment with PowerShell v2&amp;nbsp;in Windows Server&amp;nbsp;2008 R2,&amp;nbsp;I will share some of what I learn&amp;nbsp;here on the blog. This time I am focusing on Cmdlets, Snap-ins and Modules.&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Cmdlets&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Windows PowerShell introduced the notion of a “cmdlet” (you pronounce it “commandlet”). These are like tools or commands that are typically very simple and to the point (although most have properties or parameters). For instance, there is one to restart a computer (Restart-Computer), one to list the hotfixes installed on a computer (Get-Hotfix) and one to invoke a WMI method (Invoke-WmiMethod). You can get a list of cmdlets using a cmdlet called Get-Command. You can also learn more about a cmdlet by using a cmd-let called Get-Help. &lt;/P&gt;
&lt;P&gt;Try these:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Get-Command&lt;/LI&gt;
&lt;LI&gt;Get-Command -CommandType cmdlet&lt;/LI&gt;
&lt;LI&gt;Get-Command | ?{$_.Commandtype -eq "Cmdlet"}&lt;/LI&gt;
&lt;LI&gt;Get-Help Get-Command&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Verbs and Nouns&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;You probably noticed that the name of the cmdlets are always divided into two parts, separated by a dash. The first part describes the type of action (called the “Verb”) and the second part describes the object where the action is performed (called the “Noun”). You will notice that the way verbs and nouns are used are quite consistent. You will see some verbs being frequently used, like “Get”, “Set”, “New” and “Remove”. Common nouns include “Item”, “Object”, “Service”, “EventLog”, “Computer” or “Job”. Not every combination of verb and noun is implemented though, you can use Get-Command and Get-Help to find more.&lt;/P&gt;
&lt;P&gt;Try these:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Get-Command -CommandType cmdlet | Select Name, Verb, Noun&lt;/LI&gt;
&lt;LI&gt;Get-Command | ?{$_.Noun -eq "Computer"}&lt;/LI&gt;
&lt;LI&gt;Get-Command | ?{$_.Verb -eq "New"}&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Parameters&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Cmdlets also commonly include parameters. As with the regular command prompt in Windows and with most command-line tools, these will inform the cmdlet details about what to do. They are many times optional. There is usually a default parameter that can be provided right after the cmdlet name. Others must be explicitly declared by the parameter name starting with a dash. The Get-Help cmdlet, for instance, can be provided with a default parameter to indicate what cmdlet you need help on. You can also specify optional parameters like -examples or -detailed. Parameters vary widely between cmdlets. You can use Get-Help to learn more about the parameters for a specific cmdlet.&lt;/P&gt;
&lt;P&gt;Try these:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Get-Help command&lt;/LI&gt;
&lt;LI&gt;Get-Help Get-Command -examples&lt;/LI&gt;
&lt;LI&gt;Get-Help about_parameters&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Snap-ins&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;PowerShell can be extended in a number of ways and one of them is to add more cmdlets. The built-in cmdlets, for example, come from some PowerShell Snap-ins. A number of those snap-ins are loaded by default. By default, in Windows Server 2008 R2, the following snap-ins are loaded. You can get a list with Get-PSSnapin:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Microsoft.PowerShell.Diagnostics&lt;/LI&gt;
&lt;LI&gt;Microsoft.WSMan.Management&lt;/LI&gt;
&lt;LI&gt;Microsoft.PowerShell.Core&lt;/LI&gt;
&lt;LI&gt;Microsoft.PowerShell.Utility&lt;/LI&gt;
&lt;LI&gt;Microsoft.PowerShell.Host&lt;/LI&gt;
&lt;LI&gt;Microsoft.PowerShell.Management&lt;/LI&gt;
&lt;LI&gt;Microsoft.PowerShell.Security&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;The Get-Command and Get-Help cmdlets, for instance, come from Microsoft.PowerShell.Core Snap-in. You can load addition snap-in (with Add-PSSnapin). Snap-ins are basically .NET program compiled into DLL files and they can also include (in addition to cmdlets), providers and functions. The snap-in definition includes &lt;/P&gt;
&lt;P&gt;Try these:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Get-Help snapin&lt;/LI&gt;
&lt;LI&gt;Get-PSSnapin&lt;/LI&gt;
&lt;LI&gt;Get-Command -CommandType cmdlet | Select ModuleName | Sort ModuleName –Unique&lt;/LI&gt;
&lt;LI&gt;Get-Command -Module Microsoft.PowerShell.Core&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Modules&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;With PowerShell v2, cmdlets can also be defined in another type of extension called Modules. By default, Windows Server 2008 R2 PowerShell will not import any modules, but there are a number of modules available for importing. These modules are described in files you can find under the c:\Windows\System32\WindowsPowerShell\v1.0\Modules\ folder, including files with a "psd1" extension that contain details about the module in plain text. Here is a list of the modules available in Windows Server 2008 R2:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;ActiveDirectory&lt;/LI&gt;
&lt;LI&gt;ADRMS&lt;/LI&gt;
&lt;LI&gt;AppLocker&lt;/LI&gt;
&lt;LI&gt;BestPractices&lt;/LI&gt;
&lt;LI&gt;BitsTransfer&lt;/LI&gt;
&lt;LI&gt;GroupPolicy&lt;/LI&gt;
&lt;LI&gt;PSDiagnostics&lt;/LI&gt;
&lt;LI&gt;ServerManager&lt;/LI&gt;
&lt;LI&gt;TroubleshootingPack&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;The ServerManager module, for instance, provides cmdlets that can be use to manage Roles, Role Services and Features in Windows (they replace the deprecated ServerManagerCmd.exe tool). &lt;/P&gt;
&lt;P&gt;Try these:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Get-Help Module&lt;/LI&gt;
&lt;LI&gt;Get-Module -ListAvailable&lt;/LI&gt;
&lt;LI&gt;Get-ChildItem C:\Windows\System32\WindowsPowerShell\v1.0\Modules -Recurse&lt;/LI&gt;
&lt;LI&gt;Get-ChildItem C:\Windows\System32\WindowsPowerShell\v1.0\Modules -Recurse -Filter *.psd1 | Select Name, Length&lt;/LI&gt;
&lt;LI&gt;Get-Content c:\Windows\System32\WindowsPowerShell\v1.0\Modules\ServerManager\ServerManager.psd1&lt;/LI&gt;
&lt;LI&gt;Import-Module ServerManager&lt;/LI&gt;
&lt;LI&gt;Get-Module&lt;/LI&gt;
&lt;LI&gt;Get-Command -Module ServerManager&lt;/LI&gt;
&lt;LI&gt;Get-WindowsFeature&lt;/LI&gt;
&lt;LI&gt;Remove-Module ServerManager&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;I hope this helped you understand a bit more about cmdlets in PowerShell. Try the sample commands (for Windows Server 2008 R2) and keep on learning...&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3271983" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="The Basics" scheme="http://blogs.technet.com/josebda/archive/tags/The+Basics/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="PowerShell" scheme="http://blogs.technet.com/josebda/archive/tags/PowerShell/default.aspx" /></entry><entry><title>SNIA’s Storage Developers Conference 2009 in Santa Clara, CA is coming – Plan to be there on the week of September 14th</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/08/snia-s-storage-developers-conference-2009-in-santa-clara-ca-is-coming-plan-to-be-there-on-september-14th.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/08/snia-s-storage-developers-conference-2009-in-santa-clara-ca-is-coming-plan-to-be-there-on-september-14th.aspx</id><published>2009-08-08T20:04:00Z</published><updated>2009-08-08T20:04:00Z</updated><content type="html">&lt;P&gt;The Storage Networking Industry Association (SNIA) is hosting the 6th Storage Developer Conference (SDC) in the Hyatt Regency in beautiful Santa Clara, CA (Silicon Valley) on the week of September 14th. This event is also co-located with the CIFS/SMB/SMB2 Plugfest. For those working with storage technologies, this event gathers a unique crowd and includes a rich agenda that you can find at &lt;A href="http://www.snia.org/events/storage-developer2009/agenda2009" mce_href="http://www.snia.org/events/storage-developer2009/agenda2009"&gt;http://www.snia.org/events/storage-developer2009/agenda2009&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Looking at the agenda, you can see it includes presentations and/or panels with key industry players like Amazon, Brocade, EMC, Emulex, Google, HP, IBM, Intel, Isilon, The Linux Foundation, LSI, Microsoft, NetApp, The Samba Team, Sun, Symantec, Tata, Ubiqx, Western Digital and Wipro, just to mention a few names you should readily recognize.&lt;/P&gt;
&lt;P&gt;Microsoft is the CIFS/SMB/SMB2 Plugfest Underwriter and the presentations from Microsoft include topics like BranchCache, Green Technologies, Data Classification on File Servers, Windows File System Transactions, SMB version 2.1, Storage in Virtual Machine Manager, SMB2 Model Based Testing, File Server Capacity Tool (FSCT), DFS-Namespaces Scalability, Storage Management and Delete Notifications in Windows 7. Microsoft is also participating in the panel on Cloud Storage. I am helping deliver the presentations on FSCT and DFS-N, along with a few colleagues, and I will also spend time at the PlugFest. &lt;/P&gt;
&lt;P&gt;On last thing about the SDC and probably one of the most important ones is that the presentations are usually delivered to developers by the actual product teams and&amp;nbsp;frequently the actual developer of the technology is either delivering the presentation or is in the room to take questions. That kind of deep insight is&amp;nbsp;not common in every conference out there. For instance, I remember last year when there was a discussion (during&amp;nbsp;Q&amp;amp;A) about something&amp;nbsp;related to both NTFS and SMB. It was great to see senior developers from both teams in the room (one was the presenter and one was in the audience), discussing with attendees a specific topic that spanned both the local file system and the remote file serving protocol. &lt;/P&gt;
&lt;P&gt;Registration is open at&amp;nbsp; &lt;A href="http://www.snia.org/events/storage-developer2009/" mce_href="http://www.snia.org/events/storage-developer2009/"&gt;http://www.snia.org/events/storage-developer2009/&lt;/A&gt; and you should definitely plan to be there. If you are attending, leave a comment and let’s plan to meet when we get there!&lt;/P&gt;
&lt;P align=center&gt;&lt;A href="http://www.snia.org/events/storage-developer2009" mce_href="http://www.snia.org/events/storage-developer2009"&gt;&lt;IMG border=0 alt="SDC Banner 2009" src="http://www.snia.org/events/storage-developer2009/help_promote/SDC468Banner.gif" width=468 height=60 mce_src="http://www.snia.org/events/storage-developer2009/help_promote/SDC468Banner.gif"&gt; &lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3271731" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Training" scheme="http://blogs.technet.com/josebda/archive/tags/Training/default.aspx" /><category term="Storage" scheme="http://blogs.technet.com/josebda/archive/tags/Storage/default.aspx" /><category term="Events" scheme="http://blogs.technet.com/josebda/archive/tags/Events/default.aspx" /><category term="Windows 7" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+7/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="SMB" scheme="http://blogs.technet.com/josebda/archive/tags/SMB/default.aspx" /><category term="Interoperability" scheme="http://blogs.technet.com/josebda/archive/tags/Interoperability/default.aspx" /><category term="DFS" scheme="http://blogs.technet.com/josebda/archive/tags/DFS/default.aspx" /><category term="NFS" scheme="http://blogs.technet.com/josebda/archive/tags/NFS/default.aspx" /></entry><entry><title>The good old days of CP/M 2.2 on a TRS-80 with an 8-bit Z80 CPU</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/07/the-good-old-days-of-cp-m-2-2-on-a-trs-80-with-an-8-bit-z80-cpu.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/07/the-good-old-days-of-cp-m-2-2-on-a-trs-80-with-an-8-bit-z80-cpu.aspx</id><published>2009-08-08T08:00:00Z</published><updated>2009-08-08T08:00:00Z</updated><content type="html">&lt;P&gt;I was reading the news on the release of Windows 7 and stopped to think of the early days of my IT career and what an OS looked like then. I thought way back to one of the first microcomputer disk operating systems I ever used: CP/M. I actually remembered the few resident commands we had back then in CP/M: DIR, ERA, REN, TYPE, SAVE and USER. I remember that clearly because, back in the 1980s,&amp;nbsp;I taught some classes on CP/M&amp;nbsp;(while still attending college) and even wrote a little booklet (in Portuguese) on it. &lt;/P&gt;
&lt;P&gt;That was back in Brazil and we used a clone of the TRS-80 Model III computer called CP 500 from Micrologica, running on an 8-bit Z80 CPU at 2MHz, 48KB of RAM and a 5 1/4" floppy drive (holding less than 400KB of data). I first used the CP 500 at the school where I taught those classes and ended up owning one later on. Back then, we used applications like&amp;nbsp; Wordstar, SuperCalc and DBase II, and it all used to fit in a single floppy (leaving some free space for some documents).&lt;/P&gt;
&lt;P&gt;It’s amazing how these days there are online references to pretty much anything you can remember. I found Wikipedia pages on:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The TRS-80 computer from Tandy Corporation: &lt;A href="http://en.wikipedia.org/wiki/TRS-80" mce_href="http://en.wikipedia.org/wiki/TRS-80"&gt;http://en.wikipedia.org/wiki/TRS-80&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;The Z80 processor from Zilog: &lt;A href="http://en.wikipedia.org/wiki/Z80" mce_href="http://en.wikipedia.org/wiki/Z80"&gt;http://en.wikipedia.org/wiki/Z80&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;The CP/M operating system from Digital Research: &lt;A href="http://en.wikipedia.org/wiki/CP/M" mce_href="http://en.wikipedia.org/wiki/CP/M"&gt;http://en.wikipedia.org/wiki/CP/M&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;The Wordstar text editor from MicroPro: &lt;A href="http://en.wikipedia.org/wiki/Wordstar" mce_href="http://en.wikipedia.org/wiki/Wordstar"&gt;http://en.wikipedia.org/wiki/Wordstar&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;The SuperCalc spreadsheet from Computer Associates: &lt;A href="http://en.wikipedia.org/wiki/SuperCalc" mce_href="http://en.wikipedia.org/wiki/SuperCalc"&gt;http://en.wikipedia.org/wiki/SuperCalc&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;The dBASE II database management system from Ashton-Tate: &lt;A href="http://en.wikipedia.org/wiki/Dbase" mce_href="http://en.wikipedia.org/wiki/Dbase"&gt;http://en.wikipedia.org/wiki/Dbase&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;For those that can read&amp;nbsp;Portuguese, I also found:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;A wikipedia page on the Brazilian CP 500 from Prologica: &lt;A href="http://pt.wikipedia.org/wiki/CP500" mce_href="http://pt.wikipedia.org/wiki/CP500"&gt;http://pt.wikipedia.org/wiki/CP500&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Some detailed information on the CP 500&amp;nbsp;at the Museum of Computing and IT: &lt;A href="http://www.mci.org.br/micro/prologica/cp500.html"&gt;http://www.mci.org.br/micro/prologica/cp500.html&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;An ad from the days of the CP 500 launch in 1982: &lt;A href="http://www.mci.org.br/micro/prologica/cp500_ne_1g.jpg"&gt;http://www.mci.org.br/micro/prologica/cp500_ne_1g.jpg&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;To my amazement, I also found copies of old CP/M manuals dating back to 1976, including the CP/M 2.2 manual from 1983 at &lt;A href="http://www.cpm.z80.de/manuals/cpm22-m.pdf" mce_href="http://www.cpm.z80.de/manuals/cpm22-m.pdf"&gt;http://www.cpm.z80.de/manuals/cpm22-m.pdf&lt;/A&gt;. That trip down memory lane reminded me of the BASIC interpreters we used on those machines (both the resident basic for the TRS-80 and the MBASIC interpreter for CP/M). I also looked at some of my old archives on DVD and found some old MBASIC code I wrote for that computer.&lt;/P&gt;
&lt;P&gt;I also stumbled upon a series of recent videos on the history of Microsoft at&amp;nbsp; &lt;A href="http://channel9.msdn.com/shows/History/" mce_href="http://channel9.msdn.com/shows/History/"&gt;http://channel9.msdn.com/shows/History/&lt;/A&gt;. This includes an episode about the year 1977 when Microsoft released their the first Z80 BASIC interpreter and has Bill Gates talking about the launch of the TRS-80 computer: &lt;A href="http://channel9.msdn.com/shows/History/The-History-of-Microsoft-1977/" mce_href="http://channel9.msdn.com/shows/History/The-History-of-Microsoft-1977/"&gt;http://channel9.msdn.com/shows/History/The-History-of-Microsoft-1977/&lt;/A&gt;.&amp;nbsp; That was also the year Elvis died and the first Star Wars movie was released. &lt;/P&gt;
&lt;P&gt;Yeah… I guess I am getting old :-)&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3271679" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Training" scheme="http://blogs.technet.com/josebda/archive/tags/Training/default.aspx" /><category term="Brazil" scheme="http://blogs.technet.com/josebda/archive/tags/Brazil/default.aspx" /><category term="History" scheme="http://blogs.technet.com/josebda/archive/tags/History/default.aspx" /></entry><entry><title>Strings, Arrays and Functions in PowerShell v2 (and some sample code that speaks for itself :-)</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/08/02/strings-arrays-and-functions-in-powershell.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/08/02/strings-arrays-and-functions-in-powershell.aspx</id><published>2009-08-03T06:30:00Z</published><updated>2009-08-03T06:30:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;I spent some more time experimenting with PowerShell v2 and here goes my second post about it. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;This time around I am focusing on how to define variables, use expressions and create functions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The "problem" we're solving :-)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;To make it fun, I decided to create a little script that creates some random syllables, words and sentences using a set of rules. This will come out as some nonsense sentences, but they should be pronounceable. I wrote this little program in several languages before and it generally exercises a number of concepts around manipulating arrays and strings. It uses random numbers and sets of consonants and vowels, plus some logic around the number of syllables per word, words per sentence, etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Here are a few sample sentences created by the program:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Inepirula beicmicso phosa.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Ci muesit sacoipae naepdave opeefane.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Kikipor sofestrysu crasha browohocyn.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;De dyczershaco kurensataer mexi trerememee.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Cie he cho cyuba lio goabryntune.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Quiaphe breiepco henureme sopoche.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Pychurmabie osipi leberoi.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Ne trirorce auencuep je sucootoi yeelneer.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Uchekepian rinsi reypbar.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Oeciurgo vacra go.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;It’s gibberish, I know, but you should be able to pronounce it. &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;In fact, I went one step further and used the Speech API in Windows to actually have the computer say them out loud. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;P.S.: Due to its random nature, it is possible (although somewhat unlikely) that the program might spit out some bad words in some real language. I apologize in advance :-)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;What I learned&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;PowerShell proved quite capable of creating this program. In fact, due to its interesting abilities to turn strings into arrays, rich expressions and loop constructs, it was no problem at all. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;I did learn a few details that always vary from language to language:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;PowerShell uses a $ sign before the name of variables&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;When creating variables, you can specify the type in [], but that is optional&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Common types include int32, array, string and object &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Get-Random(n) will give you a random integer between 0 and (n-1).&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Strings are arrays of characters starting at item number 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The -split operator can turn a string into an array, splitting the string using a specified delimiter&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Substring is the function to get a piece of a string&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Length is the function to get the number of characters in a string (or items in an array)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Some operators are a bit tricky and it doesn’t use the regular "&amp;lt;", "&amp;gt;", "&amp;lt;=", "&amp;gt;=", "!="&amp;nbsp;and "==" operators. You&amp;nbsp;need to use "-lt", "-gt", "-le", "-ge", "-ne"&amp;nbsp;and "-eq" instead (there are many more). You get used to it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;You can use the “+=”, “-=”, “*=” assignment syntax as you have in C++, C#&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;You will sometimes need to enclose an expression in ( ) so that it is not confused with a statement&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;You can use the multiply operator to repeat a string. For instance (“-“ * 5) yields “-----“. This is one of those cases where you must use the ().&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;You can create COM objects with the ‘New-Object -ComObject “name”’ syntax&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;In loops and conditional statements, you use () to specify the conditions and { } to group the statements&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The default execution policy will not let you run an unsigned script. You can bypass this using “Set-ExecutionPolicy Unrestricted -scope process”. Note that this will only apply for the running process, due to the –scope parameter. You can set this at a wider scope, but you probably shouldn’t, for security reasons.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Closing comments&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Last but not least, find the code below. I tested this on Windows Server 2008 R2. &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Try it only on a test machine. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;You should probably save it in a file called sentences.ps1 (for instance) and run it from there using “.\sentences.ps1”.&amp;nbsp;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;Consider using the Powershell ISE, which includes a debugger. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;Use CTRL-C to stop it before&amp;nbsp;it says all 10 sentences.&amp;nbsp;You might have to wait&amp;nbsp;for it to end saying a sentence&amp;nbsp;before it actually stops.&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;&lt;o:p&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The code&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;[array] $Vowels = "a;a;a;a;e;e;e;e;i;i;i;o;o;o;u;u;y" -split ";"&lt;BR&gt;[array] $Consonants = "b;b;br;c;c;c;ch;cr;d;f;g;h;j;k;l;m;m;m;n;n;p;p;ph;qu;r;r;r;s;s;s;sh;t;tr;v;w;x;z" -split ";"&lt;BR&gt;[array] $Endings = "r;r;s;r;l;n;n;n;c;c;t;p" -split ";"&lt;BR&gt;[object] $Voice = New-Object -ComObject "SAPI.SPVoice"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;function Get-RandomVowel &lt;BR&gt;{ return $Vowels[(Get-Random($Vowels.Length))] }&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;function Get-RandomConsonant&lt;BR&gt;{ return $Consonants[(Get-Random($Consonants.Length))] }&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;function Get-RandomEnding&lt;BR&gt;{ return $Endings[(Get-Random($Endings.Length))] }&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;function Get-RandomSyllable ([int32] $PercentConsonants, [int32] $PercentEndings)&lt;BR&gt;{&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp; [string] $Syllable = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp; if ((Get-Random(100)) -le $PercentConsonants) &lt;BR&gt;&amp;nbsp;&amp;nbsp; { $Syllable+= Get-RandomConsonant }&lt;BR&gt;&amp;nbsp;&amp;nbsp; $Syllable+= Get-RandomVowel&lt;BR&gt;&amp;nbsp;&amp;nbsp; if ((Get-Random(100)) -le $PercentEndings) &lt;BR&gt;&amp;nbsp;&amp;nbsp; { $Syllable+= Get-RandomEnding }&lt;BR&gt;&amp;nbsp;&amp;nbsp; return $Syllable&lt;BR&gt;}&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;function Get-RandomWord ([int32] $MinSyllables, [int32] $MaxSyllables)&lt;BR&gt;{&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp; [string] $Word = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp; [int32] $Syllables = ($MinSyllables) + (Get-Random(($MaxSyllables - $MinSyllables + 1)))&lt;BR&gt;&amp;nbsp;&amp;nbsp; for ([int32] $Count=1; $Count -le $Syllables; $Count++) &lt;BR&gt;&amp;nbsp;&amp;nbsp; { $Word += Get-RandomSyllable 70 20 } &amp;lt;# Consonant 70% of the time, Ending 20% #&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; return $Word&lt;BR&gt;}&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;function Get-RandomSentence ([int32] $MinWords, [int32] $MaxWords) &lt;BR&gt;{&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp; [string] $Sentence = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp; [int32] $Words = ($MinWords) + (Get-Random($MaxWords - $MinWords + 1))&lt;BR&gt;&amp;nbsp;&amp;nbsp; for ([int32] $Count=1; $Count -le $Words; $Count++) &lt;BR&gt;&amp;nbsp;&amp;nbsp; { &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $Sentence += Get-RandomWord 1 5 &amp;lt;# Word with 1 to 5 syllables #&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $Sentence += " "&lt;BR&gt;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp; $Sentence = $Sentence.substring(0,1).ToUpper() + $Sentence.substring(1,$Sentence.Length-2) + "."&lt;BR&gt;&amp;nbsp;&amp;nbsp; return $Sentence&lt;BR&gt;}&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;BR&gt;for ([int32] $Count=1; $Count -le 10; $Count++) &lt;BR&gt;{ &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [string] $Sentence = Get-RandomSentence 2 6 &amp;lt;# Sentence with 2 to 6 words #&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write-Host $Sentence&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Write-Host ("-" * $Sentence.Length)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [int32] $VResult = $Voice.Speak($Sentence)&lt;BR&gt;}&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Improve it&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Now that you got this code, you might want to work on it and make it better. Maybe changing the frequency of the consonants, vowels and endings. Maybe tweak the number of syllables per word or words per sentence. You might even think of ways to make it generate some poetry with the right number of syllables per sentence and some rhyming. Have fun…&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3270194" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Windows 7" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+7/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="PowerShell" scheme="http://blogs.technet.com/josebda/archive/tags/PowerShell/default.aspx" /></entry><entry><title>Experimenting with PowerShell v2</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/07/25/experimenting-with-powershell.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/07/25/experimenting-with-powershell.aspx</id><published>2009-07-25T22:30:00Z</published><updated>2009-07-25T22:30:00Z</updated><content type="html">&lt;P&gt;Powershell is a&amp;nbsp;command line interface for Windows that offers a&amp;nbsp;very powerful and flexible model.&lt;BR&gt;It is now a feature included with Windows 7 and Windows Server 2008 R2, not an optional download as before.&lt;BR&gt;In this post, I show some sample commands that&amp;nbsp;can help you understand some of the basic features and a few more complex ones.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you never played with it before, try running &lt;STRONG&gt;Get-Help &lt;/STRONG&gt;and &lt;STRONG&gt;Get-Command &lt;/STRONG&gt;in a PowerShell prompt. &lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows a list of commands: &lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Command&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows the help overview: &lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Help&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Show the help for “Dir”:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Help Dir&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;Let's use the &lt;STRONG&gt;Dir &lt;/STRONG&gt;command now&amp;nbsp;(actually an alias for &lt;STRONG&gt;Get-ChildItem&lt;/STRONG&gt;) and a number of ways to transform the output using &lt;STRONG&gt;pipeline functions&lt;/STRONG&gt;:&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows Directory:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows Directory in list format (two ways):&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Format-List &lt;BR&gt;Dir | FL&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows Directory sorted by file length:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Sort Length&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows Directory sorted by file length in descending order:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Sort Length –Descending&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all the methods and properties for the objects resulting from Dir (files and folders):&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Get-Member&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows a selected list of properties instead of the default list:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Select&amp;nbsp; Directory, Name, Extension, Length&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows directory in HTML format (not much use going to the console like this, though):&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | ConvertTo-Html &lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Output the Directory listing to a file:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Out-File psfilelist.txt&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Output the Directory listing to a grid in window:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Out-GridView&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;All together now: Shows selected list of properties, sorted, in HTML, going to a file. You need to open the file yourself:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir | Select Directory, Name, Extension, Length | Sort Length -Descending | ConvertTo-Html | Out-File psfilelist.htm&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;Now exploring other “drives” in PowerShell with &lt;STRONG&gt;Get-PSDrive&lt;/STRONG&gt;, including the certificate store and the registry.&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Get list of PowerShell “drives”:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-PSDrive&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows environment variables:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir ENV:\&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows the certiticate store:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir CERT:\&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows root certificates for the machine:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir CERT:\LocalMachine\Root | Select FriendlyName, NotAfter&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows “HK Local Machine” portion of the registry&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows specified part of the registry:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;Another easy way to get interesting data is with &lt;STRONG&gt;Get-Process&lt;/STRONG&gt;.&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;List running processes:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Process&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all the methods and properties for the process objects:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Process | Get-Member&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows selected list of properties of running processes, formatted as table:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Process | Select Id, Name, Product, CPU, WorkingSet | Format-Table –autosize&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;Combining PowerShell with WMI is also very interesting. You can leverage any WMI provider on the box using &lt;STRONG&gt;Get-WmiObject&lt;/STRONG&gt;.&lt;BR&gt;You can get a list of WMI Classes from &lt;A href="http://msdn.microsoft.com/en-us/library/aa394554(VS.85).aspx" mce_href="http://msdn.microsoft.com/en-us/library/aa394554(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/aa394554(VS.85).aspx&lt;/A&gt; &lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all WMI objects with "disk" on the name:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject -List *disk* | Select Name&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows disk partitions:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject Win32_DiskPartition | Select Name, Size, BootPartition&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows logical disks:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject Win32_LogicalDisk | Select DeviceID, DriveType, Size, FreeSpace&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows mapped drives (with NET USE command):&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject Win32_MappedLogicalDisk | Select Name, ProviderName, FileSystem, Size, FreeSpace | Format-Table&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;PowerShell also lets you call the &lt;STRONG&gt;.NET Framework&lt;/STRONG&gt;, which is a huge library.&lt;BR&gt;You need to use a syntax where the full class name (library.class) is mentioned in [], followed by a :: and the method name.&lt;/P&gt;
&lt;P&gt;You can find a reference for it at &lt;A href="http://msdn.microsoft.com/en-us/library/ms229335.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms229335.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms229335.aspx&lt;/A&gt;&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows network interfaces:&lt;/TD&gt;
&lt;TD width="50%"&gt;[System.Net.NetworkInformation.NetworkInterface]::GetAllNetworkInterfaces() | Select Name, Speed, OperationalStatus&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows identity of the current logged user:&lt;/TD&gt;
&lt;TD width="50%"&gt;[System.Security.Principal.WindowsIdentity]::GetCurrent() | Select Name, AuthenticationType, IsAuthenticated, IsSystem&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows drive information:&lt;/TD&gt;
&lt;TD width="50%"&gt;[System.IO.DriveInfo]::GetDrives() | Select Name, DriveType, IsReady, TotalSize, TotalFreeSpace, RootDirectory | Format-Table -autosize&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;It’s also interesting to iterate through the list of resulting objects, to perform additional actions.&lt;BR&gt;You use the &lt;STRONG&gt;ForEach &lt;/STRONG&gt;keyword (actually an alias for &lt;STRONG&gt;ForEach-Object&lt;/STRONG&gt;), which allows you to run something for each item. The item is referred to as $_.&lt;BR&gt;You can also use the symbol % instead of ForEach-Object.&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Change to the application data folder, which is obtained from the environment variables:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir Env:\AppData | ForEach { CD $_.Value }&lt;BR&gt;Dir Env:\AppData |&amp;nbsp;% { CD $_.Value } &lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Show all text files enumerated by the Dir command:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir *.TXT | ForEach { Type $_ }&lt;BR&gt;Dir *.TXT |&amp;nbsp;% { Type $_ }&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Show root directory for all drives enumerated by GetDrives:&lt;/TD&gt;
&lt;TD width="50%"&gt;[System.IO.DriveInfo]::GetDrives() | foreach { Dir $_ }&lt;BR&gt;[System.IO.DriveInfo]::GetDrives() |&amp;nbsp;% { Dir $_ }&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;A similar syntax is used for &lt;STRONG&gt;Where &lt;/STRONG&gt;(actually an alias for &lt;STRONG&gt;Where-Object&lt;/STRONG&gt;), which can be used to filter objects in the pipeline.&lt;BR&gt;You can also use the symbol&amp;nbsp;? instead of Where-Object.&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Show selected properties of processes using more than 10MB of memory, in descending order, formatted as table:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Process | Select Id, Name, Product, CPU, WorkingSet | Where { $_.WorkingSet -gt 10*1024*1024} | Sort WorkingSet -Descending | Format-Table –autosize&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all services that are stopped:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Service | Where { $_.Status -eq "Stopped" }&lt;BR&gt;Get-Service |&amp;nbsp;? { $_.Status -eq "Stopped" }&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;Now let's focus on the &lt;STRONG&gt;DFS Namespaces &lt;/STRONG&gt;service, which is something I’m working on (these will only work if the box is a Windows Server file server with the &lt;STRONG&gt;DFS-N&lt;/STRONG&gt; role service installed):&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all 2000 mode domain namespaces on the current computer, using the registry:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:\Software\Microsoft\DFS\Roots\Domain&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all 2008 mode&amp;nbsp; domain namespaces on the current computer, using the registry:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:\Software\Microsoft\DFS\Roots\DomainV2&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all standalone namespaces on the current computer, using the registry:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:\Software\Microsoft\DFS\Roots\Standalone&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all namespaces of all types on the current computer, using the registry:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:\Software\Microsoft\DFS\Roots –Recurse | Select PSChildName, ValueCount, Property&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows properties of the DFS-N service in the registry:&lt;/TD&gt;
&lt;TD width="50%"&gt;Dir HKLM:\System\CurrentControlSet\Services\Dfs&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Get status of DFS Service (formatted as list)&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Service DFS | fl&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Starts the DFS-N service (two ways):&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-Service DFS |&amp;nbsp;Start-Service &lt;BR&gt;Get-Service DFS | % { $_.Start }&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows all WMI objects with DFS on the name (will include some DFS-R ones as well):&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject -List *DFS*&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows DFS Targets on the current computer, using WMI:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject Win32_DFSTarget&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="50%"&gt;Shows selected properties of DFS nodes on the current computer, including it's a root and its state, using WMI:&lt;/TD&gt;
&lt;TD width="50%"&gt;Get-WmiObject Win32_DFSNode | Select Name, Root, State | Format-Table –autosize&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;I hope that has helped you see how interesting PowerShell can be. Here are a few &lt;STRONG&gt;links &lt;/STRONG&gt;for additional information and tutorials:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Windows Powershell Owner's Manual: &lt;A href="http://www.microsoft.com/technet/scriptcenter/topics/winpsh/manual/default.mspx"&gt;http://www.microsoft.com/technet/scriptcenter/topics/winpsh/manual/default.mspx&lt;/A&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;List of cmdlets (help topics): &lt;A href="http://technet.microsoft.com/en-us/library/dd347701.aspx"&gt;http://technet.microsoft.com/en-us/library/dd347701.aspx&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Powershell ScriptCenter: &lt;A href="http://technet.microsoft.com/en-us/scriptcenter/dd742419.aspx"&gt;http://technet.microsoft.com/en-us/scriptcenter/dd742419.aspx&lt;/A&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;Powershell on Wikipedia: &lt;A href="http://en.wikipedia.org/wiki/Windows_PowerShell"&gt;http://en.wikipedia.org/wiki/Windows_PowerShell&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Some free video tutorials: &lt;A href="http://www.idera.com/Promo/Practical-PowerShell"&gt;http://www.idera.com/Promo/Practical-PowerShell&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;Official Powershell team blog: &lt;A href="http://blogs.msdn.com/powershell"&gt;http://blogs.msdn.com/powershell&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;Powershell Guy blog: &lt;A href="http://thepowershellguy.com/blogs/posh"&gt;http://thepowershellguy.com/blogs/posh&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3261142" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="The Basics" scheme="http://blogs.technet.com/josebda/archive/tags/The+Basics/default.aspx" /><category term="Windows 7" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+7/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="DFS" scheme="http://blogs.technet.com/josebda/archive/tags/DFS/default.aspx" /><category term="PowerShell" scheme="http://blogs.technet.com/josebda/archive/tags/PowerShell/default.aspx" /></entry><entry><title>Changes in Roles, Role Services and Features from Windows Server 2008 to Windows Server 2008 R2</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/07/18/changes-in-roles-role-services-and-features-from-windows-server-2008-to-windows-server-2008-r2.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/07/18/changes-in-roles-role-services-and-features-from-windows-server-2008-to-windows-server-2008-r2.aspx</id><published>2009-07-19T05:55:00Z</published><updated>2009-07-19T05:55:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;This blog post covers the changes&amp;nbsp;in the list of Roles, Role&amp;nbsp;Services and Features from Windows Server 2008 (with Service Pack 2) to Windows Server 2008 R2 (used the latest RC build available to me). To create the&amp;nbsp;tables and lists below, I installed both operating systems, used the "ServerManagerCmd -query" command and did some editing of the resulting text to provide a side-by-side comparison. Please note that I based the "New", "Renamed" or "Removed" marks based on the output of the commands, nothing else. The&amp;nbsp;"&amp;gt;"&amp;nbsp;in the beginning of the items' names indicates the indentation level.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Obviously, there's much more to Roles, Role Services and Features&amp;nbsp;than their names. Many of the items that&amp;nbsp;exist in both versions were deeply improved in Windows Server 2008 R2, but you will not find that type of change here. If you look at Hyper-V, for instance, the changes are truly impressive, but the lists below do not capture that. For those details, you should look at &lt;A href="http://www.microsoft.com/windowsserver2008/en/us/R2.aspx"&gt;http://www.microsoft.com/windowsserver2008/en/us/R2.aspx&lt;/A&gt;&amp;nbsp;and the Reviewers Guide at &lt;A href="http://download.microsoft.com/download/F/2/1/F2146213-4AC0-4C50-B69A-12428FF0B077/Windows_Server_2008_R2_Reviewers_Guide_(RC).doc"&gt;http://download.microsoft.com/download/F/2/1/F2146213-4AC0-4C50-B69A-12428FF0B077/Windows_Server_2008_R2_Reviewers_Guide_(RC).doc&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Table Comparing Roles and Role Services&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&lt;B&gt;&amp;nbsp;&lt;/B&gt;&lt;B&gt;Windows Server 2008 Roles and Role Services&lt;/B&gt;&lt;/TD&gt;
&lt;TD align=middle&gt;&lt;B&gt;Changes&lt;/B&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;B&gt;Windows Server 2008 R2 Roles and Role Services&lt;/B&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Active Directory Certificate Services&amp;nbsp; [AD-Certificate]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Active Directory Certificate Services&amp;nbsp; [AD-Certificate]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Certification Authority&amp;nbsp; [ADCS-Cert-Authority]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Certification Authority&amp;nbsp; [ADCS-Cert-Authority]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Certification Authority Web Enrollment&amp;nbsp; [ADCS-Web-Enrollment]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Certification Authority Web Enrollment&amp;nbsp; [ADCS-Web-Enrollment]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Online Responder&amp;nbsp; [ADCS-Online-Cert]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Online Responder&amp;nbsp; [ADCS-Online-Cert]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Network Device Enrollment Service&amp;nbsp; [ADCS-Device-Enrollment]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Network Device Enrollment Service&amp;nbsp; [ADCS-Device-Enrollment]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Certificate Enrollment Web Service&amp;nbsp; [ADCS-Enroll-Web-Svc]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Certificate Enrollment Policy Web Service&amp;nbsp; [ADCS-Enroll-Web-Pol]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Active Directory Domain Services&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Active Directory Domain Services&amp;nbsp; [AD-Domain-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Active Directory Domain Controller&amp;nbsp; [ADDS-Domain-Controller]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Active Directory Domain Controller&amp;nbsp; [ADDS-Domain-Controller]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Identity Management for UNIX&amp;nbsp; [ADDS-Identity-Mgmt]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Identity Management for UNIX&amp;nbsp; [ADDS-Identity-Mgmt]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Server for Network Information Services&amp;nbsp; [ADDS-NIS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Server for Network Information Services&amp;nbsp; [ADDS-NIS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Password Synchronization&amp;nbsp; [ADDS-Password-Sync]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Password Synchronization&amp;nbsp; [ADDS-Password-Sync]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Administration Tools&amp;nbsp; [ADDS-IDMU-Tools]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Administration Tools&amp;nbsp; [ADDS-IDMU-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Active Directory Federation Services&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Active Directory Federation Services&amp;nbsp; [AD-Federation-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Federation Service&amp;nbsp; [ADFS-Federation]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Federation Service&amp;nbsp; [ADFS-Federation]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Federation Service Proxy&amp;nbsp; [ADFS-Proxy]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Federation Service Proxy&amp;nbsp; [ADFS-Proxy]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;AD FS Web Agents&amp;nbsp; [ADFS-Web-Agents]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;AD FS Web Agents&amp;nbsp; [ADFS-Web-Agents]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Claims-aware Agent&amp;nbsp; [ADFS-Claims]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Claims-aware Agent&amp;nbsp; [ADFS-Claims]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Windows Token-based Agent&amp;nbsp; [ADFS-Windows-Token]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Windows Token-based Agent&amp;nbsp; [ADFS-Windows-Token]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Active Directory Lightweight Directory Services&amp;nbsp; [ADLDS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Active Directory Lightweight Directory Services&amp;nbsp; [ADLDS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Active Directory Rights Management Services&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Active Directory Rights Management Services&amp;nbsp; [ADRMS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Active Directory Rights Management Server&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Active Directory Rights Management Server&amp;nbsp; [ADRMS-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Identity Federation Support&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Identity Federation Support&amp;nbsp; [ADRMS-Identity]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Application Server&amp;nbsp; [Application-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Application Server&amp;nbsp; [Application-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Application Server Foundation&amp;nbsp; [AS-AppServer-Foundation]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;.NET Framework 3.5.1&amp;nbsp; [AS-NET-Framework]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Web Server (IIS) Support&amp;nbsp; [AS-Web-Support]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Web Server (IIS) Support&amp;nbsp; [AS-Web-Support]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;COM&amp;gt;Network Access&amp;nbsp; [AS-Ent-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;COM&amp;gt;Network Access&amp;nbsp; [AS-Ent-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;TCP Port Sharing&amp;nbsp; [AS-TCP-Port-Sharing]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;TCP Port Sharing&amp;nbsp; [AS-TCP-Port-Sharing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Windows Process Activation Service Support&amp;nbsp; [AS-WAS-Support]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Windows Process Activation Service Support&amp;nbsp; [AS-WAS-Support]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;HTTP Activation&amp;nbsp; [AS-HTTP-Activation]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;HTTP Activation&amp;nbsp; [AS-HTTP-Activation]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Message Queuing Activation&amp;nbsp; [AS-MSMQ-Activation]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Message Queuing Activation&amp;nbsp; [AS-MSMQ-Activation]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;TCP Activation&amp;nbsp; [AS-TCP-Activation]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;TCP Activation&amp;nbsp; [AS-TCP-Activation]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Named Pipes Activation&amp;nbsp; [AS-Named-Pipes]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Named Pipes Activation&amp;nbsp; [AS-Named-Pipes]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Distributed Transactions&amp;nbsp; [AS-Dist-Transaction]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Distributed Transactions&amp;nbsp; [AS-Dist-Transaction]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Incoming Remote Transactions&amp;nbsp; [AS-Incoming-Trans]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Incoming Remote Transactions&amp;nbsp; [AS-Incoming-Trans]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Outgoing Remote Transactions&amp;nbsp; [AS-Outgoing-Trans]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Outgoing Remote Transactions&amp;nbsp; [AS-Outgoing-Trans]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;WS-Atomic Transactions&amp;nbsp; [AS-WS-Atomic]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;WS-Atomic Transactions&amp;nbsp; [AS-WS-Atomic]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;DHCP Server&amp;nbsp; [DHCP]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;DHCP Server&amp;nbsp; [DHCP]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;DNS Server&amp;nbsp; [DNS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;DNS Server&amp;nbsp; [DNS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Fax Server&amp;nbsp; [Fax]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Fax Server&amp;nbsp; [Fax]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;File Services&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;File Services&amp;nbsp; [File-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;File Server&amp;nbsp; [FS-FileServer]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;File Server&amp;nbsp; [FS-FileServer]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Distributed File System&amp;nbsp; [FS-DFS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Distributed File System&amp;nbsp; [FS-DFS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;DFS Namespaces&amp;nbsp; [FS-DFS-Namespace]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;DFS Namespaces&amp;nbsp; [FS-DFS-Namespace]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;DFS Replication&amp;nbsp; [FS-DFS-Replication]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;DFS Replication&amp;nbsp; [FS-DFS-Replication]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;File Server Resource Manager&amp;nbsp; [FS-Resource-Manager]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;File Server Resource Manager&amp;nbsp; [FS-Resource-Manager]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Services for Network File System&amp;nbsp; [FS-NFS-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Services for Network File System&amp;nbsp; [FS-NFS-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Windows Search Service&amp;nbsp; [FS-Search-Service]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Windows Search Service&amp;nbsp; [FS-Search-Service]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Windows Server 2003 File Services&amp;nbsp; [FS-Win2003-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Windows Server 2003 File Services&amp;nbsp; [FS-Win2003-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;File Replication Service&amp;nbsp; [FS-Replication]&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Indexing Service&amp;nbsp; [FS-Indexing-Service]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Indexing Service&amp;nbsp; [FS-Indexing-Service]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;BranchCache for network files&amp;nbsp; [FS-BranchCache]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Hyper-V&amp;nbsp; [Hyper-V]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Hyper-V&amp;nbsp; [Hyper-V]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Network Policy and Access Services&amp;nbsp; [NPAS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Network Policy and Access Services&amp;nbsp; [NPAS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Network Policy Server&amp;nbsp; [NPAS-Policy-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Network Policy Server&amp;nbsp; [NPAS-Policy-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Routing and Remote Access Services&amp;nbsp; [NPAS-RRAS-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Routing and Remote Access Services&amp;nbsp; [NPAS-RRAS-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Remote Access Service&amp;nbsp; [NPAS-RRAS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Remote Access Service&amp;nbsp; [NPAS-RRAS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Routing&amp;nbsp; [NPAS-Routing]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Routing&amp;nbsp; [NPAS-Routing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Health Registration Authority&amp;nbsp; [NPAS-Health]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Health Registration Authority&amp;nbsp; [NPAS-Health]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Host Credential Authorization Protocol&amp;nbsp; [NPAS-Host-Cred]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Host Credential Authorization Protocol&amp;nbsp; [NPAS-Host-Cred]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Print Services&amp;nbsp; [Print-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Print and Document Services&amp;nbsp; [Print-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Print Server&amp;nbsp; [Print-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Print Server&amp;nbsp; [Print-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;LPD Service&amp;nbsp; [Print-LPD-Service]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;LPD Service&amp;nbsp; [Print-LPD-Service]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Internet Printing&amp;nbsp; [Print-Internet]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Internet Printing&amp;nbsp; [Print-Internet]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Distributed Scan Server&amp;nbsp; [Print-Scan-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Terminal Services&amp;nbsp; [Terminal-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;Remote Desktop Services&amp;nbsp; [Remote-Desktop-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Terminal Server&amp;nbsp; [TS-Terminal-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Remote Desktop Session Host&amp;nbsp; [RDS-RD-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Remote Desktop Virtualization Host&amp;nbsp; [RDS-Virtualization]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;TS Licensing&amp;nbsp; [TS-Licensing]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Remote Desktop Licensing&amp;nbsp; [RDS-Licensing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;TS Session Broker&amp;nbsp; [TS-Session-Broker]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Remote Desktop Connection Broker&amp;nbsp; [RDS-Connection-Broker]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;TS Gateway&amp;nbsp; [TS-Gateway]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Remote Desktop Gateway&amp;nbsp; [RDS-Gateway]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;TS Web Access&amp;nbsp; [TS-Web-Access]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Remote Desktop Web Access&amp;nbsp; [RDS-Web-Access]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;UDDI Services&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;UDDI Services Database&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;UDDI Services Web Application&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Web Server (IIS)&amp;nbsp; [Web-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Web Server (IIS)&amp;nbsp; [Web-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Web Server&amp;nbsp; [Web-WebServer]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Web Server&amp;nbsp; [Web-WebServer]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Common HTTP Features&amp;nbsp; [Web-Common-Http]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Common HTTP Features&amp;nbsp; [Web-Common-Http]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Static Content&amp;nbsp; [Web-Static-Content]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Static Content&amp;nbsp; [Web-Static-Content]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Default Document&amp;nbsp; [Web-Default-Doc]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Default Document&amp;nbsp; [Web-Default-Doc]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Directory Browsing&amp;nbsp; [Web-Dir-Browsing]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Directory Browsing&amp;nbsp; [Web-Dir-Browsing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;HTTP Errors&amp;nbsp; [Web-Http-Errors]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;HTTP Errors&amp;nbsp; [Web-Http-Errors]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;HTTP Redirection&amp;nbsp; [Web-Http-Redirect]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;HTTP Redirection&amp;nbsp; [Web-Http-Redirect]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;WebDAV Publishing&amp;nbsp; [Web-DAV-Publishing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Application Development&amp;nbsp; [Web-App-Dev]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Application Development&amp;nbsp; [Web-App-Dev]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;ASP.NET&amp;nbsp; [Web-Asp-Net]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;ASP.NET&amp;nbsp; [Web-Asp-Net]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;.NET Extensibility&amp;nbsp; [Web-Net-Ext]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;.NET Extensibility&amp;nbsp; [Web-Net-Ext]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;ASP&amp;nbsp; [Web-ASP]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;ASP&amp;nbsp; [Web-ASP]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;CGI&amp;nbsp; [Web-CGI]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;CGI&amp;nbsp; [Web-CGI]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;ISAPI Extensions&amp;nbsp; [Web-ISAPI-Ext]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;ISAPI Extensions&amp;nbsp; [Web-ISAPI-Ext]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;ISAPI Filters&amp;nbsp; [Web-ISAPI-Filter]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;ISAPI Filters&amp;nbsp; [Web-ISAPI-Filter]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Server Side Includes&amp;nbsp; [Web-Includes]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Server Side Includes&amp;nbsp; [Web-Includes]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Health and Diagnostics&amp;nbsp; [Web-Health]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Health and Diagnostics&amp;nbsp; [Web-Health]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;HTTP Logging&amp;nbsp; [Web-Http-Logging]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;HTTP Logging&amp;nbsp; [Web-Http-Logging]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Logging Tools&amp;nbsp; [Web-Log-Libraries]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Logging Tools&amp;nbsp; [Web-Log-Libraries]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Request Monitor&amp;nbsp; [Web-Request-Monitor]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Request Monitor&amp;nbsp; [Web-Request-Monitor]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Tracing&amp;nbsp; [Web-Http-Tracing]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Tracing&amp;nbsp; [Web-Http-Tracing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Custom Logging&amp;nbsp; [Web-Custom-Logging]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Custom Logging&amp;nbsp; [Web-Custom-Logging]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;ODBC Logging&amp;nbsp; [Web-ODBC-Logging]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;ODBC Logging&amp;nbsp; [Web-ODBC-Logging]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Security&amp;nbsp; [Web-Security]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Security&amp;nbsp; [Web-Security]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Basic Authentication&amp;nbsp; [Web-Basic-Auth]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Basic Authentication&amp;nbsp; [Web-Basic-Auth]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Windows Authentication&amp;nbsp; [Web-Windows-Auth]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Windows Authentication&amp;nbsp; [Web-Windows-Auth]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Digest Authentication&amp;nbsp; [Web-Digest-Auth]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Digest Authentication&amp;nbsp; [Web-Digest-Auth]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Client Certificate Mapping Authentication&amp;nbsp; [Web-Client-Auth]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Client Certificate Mapping Authentication&amp;nbsp; [Web-Client-Auth]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;IIS Client Certificate Mapping Authentication&amp;nbsp; [Web-Cert-Auth]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;IIS Client Certificate Mapping Authentication&amp;nbsp; [Web-Cert-Auth]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;URL Authorization&amp;nbsp; [Web-Url-Auth]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;URL Authorization&amp;nbsp; [Web-Url-Auth]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Request Filtering&amp;nbsp; [Web-Filtering]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Request Filtering&amp;nbsp; [Web-Filtering]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;IP and Domain Restrictions&amp;nbsp; [Web-IP-Security]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;IP and Domain Restrictions&amp;nbsp; [Web-IP-Security]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Performance&amp;nbsp; [Web-Performance]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Performance&amp;nbsp; [Web-Performance]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Static Content Compression&amp;nbsp; [Web-Stat-Compression]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Static Content Compression&amp;nbsp; [Web-Stat-Compression]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Dynamic Content Compression&amp;nbsp; [Web-Dyn-Compression]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Dynamic Content Compression&amp;nbsp; [Web-Dyn-Compression]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Management Tools&amp;nbsp; [Web-Mgmt-Tools]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Management Tools&amp;nbsp; [Web-Mgmt-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;IIS Management Console&amp;nbsp; [Web-Mgmt-Console]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;IIS Management Console&amp;nbsp; [Web-Mgmt-Console]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;IIS Management Scripts and Tools&amp;nbsp; [Web-Scripting-Tools]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;IIS Management Scripts and Tools&amp;nbsp; [Web-Scripting-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Management Service&amp;nbsp; [Web-Mgmt-Service]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Management Service&amp;nbsp; [Web-Mgmt-Service]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;IIS 6 Management Compatibility&amp;nbsp; [Web-Mgmt-Compat]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;IIS 6 Management Compatibility&amp;nbsp; [Web-Mgmt-Compat]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 Metabase Compatibility&amp;nbsp; [Web-Metabase]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 Metabase Compatibility&amp;nbsp; [Web-Metabase]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 WMI Compatibility&amp;nbsp; [Web-WMI]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 WMI Compatibility&amp;nbsp; [Web-WMI]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 Scripting Tools&amp;nbsp; [Web-Lgcy-Scripting]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 Scripting Tools&amp;nbsp; [Web-Lgcy-Scripting]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 Management Console&amp;nbsp; [Web-Lgcy-Mgmt-Console]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;IIS 6 Management Console&amp;nbsp; [Web-Lgcy-Mgmt-Console]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;FTP Publishing Service&amp;nbsp; [Web-Ftp-Publishing]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;FTP Server&amp;nbsp; [Web-Ftp-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;FTP Server&amp;nbsp; [Web-Ftp-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;FTP Service&amp;nbsp; [Web-Ftp-Service]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;FTP Management Console&amp;nbsp; [Web-Ftp-Mgmt-Console]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;FTP Extensibility&amp;nbsp; [Web-Ftp-Ext]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;IIS Hostable Web Core&amp;nbsp; [Web-WHC]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows Deployment Services&amp;nbsp; [WDS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Windows Deployment Services&amp;nbsp; [WDS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Deployment Server&amp;nbsp; [WDS-Deployment]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Deployment Server&amp;nbsp; [WDS-Deployment]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Transport Server&amp;nbsp; [WDS-Transport]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Transport Server&amp;nbsp; [WDS-Transport]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows Server Update Services&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Windows Server Update Services&amp;nbsp; [OOB-WSUS]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Table Comparing Features&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE border=1 width="100%"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&lt;B&gt;Windows Server 2008 Features&lt;/B&gt;&lt;/TD&gt;
&lt;TD align=middle&gt;&lt;B&gt;Changes&lt;/B&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;B&gt;Windows Server 2008 R2 Features&lt;/B&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;.NET Framework 3.0 Features&amp;nbsp; [NET-Framework]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;.NET Framework 3.5.1 Features&amp;nbsp; [NET-Framework]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;.NET Framework 3.0&amp;nbsp; [NET-Framework-Core]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;.NET Framework 3.5.1&amp;nbsp; [NET-Framework-Core]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;XPS Viewer&amp;nbsp; [NET-XPS-Viewer]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;XPS Viewer&amp;nbsp; [XPS-Viewer]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;WCF Activation&amp;nbsp; [NET-Win-CFAC]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;WCF Activation&amp;nbsp; [NET-Win-CFAC]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;HTTP Activation&amp;nbsp; [NET-HTTP-Activation]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;HTTP Activation&amp;nbsp; [NET-HTTP-Activation]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Non-HTTP Activation&amp;nbsp; [NET-Non-HTTP-Activ]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Non-HTTP Activation&amp;nbsp; [NET-Non-HTTP-Activ]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;BITS Server Extensions&amp;nbsp; [BITS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Background Intelligent Transfer Service (BITS)&amp;nbsp; [BITS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Compact Server&amp;nbsp; [BITS-Compact-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;IIS Server Extension&amp;nbsp; [BITS-IIS-Ext]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;BitLocker Drive Encryption&amp;nbsp; [BitLocker]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;BitLocker Drive Encryption&amp;nbsp; [BitLocker]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;BranchCache&amp;nbsp; [BranchCache]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Connection Manager Administration Kit&amp;nbsp; [CMAK]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Connection Manager Administration Kit&amp;nbsp; [CMAK]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Desktop Experience&amp;nbsp; [Desktop-Experience]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Desktop Experience&amp;nbsp; [Desktop-Experience]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;DirectAccess Management Console&amp;nbsp; [DAMC]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Failover Clustering&amp;nbsp; [Failover-Clustering]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Failover Clustering&amp;nbsp; [Failover-Clustering]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Group Policy Management&amp;nbsp; [GPMC]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Group Policy Management&amp;nbsp; [GPMC]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;Ink and Handwriting Services&amp;nbsp; [Ink-Handwriting]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Ink Support&amp;nbsp; [IH-Ink-Support]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Handwriting Recognition&amp;nbsp; [IH-Handwriting]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Internet Printing Client&amp;nbsp; [Internet-Print-Client]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Internet Printing Client&amp;nbsp; [Internet-Print-Client]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Internet Storage Name Server&amp;nbsp; [ISNS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Internet Storage Name Server&amp;nbsp; [ISNS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;LPR Port Monitor&amp;nbsp; [LPR-Port-Monitor]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;LPR Port Monitor&amp;nbsp; [LPR-Port-Monitor]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Message Queuing&amp;nbsp; [MSMQ]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Message Queuing&amp;nbsp; [MSMQ]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Message Queuing Services&amp;nbsp; [MSMQ-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Message Queuing Services&amp;nbsp; [MSMQ-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Message Queuing Server&amp;nbsp; [MSMQ-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Message Queuing Server&amp;nbsp; [MSMQ-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Directory Service Integration&amp;nbsp; [MSMQ-Directory]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Directory Service Integration&amp;nbsp; [MSMQ-Directory]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Message Queuing Triggers&amp;nbsp; [MSMQ-Triggers]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Message Queuing Triggers&amp;nbsp; [MSMQ-Triggers]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;HTTP Support&amp;nbsp; [MSMQ-HTTP-Support]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;HTTP Support&amp;nbsp; [MSMQ-HTTP-Support]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Multicasting Support&amp;nbsp; [MSMQ-Multicasting]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Multicasting Support&amp;nbsp; [MSMQ-Multicasting]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Routing Service&amp;nbsp; [MSMQ-Routing]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Routing Service&amp;nbsp; [MSMQ-Routing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Windows 2000 Client Support&amp;nbsp; [MSMQ-Win2000]&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Message Queuing DCOM Proxy&amp;nbsp; [MSMQ-DCOM]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Message Queuing DCOM Proxy&amp;nbsp; [MSMQ-DCOM]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Multipath I/O&amp;nbsp; [Multipath-IO]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Multipath I/O&amp;nbsp; [Multipath-IO]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Network Load Balancing&amp;nbsp; [NLB]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Network Load Balancing&amp;nbsp; [NLB]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Peer Name Resolution Protocol&amp;nbsp; [PNRP]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Peer Name Resolution Protocol&amp;nbsp; [PNRP]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Quality Windows Audio Video Experience&amp;nbsp; [qWave]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Quality Windows Audio Video Experience&amp;nbsp; [qWave]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Remote Assistance&amp;nbsp; [Remote-Assistance]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Remote Assistance&amp;nbsp; [Remote-Assistance]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Remote Differential Compression&amp;nbsp; [RDC]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Remote Differential Compression&amp;nbsp; [RDC]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Remote Server Administration Tools&amp;nbsp; [RSAT]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Remote Server Administration Tools&amp;nbsp; [RSAT]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Role Administration Tools&amp;nbsp; [RSAT-Role-Tools]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Role Administration Tools&amp;nbsp; [RSAT-Role-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Active Directory Certificate Services Tools&amp;nbsp; [RSAT-ADCS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Active Directory Certificate Services Tools&amp;nbsp; [RSAT-ADCS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Certification Authority Tools&amp;nbsp; [RSAT-ADCS-Mgmt]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Certification Authority Tools&amp;nbsp; [RSAT-ADCS-Mgmt]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Online Responder Tools&amp;nbsp; [RSAT-Online-Responder]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Online Responder Tools&amp;nbsp; [RSAT-Online-Responder]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Active Directory Domain Services Tools&amp;nbsp; [RSAT-ADDS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;AD DS and AD LDS Tools&amp;nbsp; [RSAT-AD-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Active Directory Domain Controller Tools&amp;nbsp; [RSAT-ADDC]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;AD DS Tools&amp;nbsp; [RSAT-ADDS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;AD DS Snap-Ins and Command-Line Tools&amp;nbsp; [RSAT-ADDS-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Active Directory Administrative Center&amp;nbsp; [RSAT-AD-AdminCenter]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Server for NIS Tools&amp;nbsp; [RSAT-SNIS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Server for NIS Tools&amp;nbsp; [RSAT-SNIS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Active Directory Lightweight Directory Services Tools&amp;nbsp; [RSAT-ADLDS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;AD LDS Snap-Ins and Command-Line Tools&amp;nbsp; [RSAT-ADLDS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Active Directory module for Windows PowerShell&amp;nbsp; [RSAT-AD-PowerShell]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Active Directory Rights Management Services Tools&amp;nbsp; [RSAT-RMS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Active Directory Rights Management Services Tools&amp;nbsp; [RSAT-RMS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;DHCP Server Tools&amp;nbsp; [RSAT-DHCP]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;DHCP Server Tools&amp;nbsp; [RSAT-DHCP]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;DNS Server Tools&amp;nbsp; [RSAT-DNS-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;DNS Server Tools&amp;nbsp; [RSAT-DNS-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Fax Server Tools&amp;nbsp; [RSAT-Fax]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Fax Server Tools&amp;nbsp; [RSAT-Fax]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;File Services Tools&amp;nbsp; [RSAT-File-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;File Services Tools&amp;nbsp; [RSAT-File-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Distributed File System Tools&amp;nbsp; [RSAT-DFS-Mgmt-Con]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Distributed File System Tools&amp;nbsp; [RSAT-DFS-Mgmt-Con]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;File Server Resource Manager Tools&amp;nbsp; [RSAT-FSRM-Mgmt]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;File Server Resource Manager Tools&amp;nbsp; [RSAT-FSRM-Mgmt]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Services for Network File System Tools&amp;nbsp; [RSAT-NFS-Admin]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Services for Network File System Tools&amp;nbsp; [RSAT-NFS-Admin]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Hyper-V Tools&amp;nbsp; [RSAT-Hyper-V]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Hyper-V Tools&amp;nbsp; [RSAT-Hyper-V]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Network Policy and Access Services Tools&amp;nbsp; [RSAT-NPAS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Network Policy and Access Services Tools&amp;nbsp; [RSAT-NPAS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Print Services Tools&amp;nbsp; [RSAT-Print-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Print and Document Services Tools&amp;nbsp; [RSAT-Print-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Terminal Services Tools&amp;nbsp; [RSAT-TS]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Remote Desktop Services Tools&amp;nbsp; [RSAT-RDS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;Terminal Server Tools&amp;nbsp; [RSAT-TS-RemoteApp]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Session Host Tools&amp;nbsp; [RSAT-RDS-RemoteApp]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;TS Gateway Tools&amp;nbsp; [RSAT-TS-Gateway]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Gateway Tools&amp;nbsp; [RSAT-RDS-Gateway]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;&amp;gt;TS Licensing Tools&amp;nbsp; [RSAT-TS-Licensing]&lt;/TD&gt;
&lt;TD align=middle&gt;Renamed&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Licensing Tools&amp;nbsp; [RSAT-RDS-Licensing]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Connection Broker Tools&amp;nbsp; [RSAT-RDS-Conn-Broker]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;UDDI Services Tools&amp;nbsp; [RSAT-UDDI]&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Web Server (IIS) Tools&amp;nbsp; [RSAT-Web-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Web Server (IIS) Tools&amp;nbsp; [RSAT-Web-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Windows Deployment Services Tools&amp;nbsp; [RSAT-WDS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Windows Deployment Services Tools&amp;nbsp; [RSAT-WDS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Feature Administration Tools&amp;nbsp; [RSAT-Feature-Tools]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Feature Administration Tools&amp;nbsp; [RSAT-Feature-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;BitLocker Drive Encryption Tools&amp;nbsp; [RSAT-BitLocker]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;BitLocker Drive Encryption Administration Utilities&amp;nbsp; [RSAT-BitLocker]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;BitLocker Drive Encryption Tools&amp;nbsp; [RSAT-Bitlocker-DriveEnc]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;&amp;gt;BitLocker Recovery Password Viewer&amp;nbsp; [RSAT-Bitlocker-RecPwd]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;BITS Server Extensions Tools&amp;nbsp; [RSAT-Bits-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;BITS Server Extensions Tools&amp;nbsp; [RSAT-Bits-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Failover Clustering Tools&amp;nbsp; [RSAT-Clustering]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Failover Clustering Tools&amp;nbsp; [RSAT-Clustering]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;Network Load Balancing Tools&amp;nbsp; [RSAT-NLB]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;Network Load Balancing Tools&amp;nbsp; [RSAT-NLB]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;SMTP Server Tools&amp;nbsp; [RSAT-SMTP]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;SMTP Server Tools&amp;nbsp; [RSAT-SMTP]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;&amp;gt;WINS Server Tools&amp;nbsp; [RSAT-WINS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;&amp;gt;WINS Server Tools&amp;nbsp; [RSAT-WINS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Removable Storage Manager&amp;nbsp; [Removable-Storage]&lt;/TD&gt;
&lt;TD align=middle&gt;Removed&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;RPC over HTTP Proxy&amp;nbsp; [RPC-over-HTTP-Proxy]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;RPC over HTTP Proxy&amp;nbsp; [RPC-over-HTTP-Proxy]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Simple TCP/IP Services&amp;nbsp; [Simple-TCPIP]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Simple TCP/IP Services&amp;nbsp; [Simple-TCPIP]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;SMTP Server&amp;nbsp; [SMTP-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;SMTP Server&amp;nbsp; [SMTP-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;SNMP Services&amp;nbsp; [SNMP-Services]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;SNMP Services&amp;nbsp; [SNMP-Services]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;SNMP Service&amp;nbsp; [SNMP-Service]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;SNMP Service&amp;nbsp; [SNMP-Service]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;SNMP WMI Provider&amp;nbsp; [SNMP-WMI-Provider]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;SNMP WMI Provider&amp;nbsp; [SNMP-WMI-Provider]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Storage Manager for SANs&amp;nbsp; [Storage-Mgr-SANS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Storage Manager for SANs&amp;nbsp; [Storage-Mgr-SANS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Subsystem for UNIX-based Applications&amp;nbsp; [Subsystem-UNIX-Apps]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Subsystem for UNIX-based Applications&amp;nbsp; [Subsystem-UNIX-Apps]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Telnet Client&amp;nbsp; [Telnet-Client]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Telnet Client&amp;nbsp; [Telnet-Client]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Telnet Server&amp;nbsp; [Telnet-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Telnet Server&amp;nbsp; [Telnet-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;TFTP Client &amp;nbsp;[TFTP-Client]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;TFTP Client&amp;nbsp; [TFTP-Client]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;Windows Biometric Framework&amp;nbsp; [Biometric-Framework]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows Internal Database&amp;nbsp; [Windows-Internal-DB]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Windows Internal Database&amp;nbsp; [Windows-Internal-DB]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows PowerShell&amp;nbsp; [PowerShell]&lt;/TD&gt;
&lt;TD align=middle&gt;Integrated&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;Windows PowerShell Integrated Scripting Environment (ISE)&amp;nbsp; [PowerShell-ISE]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows Process Activation Service&amp;nbsp; [WAS]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Windows Process Activation Service&amp;nbsp; [WAS]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Process Model&amp;nbsp; [WAS-Process-Model]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Process Model&amp;nbsp; [WAS-Process-Model]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;.NET Environment&amp;nbsp; [WAS-NET-Environment]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;.NET Environment&amp;nbsp; [WAS-NET-Environment]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Configuration APIs&amp;nbsp; [WAS-Config-APIs]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Configuration APIs&amp;nbsp; [WAS-Config-APIs]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows Server Backup Features&amp;nbsp; [Backup-Features]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Windows Server Backup Features&amp;nbsp; [Backup-Features]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Windows Server Backup&amp;nbsp; [Backup]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Windows Server Backup&amp;nbsp; [Backup]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;gt;Command-line Tools&amp;nbsp; [Backup-Tools]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;gt;Command-line Tools&amp;nbsp; [Backup-Tools]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;Windows Server Migration Tools&amp;nbsp; [Migration]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Windows System Resource Manager&amp;nbsp; [WSRM]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Windows System Resource Manager&amp;nbsp; [WSRM]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;Windows TIFF IFilter&amp;nbsp; [TIFF-IFilter]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD align=middle&gt;New&lt;/TD&gt;
&lt;TD&gt;WinRM IIS Extension&amp;nbsp; [WinRM-IIS-Ext]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;WINS Server&amp;nbsp; [WINS-Server]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;WINS Server&amp;nbsp; [WINS-Server]&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD align=right&gt;Wireless LAN Service&amp;nbsp; [Wireless-Networking]&lt;/TD&gt;
&lt;TD align=middle&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;Wireless LAN Service&amp;nbsp; [Wireless-Networking]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Lists&amp;nbsp;Comparing Roles and Role Services&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;New Roles, Role Services&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&amp;gt;Certificate Enrollment Web Service&amp;nbsp; [ADCS-Enroll-Web-Svc]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Certificate Enrollment Policy Web Service&amp;nbsp; [ADCS-Enroll-Web-Pol]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;BranchCache for network files&amp;nbsp; [FS-BranchCache]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Distributed Scan Server&amp;nbsp; [Print-Scan-Server]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Remote Desktop Virtualization Host&amp;nbsp; [RDS-Virtualization]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;WebDAV Publishing&amp;nbsp; [Web-DAV-Publishing]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;IIS Hostable Web Core&amp;nbsp; [Web-WHC]&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Renamed Roles and Role Services&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Remote Desktop Services&amp;nbsp; [Remote-Desktop-Services] &lt;EM&gt;(Jose: RDS used to be called Terminal Services)&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Remote Desktop Session Host&amp;nbsp; [RDS-RD-Server]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Remote Desktop Licensing&amp;nbsp; [RDS-Licensing]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Remote Desktop Connection Broker&amp;nbsp; [RDS-Connection-Broker]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Remote Desktop Gateway&amp;nbsp; [RDS-Gateway]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Remote Desktop Web Access&amp;nbsp; [RDS-Web-Access]&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Removed Roles and Role Services&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&amp;gt;&amp;gt;File Replication Service&amp;nbsp; [FS-Replication]&amp;nbsp; &lt;EM&gt;(Jose: Use DFS-Replication instead. FRS can only be used for specific SYSVOL replication scenarios, see details at &lt;A href="http://technet.microsoft.com/en-us/library/cc754297.aspx"&gt;http://technet.microsoft.com/en-us/library/cc754297.aspx&lt;/A&gt;)&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;UDDI Services&lt;/LI&gt;
&lt;LI&gt;&amp;gt;UDDI Services Database&lt;/LI&gt;
&lt;LI&gt;&amp;gt;UDDI Services Web Application&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Lists&amp;nbsp;Comparing Features&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;New Features&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&amp;gt;Compact Server&amp;nbsp; [BITS-Compact-Server] &lt;/LI&gt;
&lt;LI&gt;&amp;gt;IIS Server Extension&amp;nbsp; [BITS-IIS-Ext]&lt;/LI&gt;
&lt;LI&gt;BranchCache&amp;nbsp; [BranchCache]&lt;/LI&gt;
&lt;LI&gt;DirectAccess Management Console&amp;nbsp; [DAMC]&lt;/LI&gt;
&lt;LI&gt;Ink and Handwriting Services&amp;nbsp; [Ink-Handwriting]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Ink Support&amp;nbsp; [IH-Ink-Support]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;Handwriting Recognition&amp;nbsp; [IH-Handwriting]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;AD DS Snap-Ins and Command-Line Tools&amp;nbsp; [RSAT-ADDS-Tools]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Active Directory Administrative Center&amp;nbsp; [RSAT-AD-AdminCenter]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;Active Directory module for Windows PowerShell&amp;nbsp; [RSAT-AD-PowerShell]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Connection Broker Tools&amp;nbsp; [RSAT-RDS-Conn-Broker]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;BitLocker Drive Encryption Tools&amp;nbsp; [RSAT-Bitlocker-DriveEnc]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;BitLocker Recovery Password Viewer&amp;nbsp; [RSAT-Bitlocker-RecPwd]&lt;/LI&gt;
&lt;LI&gt;Windows Biometric Framework&amp;nbsp; [Biometric-Framework]&lt;/LI&gt;
&lt;LI&gt;Windows PowerShell Integrated Scripting Environment (ISE)&amp;nbsp; [PowerShell-ISE]&lt;EM&gt; (Jose: PowerShell itself is now integrated, this new feature is just the ISE)&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;Windows Server Migration Tools&amp;nbsp; [Migration]&lt;/LI&gt;
&lt;LI&gt;Windows TIFF IFilter&amp;nbsp; [TIFF-IFilter]&lt;/LI&gt;
&lt;LI&gt;WinRM IIS Extension&amp;nbsp; [WinRM-IIS-Ext]&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Renamed Features&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;XPS Viewer&amp;nbsp; [XPS-Viewer] &lt;EM&gt;(Jose: Used to be under the .NET group, now is a separate feature)&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;Remote Desktop Services Tools&amp;nbsp; [RSAT-RDS] &lt;EM&gt;(Jose: RDS used to be called Terminal Services)&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Session Host Tools&amp;nbsp; [RSAT-RDS-RemoteApp]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Gateway Tools&amp;nbsp; [RSAT-RDS-Gateway]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;&amp;gt;Remote Desktop Licensing Tools&amp;nbsp; [RSAT-RDS-Licensing]&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Removed Features&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&amp;gt;Windows 2000 Client Support&amp;nbsp; [MSMQ-Win2000]&lt;/LI&gt;
&lt;LI&gt;&amp;gt;&amp;gt;UDDI Services Tools&amp;nbsp; [RSAT-UDDI]&lt;/LI&gt;
&lt;LI&gt;Removable Storage Manager&amp;nbsp; [Removable-Storage]&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;Conclusion&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I hope this blog post has helped you better understand the changes in the list of Roles, Role Services and Features between Windows Server 2008 and Windows Server 2008 R2. I encourage your to visit &lt;A href="http://www.microsoft.com/windowsserver2008/en/us/R2.aspx"&gt;http://www.microsoft.com/windowsserver2008/en/us/R2.aspx&lt;/A&gt;&amp;nbsp;to see more details on the changes in Windows Server 2008 R2, which go way beyond the names of the Roles, Role Services and Features.&lt;/P&gt;
&lt;P&gt;Starting with Windows Server 2008 R2, the ServerManagerCmd command is deprecated. It&amp;nbsp;still&amp;nbsp;works,&amp;nbsp;but you should use the new PowerShell cmdlets for feature management (Add-WindowsFeature, Remove-WindowsFeature and&amp;nbsp;Get-WindowsFeature). You will need to use "Import-Module ServerManager" before using the Server Manager PowerShell cmdlets. Details at &lt;A href="http://technet.microsoft.com/en-us/library/cc732757.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc732757.aspx"&gt;http://technet.microsoft.com/en-us/library/cc732757.aspx&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3266053" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Windows Server 2008" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /></entry><entry><title>Worldwide Partner Conference (WPC 09) provides a snapshot of what Microsoft is up to (keynotes available for review)</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/josebda/archive/2009/07/17/worldwide-partner-conference-wpc-09-provides-a-snapshot-of-what-microsoft-is-up-to-keynotes-available-for-review.aspx" /><id>http://blogs.technet.com/josebda/archive/2009/07/17/worldwide-partner-conference-wpc-09-provides-a-snapshot-of-what-microsoft-is-up-to-keynotes-available-for-review.aspx</id><published>2009-07-17T16:53:00Z</published><updated>2009-07-17T16:53:00Z</updated><content type="html">&lt;P&gt;Earlier this week Microsoft hosted the 2009 edition of the Worldwide Partner Conference (WPC 2009) in New Orleans.&lt;BR&gt;Thousands of partners joined to understand where Microsoft is going and how they can work together with Microsoft.&lt;BR&gt;The keynotes were streamed live (a bit too early on the Pacific side, but it certainly was very interesting).&lt;BR&gt;The entire keynotes were recorded and are now available at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Highlights&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Windows 7 and Windows Server 2008 R2 were obviously a main topic of the keynotes and the conference, including new demos.&lt;BR&gt;Also big were Office 2010 and Windows Azure, with new details unveiled and pre-release availability announced during the keynotes.&lt;BR&gt;Microsoft announced changes to the partner program (now the Microsoft Partner Network) and presented this year's Partner Awards.&amp;nbsp;&lt;BR&gt;For me, it was&amp;nbsp;interesting to see the big picture, how it all comes together, what the company execs think of where we are and&amp;nbsp; where we’re going.&lt;BR&gt;"Playing for Change" provided the musical introductions and if you don't know the story of the foundation behind them, check &lt;A href="http://www.playingforchange.com/" mce_href="http://www.playingforchange.com/"&gt;http://www.playingforchange.com&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;#WPC09 on Twitter&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;New in this event was a live twitter feed side-by-side with the webcast, with people’s comments&amp;nbsp;providing an interactive twist&lt;BR&gt;All you had to do was to include the #wpc09 hashtag on your tweet to see it flowing alongside the video stream, uncensored.&lt;BR&gt;The tweets provided interesting insight, an instant sense of how things were received and the occasional funny remark.&lt;BR&gt;Twitter even played a role in the live demo of Microsoft’s CRM application, with the app itself posting tweets and analyzing feedback.&lt;BR&gt;I was in Redmond, but participated online on all three days (6:30 AM to 8:30), watching and contributing to the twitter feed. &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;My day 1 tweets&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;#wpc09 keynote with Stephen Elop, Bill Veghte, Allison Watson. In 5 mins, live, at &lt;A href="http://www.digitalwpc.com/" mce_href="http://www.digitalwpc.com/"&gt;http://www.digitalwpc.com&lt;/A&gt;. Live twitter feed too! &lt;BR&gt;#wpc09 Alison Watson announces Microsoft Partner Network, replacing Partner Program. Details at &lt;A href="https://partner.microsoft.com/" mce_href="https://partner.microsoft.com/"&gt;https://partner.microsoft.com/&lt;/A&gt; &lt;BR&gt;#wpc09 Bill Veghte sharing Windows 7 details, market opportunities with Microsoft partners. Live stream at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;&lt;BR&gt;#wpc09 Stephen Elop is on now. Office 2010 is the main topic now. Live stream at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; &lt;BR&gt;#wpc09 Live CRM/twitter integration shown live as part of the event. Do you like Creole food? Live at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; &lt;BR&gt;Office 2010 Technical Preview announced at #wpc09. By invitation only, attendees will get it. Demos coming at live &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; &lt;BR&gt;#wpc09 Stephen Elop demos new Office 2010 features in Outlook, Exchange, Excel, PowerPoint, SharePoint, ... 140 chars not enough &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;My day&amp;nbsp;2 tweets&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;#WPC09 Day two of Partner Conference. Steve Ballmer and Bob Muglia coming to you live in a few minutes at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; &lt;BR&gt;New Orleans weather report: Cloudy with a chance of partner opportunity. Azure keynote live from &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; #wpc09 &lt;BR&gt;#wpc09 BobMu on stage right now. SteveB coming later. Partner Conference keynote streaming live at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; &lt;BR&gt;BobMu at #WPC09: VMM, private clouds, Azure, moving btw them. New Dynamic Datacenter Alliance. &lt;A href="http://bit.ly/yVF0J" mce_href="http://bit.ly/yVF0J"&gt;http://bit.ly/yVF0J&lt;/A&gt; &lt;BR&gt;BobMu at #WPC09: Move btw data center, private cloud, hosted, Windows Azure (which is free until PDC). &lt;A href="http://bit.ly/126R6B" mce_href="http://bit.ly/126R6B"&gt;http://bit.ly/126R6B&lt;/A&gt;&lt;BR&gt;Ballmer at #WPC09: 20 years from now, will all world's data be in Azure/Google/Amazon? No, it will be a mix with on-premises. &lt;BR&gt;Azure pricing, partner discount, SLA, SQL Azure DB versions: Questions answered at day 2 of #WPC09 &lt;A href="http://bit.ly/11a1vo" mce_href="http://bit.ly/11a1vo"&gt;http://bit.ly/11a1vo&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;My day&amp;nbsp;3 tweets&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;#wpc09 Day 3 keynote with Kevin Turner about to start. Live video streaming with side-by-side twitter feed at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;. &lt;BR&gt;&lt;A href="http://www.playingforchange.com/" mce_href="http://www.playingforchange.com/"&gt;http://www.playingforchange.com&lt;/A&gt; live on stage at the #wpc09 streaming at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;. And I say: what's going on? &lt;BR&gt;&lt;A href="http://www.playingforchange.com/" mce_href="http://www.playingforchange.com/"&gt;http://www.playingforchange.com&lt;/A&gt; live on stage at the #wpc09 streaming at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;. Don't worry, be happy!&lt;BR&gt;#wpc09 Amalga on Surface demo. Healthcare, cloud, multimedia, multi-touch, multi-user, smart objects. &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt; &lt;BR&gt;#WPC09 "Future" video wows the crowd. I've seen it a couple of times, but I see new things every time. &lt;A href="http://bit.ly/26YuPu" mce_href="http://bit.ly/26YuPu"&gt;http://bit.ly/26YuPu&lt;/A&gt;&lt;BR&gt;#wpc09 A great experience in one device is not enough. You need an ecosystem of interacting devices. &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;&lt;BR&gt;#wpc09 Kevin Turner's Game Plan: Be realistic; Prepare for unknown; Deepen relationships; Grow market share; Sense of urgency &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Conclusion&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I would strongly encourage you to review the recorded videos at &lt;A href="http://digitalwpc.com/" mce_href="http://digitalwpc.com/"&gt;http://digitalwpc.com&lt;/A&gt;. Truly insightful.&lt;BR&gt;And better yet, next time, watch it live and participate in the online conversation...&lt;BR&gt;Hats off to the team working on this event! If it felt this good from a distance, I can only imagine what it must have been in person.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3265699" width="1" height="1"&gt;</content><author><name>josebda</name><uri>http://blogs.technet.com/members/josebda.aspx</uri></author><category term="Events" scheme="http://blogs.technet.com/josebda/archive/tags/Events/default.aspx" /><category term="Windows 7" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+7/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.technet.com/josebda/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="Social Networks" scheme="http://blogs.technet.com/josebda/archive/tags/Social+Networks/default.aspx" /></entry></feed>