<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Bhargav's IT Playground</title>
	
	<link>http://www.bhargavs.com</link>
	<description>Passion for Technology. Power of Messaging.</description>
	<lastBuildDate>Sat, 21 Jan 2012 07:25:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/bhargavs" /><feedburner:info uri="bhargavs" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>RBAC and Principle of Least Privilege</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/bMh-K6l9sJ8/</link>
		<comments>http://www.bhargavs.com/index.php/2011/12/15/rbac-and-principle-of-least-privilege/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 22:05:00 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/?p=377</guid>
		<description><![CDATA[Exchange 2010 introduced RBAC as a mechanism to manage access to administrative tasks at granular level which was not possible in previous versions of Exchange. While you may know how to use RBAC to create custom roles that maps to job functions in your environment, one particular feature tends to get easily overlooked, mostly because [...]]]></description>
			<content:encoded><![CDATA[<p>Exchange 2010 introduced RBAC as a mechanism to manage access to administrative tasks at granular level which was not possible in previous versions of Exchange.</p>
<p>While you may know how to use RBAC to create custom roles that maps to job functions in your environment, one particular feature tends to get easily overlooked, mostly because it is least understood I believe. It is Unscoped Top Level Management Roles.</p>
<p>So, I wrote a blog post on it detailing what it is, and how to configure it. It went live few days ago at <a href="http://blogs.technet.com/b/heyscriptingguy/" target="_blank">Hey, Scripting Guy! blog</a>.</p>
<p>You can read complete article here &#8211; <a title="http://blogs.technet.com/b/heyscriptingguy/archive/2012/01/13/use-powershell-and-rbac-to-control-access-to-exchange-server-cmdlets.aspx" href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/01/13/use-powershell-and-rbac-to-control-access-to-exchange-server-cmdlets.aspx">http://blogs.technet.com/b/heyscriptingguy/archive/2012/01/13/use-powershell-and-rbac-to-control-access-to-exchange-server-cmdlets.aspx</a></p>
<p>Enjoy!</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F12%2F15%2Frbac-and-principle-of-least-privilege%2F&amp;title=RBAC%20and%20Principle%20of%20Least%20Privilege" id="wpa2a_2"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=bMh-K6l9sJ8:5PF4uU9Q1N4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=bMh-K6l9sJ8:5PF4uU9Q1N4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=bMh-K6l9sJ8:5PF4uU9Q1N4:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/bMh-K6l9sJ8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/12/15/rbac-and-principle-of-least-privilege/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/12/15/rbac-and-principle-of-least-privilege/</feedburner:origLink></item>
		<item>
		<title>Updated – Verify Exchange Server Schema Version</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/YYimNyH4Vfk/</link>
		<comments>http://www.bhargavs.com/index.php/2011/12/15/updated-verify-exchange-server-schema-version/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 15:30:00 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2010/08/31/updated-verify-exchange-server-schema-version/</guid>
		<description><![CDATA[This article was originally posted on my personal blog here. Since I don&#8217;t actively maintain it anymore, I am publishing it here. When you run Exchange Setup to prepare schema, usually the very next question is, how do I verify schema was updated successfully? Verifying only the values of attributes as mentioned below is not [...]]]></description>
			<content:encoded><![CDATA[<p>This article was originally posted on my personal blog <a href="http://www.bhargavs.com/index.php/2009/11/20/verify-exchange-server-schema-version/" target="_blank">here</a>. Since I don&#8217;t actively maintain it anymore, I am publishing it here.</p>
<p>When you run Exchange Setup to prepare schema, usually the very next question is, how do I verify schema was updated successfully? Verifying only the values of attributes as mentioned below is not a good verification of Exchange setup completion. This article is intended to only provide reference to attributes and their values.</p>
<p>Let&rsquo;s start back at <strong>Exchange 2003 SP2</strong>.</p>
<p>One of the last actions <strong>setup /forestprep</strong> in Exchange 2003 is to set <strong>objectVersion</strong> attribute on <strong>Exchange organization container</strong> to a value of <strong>6903</strong>. You can verify this using ADSIEdit and navigating to <strong>Configuration NC</strong>, <strong>Exchange organization</strong> object under services\Microsoft Exchange node.</p>
<p>On the other hand, when <strong>setup /domainprep</strong> is run, it sets the <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container to a value of <strong>6936</strong>. You can verify this using ADSIEdit and navigating to <strong>Domain NC</strong>, <strong>Microsoft Exchange System Objects</strong> container.</p>
<p>In <strong>Exchange 2007</strong>, after successful run of <strong>Setup /PrepareSchema</strong> you will find that the attributes mentioned above are not changed! You need to verify the value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong>. The value should be <strong>10637</strong>.</p>
<p>It is only when you run <strong>Setup /PrepareAD</strong> the <strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> is updated to a value of <strong>10666</strong>. You will also find that <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC</strong> is set to a value of <strong>10628</strong>.</p>
<p>You will also notice that <strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values.</p>
<p>Let&rsquo;s briefly review what does Exchange 2007 SP1, SP2 and Exchange 2010 setup update these attribute values to.</p>
<p><strong>Exchange 2007 SP1</strong></p>
<ul>
<li>Value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong> is set to <strong>11116 </strong>when<strong> setup /PrepareSchema </strong>is run successfully<strong>.</strong></li>
<li><strong>Setup /PrepareAD</strong> sets the <strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> is updated to a value of <strong>11221</strong>. <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC</strong> is also set to the same value of <strong>11221.</strong></li>
<li><strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values.</li>
</ul>
<p><strong>Exchange 2007 SP2</strong></p>
<ul>
<li>Value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong> is set to <strong>14622 </strong>when<strong> setup /PrepareSchema </strong>is run successfully<strong>.</strong></li>
<li><strong>Setup /PrepareAD</strong> sets <strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> to a value of <strong>11222</strong>. <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC </strong>remains unchanged at value<strong> </strong>of <strong>11221.</strong></li>
<li><strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values.</li>
</ul>
<p><strong>Exchange 2007 SP3</strong></p>
<ul>
<li>Value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong> is set to <strong>14625 </strong>when<strong> setup /PrepareSchema </strong>is run successfully<strong>.</strong></li>
<li><strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> remains unchanged at a value of <strong>11222</strong>. <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC </strong>remains unchanged at value<strong> </strong>of <strong>11221.</strong></li>
<li><strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values.</li>
</ul>
<p><strong>Exchange 2010</strong></p>
<ul>
<li>Value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong> is not changed from <strong>14622 </strong>when<strong> setup /PrepareSchema </strong>is run successfully<strong>.</strong></li>
<li><strong>Setup /PrepareAD</strong> sets <strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> to a value of <strong>12640</strong>. <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC </strong>remains unchanged at value<strong> </strong>of <strong>12639.</strong></li>
<li><strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values.</li>
</ul>
<p><strong>Exchange 2010 SP1</strong></p>
<ul>
<li>Value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong> is not changed from <strong>14726 </strong>when<strong> setup /PrepareSchema </strong>is run successfully<strong>.</strong></li>
<li><strong>Setup /PrepareAD</strong> sets <strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> to a value of <strong>13214</strong>. <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC </strong>is changed to value<strong> </strong>of <strong>13040.</strong></li>
<li><strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values. <!--EndFragment--></li>
</ul>
<p><strong>Exchange 2010 SP2</strong></p>
<ul>
<li>Value of <strong>rangeUpper</strong> attribute of <strong>ms-Exch-Schema-Version-Pt</strong> object in <strong>Schema NC</strong> is changed to <strong>14732 </strong>when<strong> setup /PrepareSchema </strong>is run successfully<strong>.</strong></li>
<li><strong>Setup /PrepareAD</strong> sets <strong>objectVersion</strong> attribute of <strong>Organization container </strong>in <strong>Configuration NC</strong> to a value of <strong>14247</strong>. <strong>objectVersion</strong> attribute on <strong>Microsoft Exchange System Objects</strong> container in <strong>Domain NC </strong>remains unchanged at value<strong> </strong>of <strong>13040.</strong></li>
<li><strong>Setup /PrepareDomain</strong> does not have any effect on these attribute values.</li>
</ul>
<p>When reading this article, consider the fact that the lab setup I used was upgraded from Exchange 2003 schema to Exchange 2007 schema and then to Exchange 2010/SP1 schema. Service Pack 2 was tested in Exchange 2003 environment with no Exchange 2007 or Exchange 2010 Service Pack 1. This should not affect any attribute values mentioned above however I cannot guarantee since I have not tested it.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F12%2F15%2Fupdated-verify-exchange-server-schema-version%2F&amp;title=Updated%20%26%238211%3B%20Verify%20Exchange%20Server%20Schema%20Version" id="wpa2a_4"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=YYimNyH4Vfk:6E0yH2NHTCM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=YYimNyH4Vfk:6E0yH2NHTCM:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=YYimNyH4Vfk:6E0yH2NHTCM:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/YYimNyH4Vfk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/12/15/updated-verify-exchange-server-schema-version/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/12/15/updated-verify-exchange-server-schema-version/</feedburner:origLink></item>
		<item>
		<title>New pre-requisites for Exchange 2010 Service Pack 2 and CAS Role</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/FHUFRo2XNn8/</link>
		<comments>http://www.bhargavs.com/index.php/2011/12/06/new-pre-requisites-for-exchange-2010-service-pack-2-and-cas-role/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 15:56:00 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/12/06/new-pre-requisites-for-exchange-2010-service-pack-2-and-cas-role/</guid>
		<description><![CDATA[With release of Service Pack 2 for Exchange Server 2010, you gain few new features such as Cross-Site Silent Redirection for OWA, Address Book Policies, Mailbox Auto-Mapping and few other additions (What&#8217;s new in Exchange 2010 SP2). With it, comes new pre-requisites if you are installing/updating Client Access Server (CAS) role. You will need to [...]]]></description>
			<content:encoded><![CDATA[<p>With release of <a href="http://go.microsoft.com/fwlink/?LinkID=232843" target="_blank">Service Pack 2</a> for Exchange Server 2010, you gain few new features such as <a href="http://technet.microsoft.com/en-us/library/hh529924.aspx#BKMK_CrossSiteSilent" target="_blank">Cross-Site Silent Redirection for OWA</a>, <a href="http://technet.microsoft.com/en-us/library/hh529924.aspx#BKMK_AddressBook" target="_blank">Address Book Policies</a>, <a href="http://technet.microsoft.com/en-us/library/hh529924.aspx#BKMK_MailboxAutoMap" target="_blank">Mailbox Auto-Mapping</a> and few other additions (<a href="http://technet.microsoft.com/en-us/library/hh529924.aspx" target="_blank">What&rsquo;s new in Exchange 2010 SP2</a>).</p>
<p>With it, comes new pre-requisites if you are installing/updating Client Access Server (CAS) role.</p>
<p>You will need to install the following components on the server that will be running CAS role (or existing CAS you are planning to update):</p>
<p>ISAPI Filters &#8211; Web-ISAPI-Filter <br />IIS 6 WMI Compatibility &#8211; Web-WMI <br />ASP.Net &#8211; Web-Asp-Net</p>
<p>You can install them as described in <a href="http://technet.microsoft.com/en-us/library/bb691354.aspx" target="_blank">Exchange 2010 Prerequisites</a> article. If you want to install these components on existing CAS server before upgrade to SP2, you can launch PowerShell as Administrator and then run:</p>
<pre class="brush: ps">Import-Module ServerManager
Add-WindowsFeature Web-ISAPI-Filter,Web-WMI,Web-Asp-Net</pre>
<p>Note this post refers only to Windows 2008 R2. I haven&#8217;t checked if requirements are different for Windows 2008 (without R2) servers. They are, however, detailed in the TechNet articles linked above.</p>
<p>Enjoy!</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F12%2F06%2Fnew-pre-requisites-for-exchange-2010-service-pack-2-and-cas-role%2F&amp;title=New%20pre-requisites%20for%20Exchange%202010%20Service%20Pack%202%20and%20CAS%20Role" id="wpa2a_6"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=FHUFRo2XNn8:ic7LC5mnKUg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=FHUFRo2XNn8:ic7LC5mnKUg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=FHUFRo2XNn8:ic7LC5mnKUg:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/FHUFRo2XNn8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/12/06/new-pre-requisites-for-exchange-2010-service-pack-2-and-cas-role/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/12/06/new-pre-requisites-for-exchange-2010-service-pack-2-and-cas-role/</feedburner:origLink></item>
		<item>
		<title>Script to configure static ports on Exchange Server 2010</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/3xxr4mRO5UM/</link>
		<comments>http://www.bhargavs.com/index.php/2011/10/21/script-to-configure-static-ports-on-exchange-server-2010-2/#comments</comments>
		<pubDate>Fri, 21 Oct 2011 20:45:35 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/10/21/script-to-configure-static-ports-on-exchange-server-2010-2/</guid>
		<description><![CDATA[There is nothing new about this. If you have been reading about Exchange Server 2010 or have it deployed with hardware load balancer, chances are, you have read how to configure static ports on Exchange Server 2010 on TechNet Social wiki for Exchange 2010. Chances are that you have also used my script (referenced in [...]]]></description>
			<content:encoded><![CDATA[<p>There is nothing new about this. If you have been reading about Exchange Server 2010 or have it deployed with hardware load balancer, chances are, you have read <a href="http://social.technet.microsoft.com/wiki/contents/articles/configure-static-rpc-ports-on-an-exchange-2010-client-access-server.aspx" target="_blank">how to configure static ports</a> on Exchange Server 2010 on <a href="http://social.technet.microsoft.com/wiki/contents/articles/exchange-2010-overview.aspx" target="_blank">TechNet Social wiki for Exchange 2010</a>. Chances are that you have also used my script (referenced in the post above) to set static ports on your servers. Lastly, chances are that you have read all about it on my previous post <a href="http://www.bhargavs.com/index.php/2010/05/19/script-to-configure-static-ports-on-exchange-server-2010/" target="_blank">here</a>.</p>
<p>If so, why am I even talking about it today?</p>
<p>Well, if you haven’t noticed a few things already, the way you change ports is different in RTM and SP1. My script didn’t account for SP1 originally when it was written. Was SP1 even existed then?</p>
<p>The other reason is my nature of always learning something and making things better! I noticed how my code was inefficient now that I know a few more things about PowerShell (yeah that’s not funny). I decided to write it more efficiently and that basically meant a complete overhaul of my old script.</p>
<p>The new script is now more user friendly! It uses cmdletbinding and comment based help. It means, for you as a user, you can just type:</p>
<pre class="brush: ps">Get-Help Set-StaticPorts.ps1 –examples</pre>
<p>or</p>
<pre class="brush: ps">Get-Help Set-StaticPorts.ps1 –Full</pre>
<p>The script now validates parameters using ValidateRange and ValidateScript. I think that’s cool! It also uses 59531 and 59532 by default now. How about using recommended ports instead of random ones I used in my previous script? I think that’s even more cool!</p>
<p>The script uses all the right write-* cmdlets now instead of write-host. So now you can use tee-object and won’t end up with empty output file. Yes you loose cool colors I used with write-host but hey, you are trying to set ports on your Exchange Server 2010. For colors you would go see Macy’s Fireworks on New Year, right? <img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/5773.wlEmoticon_2D00_smile_5F00_356F5554.png" /></p>
<p>Oh and last but probably the most important change is inclusion of –auto and –whatif functionality!</p>
<p>-WhatIf is obvious. Script will tell you what it is doing without actually making any changes.</p>
<p>-Auto will automatically find all your Exchange 2010 CAS servers and Exchange 2010 Mailbox servers that are hosting Public Folders. It will then change ports on CAS Server for RPC CA service and Exchange AB service. On Mailbox servers it will only change RPC CA ports as Exchange AB service doesn’t exist on Mailbox only role.</p>
<p>If you combine all this with –Force, you can also silence the script. It won’t ask you for any confirmation and will change ports you specify (or use defaults) and restart the services! Isn’t that awesome!</p>
<p>So go download the script from here: <a href="http://cid-14adc5cf1e0cbccf.skydrive.live.com/download.aspx/.Public/Exchange 2010/Scripts/Set-StaticPorts.ps1" target="_blank">Set-StaticPorts.ps1</a> and give it a go. As always, let me know if you find any issues and I will be happy to fix it.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F10%2F21%2Fscript-to-configure-static-ports-on-exchange-server-2010-2%2F&amp;title=Script%20to%20configure%20static%20ports%20on%20Exchange%20Server%202010" id="wpa2a_8"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=3xxr4mRO5UM:k-KQLxnkt5k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=3xxr4mRO5UM:k-KQLxnkt5k:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=3xxr4mRO5UM:k-KQLxnkt5k:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/3xxr4mRO5UM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/10/21/script-to-configure-static-ports-on-exchange-server-2010-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/10/21/script-to-configure-static-ports-on-exchange-server-2010-2/</feedburner:origLink></item>
		<item>
		<title>PowerShell script to edit remote registry</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/XcyZQMVfRfc/</link>
		<comments>http://www.bhargavs.com/index.php/2011/10/21/powershell-script-to-edit-remote-registry/#comments</comments>
		<pubDate>Fri, 21 Oct 2011 19:24:01 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/10/21/powershell-script-to-edit-remote-registry/</guid>
		<description><![CDATA[Did you ever wanted to modify your registry or add a key/value pair to registry? Wished there was a script to help you do that? Even better, wished it can run remotely without PowerShell WinRM listener configured on target server? I had custom script that would modify certain registry entry but it was inflexible and [...]]]></description>
			<content:encoded><![CDATA[<p>Did you ever wanted to modify your registry or add a key/value pair to registry? Wished there was a script to help you do that? Even better, wished it can run remotely without PowerShell WinRM listener configured on target server?</p>
<p>I had custom script that would modify certain registry entry but it was inflexible and in my recent rewrite of another script, I wanted more flexibility. So out of necessity, I decided to rewrite my registry script&#160; and made it independent script with lot of flexibility.</p>
<p>Using this script, you can now run it like this:</p>
<pre class="brush: ps">.\Set-RemoteRegistry.ps1 -Key SYSTEM\CurrentControlSet\services\AudioSrv\Parameters -Name ServiceDllUnloadOnStop -Value 1 -Type DWord</pre>
<p>If you want to suppress prompts, you can use –Force parameter like this:</p>
<pre class="brush: ps">.\Set-RemoteRegistry.ps1 -Key SYSTEM\CurrentControlSet\services\AudioSrv\Parameters -Name ServiceDllUnloadOnStop -Value 0 -Type DWord –Force</pre>
<p>This script is also a good example of cmdletbinding and support of whatif. I still think use of Whatif in scripts has its limitations as apprarent in this script (without adding more code to it to work around that limitation).</p>
<p>The script is also a good example of how you can use parameter validation right in the parameter declaration. This way you can avoid if..then code blocks to validate parameter inputs. What a wonderful discovery, I gotta thank PowerShell team for this.</p>
<p>So go ahead, get the script <a href="http://cid-14adc5cf1e0cbccf.skydrive.live.com/download.aspx/.Public/Blog-TechNet/Set-RemoteRegistry.ps1" target="_blank">Set-RemoteRegistry.ps1</a> here and if you find any issues, let me know. Have Fun!</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F10%2F21%2Fpowershell-script-to-edit-remote-registry%2F&amp;title=PowerShell%20script%20to%20edit%20remote%20registry" id="wpa2a_10"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=XcyZQMVfRfc:74rnLfLGORs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=XcyZQMVfRfc:74rnLfLGORs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=XcyZQMVfRfc:74rnLfLGORs:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/XcyZQMVfRfc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/10/21/powershell-script-to-edit-remote-registry/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/10/21/powershell-script-to-edit-remote-registry/</feedburner:origLink></item>
		<item>
		<title>Mythbusters–Exchange Server 2010 and PowerShell Remoting</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/tJ2Cb-Otd40/</link>
		<comments>http://www.bhargavs.com/index.php/2011/09/27/mythbusters%e2%80%93exchange-server-2010-and-powershell-remoting/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 17:22:44 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/09/27/mythbusters%e2%80%93exchange-server-2010-and-powershell-remoting/</guid>
		<description><![CDATA[A misconception that WinRM listener needs to be configured in order to be able to connect to Exchange Server 2010 had popped up a couple times in my conversations recently so I decided to clear the confusion. Guest blogging for my friends at IT Pro Africa, I have written the details on the blog post [...]]]></description>
			<content:encoded><![CDATA[<p>A misconception that WinRM listener needs to be configured in order to be able to connect to Exchange Server 2010 had popped up a couple times in my conversations recently so I decided to clear the confusion. Guest blogging for my friends at IT Pro Africa, I have written the details on the blog post here: <a title="http://itproafrica.com/technology/exchange/exchange-server-2010-and-powershell-remoting/" href="http://itproafrica.com/technology/exchange/exchange-server-2010-and-powershell-remoting/">http://itproafrica.com/technology/exchange/exchange-server-2010-and-powershell-remoting/</a></p>
<p>Check it out and feel free to post comments either there or directly here.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F09%2F27%2Fmythbusters%25e2%2580%2593exchange-server-2010-and-powershell-remoting%2F&amp;title=Mythbusters%E2%80%93Exchange%20Server%202010%20and%20PowerShell%20Remoting" id="wpa2a_12"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=tJ2Cb-Otd40:s4DIfJoOPQo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=tJ2Cb-Otd40:s4DIfJoOPQo:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=tJ2Cb-Otd40:s4DIfJoOPQo:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/tJ2Cb-Otd40" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/09/27/mythbusters%e2%80%93exchange-server-2010-and-powershell-remoting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/09/27/mythbusters%e2%80%93exchange-server-2010-and-powershell-remoting/</feedburner:origLink></item>
		<item>
		<title>Remembering 9/11/2001</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/TqfTChR281w/</link>
		<comments>http://www.bhargavs.com/index.php/2011/09/11/remembering-9112001/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 04:48:03 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/09/11/remembering-9112001/</guid>
		<description><![CDATA[While it is easy for us grown ups to get used to all the chatter on radio and television and not pay enough attention to anything that isn’t of utmost importance to our personal lives or goals, my 5 yr. old today reminded me of why a 5 yr. old is better than grown ups. [...]]]></description>
			<content:encoded><![CDATA[<p>While it is easy for us grown ups to get used to all the chatter on radio and television and not pay enough attention to anything that isn’t of utmost importance to our personal lives or goals, my 5 yr. old today reminded me of why a 5 yr. old is better than grown ups.</p>
<p>While driving him around town on errands, as I usually do, I was listening to the public radio broadcast on <a href="http://www.whyy.org/" target="_blank">WHYY</a>. While it was good conversation, it was more or less a blur to my grown up brain and while sobering, it wasn’t heartfelt. But to my 5 yr. old it was a lot more. I sensed that as soon as he started asking endless questions. All very innocent, all very touching. He asked me what memory meant when he heard “sonic memorial” on radio. He asked me why they won’t build two towers now. And when I ignorantly I said I don’t know, he said because they have built a fountain there. That’s when it struck me how ignorant I was. While he was listening to same radio and watching same news on TV as I was, he was actually the one paying attention!</p>
<p>What touched me the most is when he said when he grows up, he wants to start a company in L.A. (not sure why he picked that) and will build twin towers everywhere except in New York city because they have fountain there! It send a shockwave through me. How a kid, who has no idea of the magnitude of the events that unfolded on that unforgettable morning, wanted to do so much for a memory!</p>
<p>That’s when I woke up and decided create a picture to tell the story.</p>
<p>I am not an artist so I have used pictures I came across from image search on search engines and if I am violating any copyrights unknowingly, I hope the authors will understand that I have no intention of making this image available for sale. I just want to do this for my child and his endless curiosity. God bless him.</p>
<p>What I am sharing here are some outcomes of my numerous attempts with two formats; one for desktop wallpaper and one for print (8&#215;10 format). Feel free to download for personal use. Please do not try to sell out of respect for the victims. I claim no copyright to these photographs. If I have used your photograph and you don’t want me to use it for this good cause, let me know and I will immediately remove it.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:66721397-FF69-4ca6-AEC4-17E6B3208830:c39e93ce-fcdf-4d34-97e7-321a4930f25a" class="wlWriterEditableSmartContent">
<table border=0 cellspacing=0 cellpadding=0 style='outline:none;border-style:none;margin:0px;padding:0px;width:592px;border-collapse:collapse;' >
<tr>
<td colspan=2 style='outline:none;border-style:none;margin:0px;padding:5px 0px 5px 5px;width:233px;vertical-align:bottom;' >                            <a href="https://public.blu.livefilestore.com/y1plcgj5kMttsCWhkGCyz57mSlydMSKXxKAw10LRniUAenfZ5mVRcA0LWzi6crvdnT04CVLy75uafXDVYeklm7pew/AutoCollage_9_Images_2.jpg?psid=1" target="_blank" border="0" style="outline:none;border-style:none;margin:0px;padding:0px;">                                <img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" alt="View album" title="View album" width="233" height="233" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/8750._2D00_12334642085E35D085_5F00_37874438.png" /></a>                        </td>
<td colspan=3 style='vertical-align:middle;margin:0px;padding:5px 5px 5px 0px;outline:none;border-style:none;width:337px' >
<div style="margin-left:10px;top:-3%;" >
<div style='width:337px;overflow:visible;'><a style="text-decoration:none;" href="https://skydrive.live.com/redir.aspx?cid=14adc5cf1e0cbccf&amp;page=browse&amp;resid=14ADC5CF1E0CBCCF!1657&amp;type=5&amp;authkey=5YDC1Gg*whk%24&amp;Bsrc=Photomail&amp;Bpub=SDX.Photos" target="_blank"><span  style="line-height:1.26em;padding:0px;width:337px;font-size:26pt;font-family:'Segoe UI', helvetica, arial, sans-serif;"  defaultText="Enter album name here">Remembering Sept 11</span></a></div>
<div style="padding:10px 0px 0px 0px;margin:0px;">
<table border=0 cellspacing=0 cellpadding=0 style="margin:0px;padding:0px;outline:none;border-style:none;border-collapse:collapse;width:auto;">
<tr>
<td style="vertical-align:top;outline:none;border-style:none;margin:0px;padding:10px 15px 6px 0px;"><a href="https://skydrive.live.com/redir.aspx?cid=14adc5cf1e0cbccf&amp;page=play&amp;resid=14ADC5CF1E0CBCCF!1657&amp;type=5&amp;authkey=5YDC1Gg*whk%24&amp;Bsrc=Photomail&amp;Bpub=SDX.Photos" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;">VIEW SLIDE SHOW</a></td>
<td style="vertical-align:top;outline:none;border-style:none;margin:0px;padding:10px 0px 6px 0px;"><a href="https://skydrive.live.com/redir.aspx?cid=14adc5cf1e0cbccf&amp;page=downloadphotos&amp;resid=14ADC5CF1E0CBCCF!1657&amp;type=5&amp;Bsrc=Photomail&amp;Bpub=SDX.Photos&amp;authkey=5YDC1Gg*whk%24" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;">DOWNLOAD ALL</a></td>
</tr>
</table></div>
</p></div>
</td>
</tr>
<tr>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 5px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1ppzib6kjQshD8I2kxHbZj-GQIPvnmZeHftep7XI3E80ELg2DyS9XV35cW8KET3YmbGC15fIs7rwitr0vd3d9kFA/AutoCollage_9_Images_3.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/8662._2D00_6968438750CFB8928_5F00_2F236EE1.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1p5WX1ZdK7Rb41EkOdRQFMIZTm4BpcSWSeXKAjecM7i5OvpAf9PEyWn3JrcS5IXgf8FIg0jHw9UwE_7KMJtaLZmQ/AutoCollage_14_Images%204.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/8156.1970879783AE8DBE0_5F00_0E2FFC3A.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1pg2oEbWKYnZPp-UzU5FAdbsXG5vAq-IV__a4u3L0Rx_0pzuerDdwZe9Qqg9k5ermHYLQyMR6a2tJsxivKWZPEpQ/AutoCollage_9_Images_6.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/5444.881316536CE07C6A_5F00_6D3C8992.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1pYtWyiGm2ySvK9_AsT2om8gDpJK-GiY90a7FpFKZCWZdTEYsj3-C0IiIrQaYGnFp6jUMnfdtutxmNxykcQqQ9Nw/AutoCollage_9_Images%201.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/7674.3726202084CC56FAD_5F00_4C4916EB.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1poUFdv9_uzEAI69GEyE6lPylOUdhJrQ_OEbCVPDyr0wmBjGyprKD_gIY8M274HiVPxEt5O_l-nsqExkGkH7ODFA/AutoCollage_9_Images_4.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/0247._2D00_11950282262CAA62F0_5F00_2B55A444.png" /></a></td>
</tr>
<tr>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 5px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1ppAIKOQ9j6-HPQCGuHCL4WQsZO_yxC0WJn22kPlMfLV8MQk8QBaHmNt7eWq-GctlIZUSPrqqHtT6QuJx4nYZ0rA/AutoCollage_9_Images_5.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/3487.20729246525EA2037A_5F00_1B665F80.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1p2JsNwuF4G9ak0L05U94CMJp08R8Ni3nelzd6bSgbA1IJT7f_c5hrX3qDDCP5x3h_3Pj1M51C-iAyZbsb21_ecw/AutoCollage_14_Images%203.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/1323.8918809026C744975_5F00_7A72ECD8.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1pR3Czd4hWkk8Jo1zX8d7-6oogDj-H0hfQ_jCnnFfXH1MxB2sgkzT2RhGqPPJFoV-huaggEiOXCMWUe4ol8XvvNA/AutoCollage_14_Images%201.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/3884.9729715954C593CB8_5F00_076CCCEA.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' ><a href="https://public.blu.livefilestore.com/y1pvSD2d5wd-fvRLUrXhmER_IgluQ8Ke40UGr2furV4XXQBJQ4RZqnlWv4tAAAGgTV_rnQNdl4AjRW46NLrsPNzIQ/AutoCollage_14_Images%202.jpg?psid=1" border="0" target="_blank" style="font-family:'Segoe UI', helvetica, arial, sans-serif;font-size:8pt;outline:none;border-style:none;text-decoration: none;padding:0px;margin:0px;"><img style="outline:none;border-style:none;padding:0px;margin:0px;border:0px;background:none;background-image:none;vertical-align:bottom;" border="0" width="114" alt="View album" title="View album" height="114" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/8015._2D00_9631846532C3E2FFB_5F00_388C078A.png" /></a></td>
<td style='vertical-align:bottom;outline:none;border-style:none;padding:0px 5px 5px 0px;margin:0px;width:114px;height:114px;' >&nbsp;</td>
</tr>
</table>
</div>
<p>Oh and if you want to know how did I create this collage, check out <a href="http://research.microsoft.com/en-us/um/cambridge/projects/autocollage/" target="_blank">Microsoft Research AutoCollage</a>.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F09%2F11%2Fremembering-9112001%2F&amp;title=Remembering%209%2F11%2F2001" id="wpa2a_14"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=TqfTChR281w:STzgO0yAq4Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=TqfTChR281w:STzgO0yAq4Q:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=TqfTChR281w:STzgO0yAq4Q:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/TqfTChR281w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/09/11/remembering-9112001/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/09/11/remembering-9112001/</feedburner:origLink></item>
		<item>
		<title>Maximum Recipients per Message and exceptions</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/LCMruvIx9QM/</link>
		<comments>http://www.bhargavs.com/index.php/2011/08/25/maximum-recipients-per-message-and-exceptions/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 22:20:51 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/08/25/maximum-recipients-per-message-and-exceptions/</guid>
		<description><![CDATA[I just posted this article at our PFE site Mr. Proactive. Here’s the excerpt of the article: While this is fairly documented on TechNet, it sometimes takes a bit to find and memory usually fails us when the question of precedence comes up. I figured documenting it here would help readers. So the classic question [...]]]></description>
			<content:encoded><![CDATA[<p>I just posted this article at our PFE site <a href="http://www.mrproactive.com/" target="_blank">Mr. Proactive</a>. Here’s the excerpt of the article:</p>
<p>While this is fairly documented on TechNet, it sometimes takes a bit to find and memory usually fails us when the question of precedence comes up. I figured documenting it here would help readers.</p>
<p>So the classic question of how to handle message size limits comes up very often and ever changing technology in pursuit of improvement never stays the same. This adds to the confusion of understanding the limits and the way they are applied across the organization. Also, it becomes challenging when you need to provide an exception.</p>
<p>Let’s take an example:</p>
<blockquote><p>You have Exchange 2010 servers coexisting with Exchange 2003 servers. You have Maximum Recipient per message limit set to 5000 in Global Limits. You have the same set to 2500 in Organizational Limits.</p>
<p>A user comes up to you and presents a business need that requires him to be able to send a message to 3000 company employees at once.</p>
</blockquote>
<p>Now this is an interesting scenario…</p>
<p>You can read the entire post <a href="http://blogs.technet.com/b/mr_proactive/archive/2011/08/25/maximum-recipients-per-message-and-exceptions.aspx" target="_blank">here</a>.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F08%2F25%2Fmaximum-recipients-per-message-and-exceptions%2F&amp;title=Maximum%20Recipients%20per%20Message%20and%20exceptions" id="wpa2a_16"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=LCMruvIx9QM:HmkbxYjRPvw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=LCMruvIx9QM:HmkbxYjRPvw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=LCMruvIx9QM:HmkbxYjRPvw:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/LCMruvIx9QM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/08/25/maximum-recipients-per-message-and-exceptions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/08/25/maximum-recipients-per-message-and-exceptions/</feedburner:origLink></item>
		<item>
		<title>Microsoft Exchange 2010 PowerShell Cookbook Review</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/0ZDrNXz_nRo/</link>
		<comments>http://www.bhargavs.com/index.php/2011/08/22/microsoft-exchange-2010-powershell-cookbook-review/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 20:49:00 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/08/22/microsoft-exchange-2010-powershell-cookbook-review/</guid>
		<description><![CDATA[Disclaimer: I am not paid to write about this book and the review written here is my own view. I was recently contacted by Packt Publishing about their recently published book “Microsoft Exchange 2010 PowerShell Cookbook”. I have voluntarily reviewed books in the past (i.e. Windows Server 2003 Security: A Technical Reference by Roberta Bragg) [...]]]></description>
			<content:encoded><![CDATA[<blockquote><h4>Disclaimer: I am not paid to write about this book and the review written here is my own view.</h4>
</blockquote>
<p>I was recently contacted by Packt Publishing about their recently published book “<a href="http://www.packtpub.com/microsoft-exchange-server-2010-with-windows-powershell-cookbook/book" target="_blank">Microsoft Exchange 2010 PowerShell Cookbook</a>”. I have voluntarily reviewed books in the past (i.e. <a href="http://safari.oreilly.com/0321305019" target="_blank">Windows Server 2003 Security: A Technical Reference</a> by Roberta Bragg) out of my interest and curiosity. Same interest and curiosity lead me to accept the request and spend some time reading it. I am glad I did because I did find a few interesting things which while I may have known, have never tried to script either because there was no need to do so or was never asked to do so.</p>
<p>I figured posting the review here would give potential readers one more data point to take into their consideration. I am sure the book will benefit any reader working with Exchange Server 2010 and wants to expand on their PowerShell knowledge as it relates to Exchange Server 2010.</p>
<p>Without further due, here it is:</p>
<h4>The Premise</h4>
<p>Mike Pfeiffer is well known for his contributions to Microsoft Exchange community which has also earned him Microsoft MVP award.</p>
<p>Keeping him in check are the reviewers like Shey Levy, which only means one thing: it is going to be tough for Mike to make a mistake and have it go unnoticed into the book for publication.</p>
<p>Microsoft Exchange 2010 PowerShell Cookbook promises to show you how to automate routine tasks and solve common problems. The book is organized in logical sections walking the reader through key concepts and tasks to manage their Microsoft Exchange 2010 environment with ease.</p>
<p>While the book focuses on on-premise deployment of Microsoft Exchange 2010, the concepts covered should make reader comfortable in managing their Office 365 tenant.</p>
<h4>The Content</h4>
<p>The book dives into Exchange 2010 management tasks by starting on the right foot. While most of Exchange administrators would be familiar with PowerShell in some capacity, authors don’t just assume and start off with PowerShell key concepts. This is really helpful to novice readers just as much as experienced PowerShell users who may learn a thing or two they didn’t know before.</p>
<p>The book covers every aspect of Exchange 2010 management including recipient management, Database and Server roles management, High availability, Compliance and RBAC.</p>
<p>The book also covers scripting Exchange Web Services which was a pleasant surprise as writing scripts for EWS is difficult only due to lack of understanding on the subject. EWS API and scripting details in this book tries to address just that.</p>
<p>Each section is organized into different tasks reader may want to perform. The tasks have a good flow of precondition, how to perform given task and details explaining what the given cmdlet is doing or information on actual process being followed. There are also very useful tidbits in “There’s More…” sections at end of each task being performed. This will help reader not only understand the task at hand but to leverage the information to carry out other tasks that may be related but not explicitly written about in the book.</p>
<h4>Summary</h4>
<p>Overall Microsoft Exchange 2010 PowerShell Cookbook is a welcome addition to what’s already been written about Exchange 2010 or PowerShell. While the book doesn’t teach you Exchange 2010, it does a great job of educating the reader about PowerShell and how to get the most out of Exchange 2010 using PowerShell to manage it.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F08%2F22%2Fmicrosoft-exchange-2010-powershell-cookbook-review%2F&amp;title=Microsoft%20Exchange%202010%20PowerShell%20Cookbook%20Review" id="wpa2a_18"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=0ZDrNXz_nRo:X4eCIeigrKw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=0ZDrNXz_nRo:X4eCIeigrKw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=0ZDrNXz_nRo:X4eCIeigrKw:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/0ZDrNXz_nRo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/08/22/microsoft-exchange-2010-powershell-cookbook-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/08/22/microsoft-exchange-2010-powershell-cookbook-review/</feedburner:origLink></item>
		<item>
		<title>Why does catch not catch?</title>
		<link>http://feedproxy.google.com/~r/bhargavs/~3/UvGuiLIBHbI/</link>
		<comments>http://www.bhargavs.com/index.php/2011/07/13/why-does-catch-not-catch/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 20:50:29 +0000</pubDate>
		<dc:creator>Bhargav</dc:creator>
				<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.bhargavs.com/index.php/2011/07/13/why-does-catch-not-catch/</guid>
		<description><![CDATA[I ran into an interesting discussion with my customer today.&#160; He was writing a code block that looked like the following: Try { Get-MailboxServer Bogus } Catch { "Mailbox server doesn't exist" } Looking at the code, it’s very simple. Run a command in try block and if error is generated, report on it using [...]]]></description>
			<content:encoded><![CDATA[<p>I ran into an interesting discussion with my customer today.&nbsp; He was writing a code block that looked like the following:</p>
<pre class="brush: ps">Try {
Get-MailboxServer Bogus
}
Catch {
"Mailbox server doesn't exist"
}</pre>
<p>Looking at the code, it’s very simple. Run a command in try block and if error is generated, report on it using catch. However, it didn’t work as it should. That’s why it became interesting.</p>
<p>I tried the following:</p>
<pre class="brush: ps">Try {
somestring
}
Catch {
"Error"
}</pre>
<p>Now that worked just as you would expect!</p>
<p>What was going on here. I was puzzled and so was the engineer who asked me about the error in first place. So we looked at the <a href="http://technet.microsoft.com/en-us/library/dd315350.aspx" target="_blank">about_Try_Catch_Finally</a> on TechNet. As an IT Pro would usually RTFM, we went straight to examples and that looked just like our problem child. No issues when we run that example but when we run our code, it doesn’t want to work.</p>
<p>Again, as any other IT Pro would do, we did the next “logical” thing to match the example code with ours and decided we weren’t specifying error type. While we both agreed that it wasn’t the case, we still wanted to make sure. So we looked at the error object:</p>
<pre class="brush: ps">$Error[0].Exception.gettype()

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     RemoteException                          System.Management.Automation.RuntimeException
</pre>
<p>Then we changed out Catch statement to specify the error type. That, as you may have guess it by now, didn’t work either! <img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-82-34-metablogapi/7573.wlEmoticon_2D00_smile_5F00_41D9D85B.png"></p>
<p>This is actually when we started paying attention to TFM. If we ever read the description on the TechNet documentation, it reads “Describes how to use the Try, Catch, and Finally blocks to handle <strong><u><font color="#ff0000">terminating errors</font></u></strong>.” </p>
<p>So very clearly, it says the error must be a terminating error. And the errors we were generating when executing Get-MailboxServer cmdlet, were not terminating errors! As they say it all the time, once you find the issue, fix takes only seconds. All we had to do at this point was to make the error a terminating error:</p>
<pre class="brush: ps">Try {
Get-MailboxServer Bogus -ErrorAction Stop
}
Catch {
"Mailbox server doesn't exist"
}</pre>
<p>And the world was fine once again.</p>
<p>Originally posted at http://blogs.technet.com/bshukla</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.bhargavs.com%2Findex.php%2F2011%2F07%2F13%2Fwhy-does-catch-not-catch%2F&amp;title=Why%20does%20catch%20not%20catch%3F" id="wpa2a_20"><img src="http://www.bhargavs.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/bhargavs?a=UvGuiLIBHbI:iV-CYyRmSCE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/bhargavs?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/bhargavs?a=UvGuiLIBHbI:iV-CYyRmSCE:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/bhargavs?i=UvGuiLIBHbI:iV-CYyRmSCE:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/bhargavs/~4/UvGuiLIBHbI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bhargavs.com/index.php/2011/07/13/why-does-catch-not-catch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.bhargavs.com/index.php/2011/07/13/why-does-catch-not-catch/</feedburner:origLink></item>
	</channel>
</rss>

