<?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">Marcin@Work</title><subtitle type="html">System Center 2012 Operations Manager Tools and Management Packs</subtitle><id>http://blogs.technet.com/b/marcin_jastrzebski/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/" /><link rel="self" type="application/atom+xml" href="http://blogs.technet.com/b/marcin_jastrzebski/atom.aspx" /><generator uri="http://telligent.com" version="5.6.50428.7875">Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><updated>2009-05-26T09:36:00Z</updated><entry><title>Injecting CDATA into MPs</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2013/01/29/forcibly-injecting-cdata-into-mps.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2013/01/29/forcibly-injecting-cdata-into-mps.aspx</id><published>2013-01-30T00:36:00Z</published><updated>2013-01-30T00:36:00Z</updated><content type="html">&lt;p&gt;There are situations where it may be useful to have the scripts that are part of your MP to be enclosed in CDATA tags. This allows you to copy and paste scripts directly from MP XML into a file and run them (usually to debug some issue).&lt;/p&gt;
&lt;p&gt;If you use the $IncludeFileContent&amp;hellip;$ directive in VSAE to include a text file into your MP in VSAE, your script will be wrapped in CDATA tags. If you do this, there&amp;rsquo;s no need to read the rest of this article. :)&lt;/p&gt;
&lt;p&gt;However, if you do not use that directive, your script will not be enclosed in CDATA tags. This means that various characters such as &amp;lt; and &amp;gt; will be escaped to produce valid XML (&amp;lt; will be replaced with &amp;amp;lt;, for example). While the MP will work correctly (both XML formats are equivalent), it makes it difficult to copy and paste the script into a file and run it.&lt;/p&gt;
&lt;p&gt;The VSAE import wizard does not extract scripts from MPs, so these will end up inline with the XML and likely without CDATA tags. If you want to force CDATA tags back in, I came up with a quick workaround that adds an extra build step before MP verification in VSA to inject CDATA for specific locations in the MP.&lt;/p&gt;
&lt;p&gt;To enable this functionality, please copy and paste the following text (until the closing Project tag) into a file called ManagementPack.CData.targets:&lt;/p&gt;
&lt;p&gt;&amp;lt;Project xmlns="&lt;a href="http://schemas.microsoft.com/developer/msbuild/2003&amp;quot;"&gt;http://schemas.microsoft.com/developer/msbuild/2003"&lt;/a&gt;&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;UsingTask &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TaskName="InjectCData" &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TaskFactory="CodeTaskFactory" &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; AssemblyName="Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" &amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ParameterGroup&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Input Required="true" ParameterType="System.String"/&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Output Required="true" ParameterType="System.String"/&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Paths Required="true" ParameterType="Microsoft.Build.Framework.ITaskItem[]"/&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/ParameterGroup&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Task&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Reference Include="System.Xml" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Reference Include="System.Xml.Linq" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Using Namespace="System.Collections.Generic" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Using Namespace="System.IO" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Using Namespace="System.Linq" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Using Namespace="System.Xml.Linq" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Using Namespace="System.Xml.XPath" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Code Type="Fragment" Language="cs"&amp;gt; &lt;br /&gt;&amp;lt;![CDATA[ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XDocument document = XDocument.Load(this.Input); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IList&amp;lt;XElement&amp;gt; elements = this.Paths &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Select(item =&amp;gt; item.ItemSpec) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .SelectMany(document.XPathSelectElements) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Where(element =&amp;gt; element.HasElements == false) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ToList(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (XElement element in elements) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string contents = element.Value; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; element.SetValue(string.Empty); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; element.Add(new XCData(contents)); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Save(this.Output); &lt;br /&gt; ]]&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Code&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Task&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;/UsingTask&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;PropertyGroup&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;CDataInjectionEnabled Condition=" $(CDataInjectionEnabled) == '' "&amp;gt;true&amp;lt;/CDataInjectionEnabled&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;/PropertyGroup&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;ItemGroup&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;CDataInjectorPath Include="//ScriptBody"/&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;CDataInjectorPath Include="//Files/File/Contents"/&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;/ItemGroup&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;Target Name="InjectCDataIntoUnsealedMp" BeforeTargets="MpVerifyManagementPack" Condition=" $(CDataInjectionEnabled) == 'true' "&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Message Importance="High" Text="Injecting CData"/&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;InjectCData Input="$(VerificationInput)" Output="$(VerificationInput)" Paths="@(CDataInjectorPath)"/&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;/Target&amp;gt; &lt;br /&gt;&amp;lt;/Project&amp;gt;&lt;/p&gt;
&lt;p&gt;Place the file at the same location as the .mpproj file you are interested in. Then, locate the &amp;lt;Import&amp;hellip;/&amp;gt; directive near the bottom of the file and add the following below it:&lt;/p&gt;
&lt;p&gt;&amp;lt;Import Project="ManagementPack.CData.targets" /&amp;gt;&lt;/p&gt;
&lt;p&gt;It should look similar to this:&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;lt;Import Project="$(MSBuildExtensionsPath)\Microsoft\VSAC\Microsoft.SystemCenter.OperationsManager.targets" /&amp;gt; &lt;br /&gt;&amp;nbsp; &amp;lt;Import Project="ManagementPack.CData.targets" /&amp;gt; &lt;br /&gt;&amp;lt; /Project&amp;gt;&lt;/p&gt;
&lt;p&gt;At this point you can restart VSAE and build your project. When you build, you will see similar build output to the following (this assumes default build verbosity settings in VS 2010):&lt;/p&gt;
&lt;p&gt;------ Build started: Project: ManagementPack1, Configuration: Debug x86 ------ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Starting MP Build for ManagementPack1. &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Starting Fragment Verification &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Resolving Project References &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Starting Merge Management Pack Fragments &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Starting Pre Processing &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Injecting CData &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Starting MP Verify &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Resolving resources &lt;br /&gt; ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========&lt;/p&gt;
&lt;p&gt;You should see an extra step in the build called &amp;ldquo;Injecting CData&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;With the Import directive added to your project, 1 new property and 1 new item is available for customization:&lt;/p&gt;
&lt;p&gt;CDataInjectionEnabled &amp;ndash; This MS Build property controls whether CData sections are actually injected into the MP. The default value is true, but you can set it to false if, for some reason, you wish to turn off the injection functionality without removing the new import.&lt;/p&gt;
&lt;p&gt;CDataInjectorPath &amp;ndash; This MS Build item controls which paths in the XML files will be considered for CData section injection. The paths are specified in XPath 1.0 format. If the path resolved to an XML tag with sub-tags, the tag will be skipped and a CData section will not be injected.&lt;/p&gt;
&lt;p&gt;The current version will attempt to inject CData sections for every ScriptBody tag (//ScriptBody) and for every Contents tag that appears under a File tag that appears under a Files tag (/Files/File/Content). I may have missed some locations where scripts appear, so feel free to customize the list yourself (and don&amp;rsquo;t forget to let me know, so I can update the article).&lt;/p&gt;
&lt;p&gt;Happy injecting! :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3549171" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="authoring" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/authoring/" /><category term="cdata" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/cdata/" /><category term="vsae" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/vsae/" /></entry><entry><title>Map Dashboard in SC 2012 Operations Manager</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2012/05/21/map-dashboard-in-sc-2012-operations-manager.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2012/05/21/map-dashboard-in-sc-2012-operations-manager.aspx</id><published>2012-05-21T18:34:00Z</published><updated>2012-05-21T18:34:00Z</updated><content type="html">&lt;p&gt;Today, I will show you how you can create a map dashboard that displays availability and monitoring data for configured Web Application Availability tests. I will walk you through the bare minimum steps needed to display a map dashboard with some useful data.&lt;/p&gt;  &lt;h2&gt;Prerequisites&lt;/h2&gt;  &lt;p&gt;To complete this tutorial, you will need the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A System Center 2012 Operations Manager management group with at least 1 agent and 1 management server. &lt;/li&gt;    &lt;li&gt;A machine with the Operations Console installed. &lt;/li&gt;    &lt;li&gt;15-25 minutes of available time &lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Locations&lt;/h2&gt;  &lt;p&gt;All monitoring workflows that are run by Operations Manager are hosted by either an Agent or a Management Server. SC 2012 Operations Manager allows you to associate a location with the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;One or more agents &lt;/li&gt;    &lt;li&gt;One or more management servers &lt;/li&gt;    &lt;li&gt;One or more resource pools &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This is accomplished through PowerShell. Let’s open the &lt;strong&gt;Operations Manager Shell&lt;/strong&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/6201.image_5F00_40B72A3E.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/8838.image_5F00_thumb_5F00_008110C4.png" width="808" height="243" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;SCOM 2012 ships with several cmdlets to manage locations:&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="2" width="563"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="155"&gt;&lt;strong&gt;Cmdlet Name&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="406"&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="155"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=235476" target="_blank"&gt;Get-SCOMLocation&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="406"&gt;This cmdlet can be used to list all the locations configured in a management group. It can also be used to obtain a location of a particular agent, management server, resource pool, or a managed entity.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="155"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=235473" target="_blank"&gt;New-SCOMLocation&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="406"&gt;This cmdlet creates a new location with the specified display name, longitude and latitude.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="155"&gt;         &lt;p align="left"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=235484" target="_blank"&gt;Remove-SCOMLocation&lt;/a&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="406"&gt;This cmdlet removes an association between a location and a set of agents, management servers, or resource pools. It can also be used to remove the location from the management group.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="155"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=235479" target="_blank"&gt;Set-SCOMLocation&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="406"&gt;This cmdlet associates an existing location with a set of agents, management servers, or resource pools in the management group.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="155"&gt;&lt;a href="http://go.microsoft.com/fwlink/p/?LinkId=239506" target="_blank"&gt;Update-SCOMLocation&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="406"&gt;This cmdlet updates the specified location with a new display name, longitude, or latitude.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h3&gt;Create New Locations&lt;/h3&gt;  &lt;p&gt;The environment I’m using to write this article consists of a management server and an agent. I will associate them with the following locations:&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="2" width="272"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="105"&gt;&lt;strong&gt;Display Name&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="79"&gt;&lt;strong&gt;Latitude&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="86"&gt;&lt;strong&gt;Longitude&lt;/strong&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="105"&gt;Redmond, WA&lt;/td&gt;        &lt;td valign="top" width="79"&gt;47.6739882&lt;/td&gt;        &lt;td valign="top" width="86"&gt;-122.121512&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="105"&gt;Chicago, IL&lt;/td&gt;        &lt;td valign="top" width="79"&gt;41.850033&lt;/td&gt;        &lt;td valign="top" width="86"&gt;-87.6500523&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h2&gt;&lt;/h2&gt;  &lt;p&gt;To create the above locations, execute the following script in the shell:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; New-SCOMLocation -DisplayName &amp;quot;Redmond, WA&amp;quot; -Latitude 47.6739882 -Longitude -122.121512&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; New-SCOMLocation -DisplayName &amp;quot;Chicago, IL&amp;quot; -Latitude 41.850033 -Longitude -87.6500523&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;To verify that the locations have been created successfully, execute the following:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; Get-SCOMLocation&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Your output should be similar to the following:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; Get-SCOMLocation&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;font face="Courier New"&gt;Name&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 6775251e-c851-4a6f-b6ab-90faeb87d9a1      &lt;br /&gt;Path&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; :       &lt;br /&gt;DisplayName&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Redmond, WA       &lt;br /&gt;FullName&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : System.GeoLocation:6775251e-c851-4a6f-b6ab-90faeb87d9a1       &lt;br /&gt;ManagementPackClassIds&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : {a7f774ed-534c-08af-2fbf-54cbe1745388}       &lt;br /&gt;LeastDerivedNonAbstractManagementPackClassId : a7f774ed-534c-08af-2fbf-54cbe1745388       &lt;br /&gt;TimeAdded&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 5/21/2012 7:28:07 PM       &lt;br /&gt;LastModifiedBy&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 7431e155-3d9e-4724-895e-c03ba951a352       &lt;br /&gt;Values&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : {6775251e-c851-4a6f-b6ab-90faeb87d9a1, 47.6739882, -122.121512, System.C       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; onfigItem.ObjectStatusEnum.Active...}       &lt;br /&gt;LastModified&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 5/21/2012 7:28:08 PM       &lt;br /&gt;IsNew&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : False       &lt;br /&gt;HasChanges&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : False       &lt;br /&gt;Id&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 28409a53-d0c0-c163-2f4c-3d16b76de26c       &lt;br /&gt;ManagementGroup&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : marcin-mg       &lt;br /&gt;ManagementGroupId&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 8f2d17ec-fe46-dded-0534-cdc8ad551e67&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;Name&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 314f1262-063a-4435-a479-d12b0387499b      &lt;br /&gt;Path&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; :       &lt;br /&gt;DisplayName&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Chicago, IL       &lt;br /&gt;FullName&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : System.GeoLocation:314f1262-063a-4435-a479-d12b0387499b       &lt;br /&gt;ManagementPackClassIds&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : {a7f774ed-534c-08af-2fbf-54cbe1745388}       &lt;br /&gt;LeastDerivedNonAbstractManagementPackClassId : a7f774ed-534c-08af-2fbf-54cbe1745388       &lt;br /&gt;TimeAdded&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 5/21/2012 7:28:58 PM       &lt;br /&gt;LastModifiedBy&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 7431e155-3d9e-4724-895e-c03ba951a352       &lt;br /&gt;Values&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : {314f1262-063a-4435-a479-d12b0387499b, 41.850033, -87.6500523, System.Co       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; nfigItem.ObjectStatusEnum.Active...}       &lt;br /&gt;LastModified&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 5/21/2012 7:28:58 PM       &lt;br /&gt;IsNew&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : False       &lt;br /&gt;HasChanges&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : False       &lt;br /&gt;Id&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 81e88875-f33e-c518-363d-5cdbf345c55c       &lt;br /&gt;ManagementGroup&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : marcin-mg       &lt;br /&gt;ManagementGroupId&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 8f2d17ec-fe46-dded-0534-cdc8ad551e67&lt;/font&gt;&lt;/p&gt;  &lt;h3&gt;Associate Locations&lt;/h3&gt;  &lt;p&gt;Now that we have locations in our management group, let’s associate one of them with a management server and another with an agent. Execute the following in the shell:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; $redmond = Get-SCOMLocation -DisplayName &amp;quot;Redmond, WA&amp;quot;      &lt;br /&gt;PS C:\&amp;gt; $chicago = Get-SCOMLocation -DisplayName &amp;quot;Chicago, IL&amp;quot;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Verify that $redmond variable is assigned by executing the following (your output should look similar):&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; $redmond&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;font face="Courier New"&gt;Name&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 6775251e-c851-4a6f-b6ab-90faeb87d9a1      &lt;br /&gt;Path&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; :       &lt;br /&gt;DisplayName&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Redmond, WA       &lt;br /&gt;FullName&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : System.GeoLocation:6775251e-c851-4a6f-b6ab-90faeb87d9a1       &lt;br /&gt;ManagementPackClassIds&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : {a7f774ed-534c-08af-2fbf-54cbe1745388}       &lt;br /&gt;LeastDerivedNonAbstractManagementPackClassId : a7f774ed-534c-08af-2fbf-54cbe1745388       &lt;br /&gt;TimeAdded&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 5/21/2012 7:28:07 PM       &lt;br /&gt;LastModifiedBy&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 7431e155-3d9e-4724-895e-c03ba951a352       &lt;br /&gt;Values&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : {6775251e-c851-4a6f-b6ab-90faeb87d9a1, 47.6739882, -122.121512, System.C       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; onfigItem.ObjectStatusEnum.Active...}       &lt;br /&gt;LastModified&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 5/21/2012 7:28:08 PM       &lt;br /&gt;IsNew&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : False       &lt;br /&gt;HasChanges&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : False       &lt;br /&gt;Id&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 28409a53-d0c0-c163-2f4c-3d16b76de26c       &lt;br /&gt;ManagementGroup&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : marcin-mg       &lt;br /&gt;ManagementGroupId&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 8f2d17ec-fe46-dded-0534-cdc8ad551e67&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Do the same for the $chicago variable.&lt;/p&gt;  &lt;p&gt;Now, use the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=187686" target="_blank"&gt;Get-SCOMAgent&lt;/a&gt; cmdlet to find an agent in your management group. Assign the agent to the $agent variable. Then, use the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=187685" target="_blank"&gt;Get-SCOMManagementServer&lt;/a&gt; cmdlet to find a management server in your management group and assign the server to the $server variable. (These steps are specific to your own environment. I can’t provide you instructions that will work there.)&lt;/p&gt;  &lt;p&gt;Verify that the $server and $agent variables are assigned.&lt;/p&gt;  &lt;p&gt;Execute the following in the shell:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; Set-SCOMLocation -Agent $agent -Location $chicago      &lt;br /&gt;PS C:\&amp;gt; Set-SCOMLocation -ManagementServer $server -Location $redmond&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;The locations should be associated correctly now. You can verify that by executing the following in the shell:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;PS C:\&amp;gt; Get-SCOMLocation -ManagementServer $server      &lt;br /&gt;PS C:\&amp;gt; Get-SCOMLocation -Agent $agent&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;The output of either command should be a location object.&lt;/p&gt;  &lt;h2&gt;&lt;/h2&gt;  &lt;h2&gt;Web Application Availability Monitoring&lt;/h2&gt;  &lt;p&gt;By now, we have created the locations and associated them with a management server and an agent. Now we need to configure Web Application Availability monitoring.&lt;/p&gt;  &lt;h3&gt;Configure the monitoring&lt;/h3&gt;  &lt;p&gt;Let’s open the &lt;strong&gt;Operations Console&lt;/strong&gt; and switch to the &lt;strong&gt;Authoring&lt;/strong&gt; pane. Expand the &lt;strong&gt;Management Pack Templates&lt;/strong&gt; tree and click on &lt;strong&gt;Web Application Availability Monitoring&lt;/strong&gt;. Right-click on it and click &lt;strong&gt;Add Monitoring Wizard…&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/2112.image_5F00_45127249.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/5758.image_5F00_thumb_5F00_52E4B844.png" width="612" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Make sure that &lt;strong&gt;Web Application Availability Monitoring&lt;/strong&gt; is selected and click &lt;strong&gt;Next&lt;/strong&gt;. On the next page, please enter a name for the template (I will use “My Monitoring”) and select an MP where the template will live.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/6320.image_5F00_36D3F959.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/2627.image_5F00_thumb_5F00_44A63F54.png" width="612" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;Next &lt;/strong&gt;when done. On the next page, please enter a name and a URL to monitor. I will use &lt;a href="http://localhost"&gt;http://localhost&lt;/a&gt;, but feel free to use any internal or external URL.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/0574.image_5F00_5278854F.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4760.image_5F00_thumb_5F00_1D6BF61F.png" width="612" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;Next&lt;/strong&gt; when done. On the next page, click the Add… button to add a location from where you want the URL to be monitored. In the dialog that appears ensure that the &lt;strong&gt;Search for &lt;/strong&gt;field is set to &lt;strong&gt;Internal location – Agent &lt;/strong&gt;and click &lt;strong&gt;Search&lt;/strong&gt;. Several locations will appear in the list:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/3782.image_5F00_443A0C5F.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4452.image_5F00_thumb_5F00_241EFFA2.png" width="506" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select two items that match the agent and server from the previous steps in this tutorial (specific to your environment). Once the two items are selected, click &lt;strong&gt;Add:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/5023.image_5F00_1CFFC32A.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4265.image_5F00_thumb_5F00_43CDD96A.png" width="506" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;OK&lt;/strong&gt; and then &lt;strong&gt;Next&lt;/strong&gt;. On the next page, click &lt;strong&gt;Run Test&lt;/strong&gt; to verify that the tests will work.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4278.image_5F00_51A01F65.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/3201.image_5F00_thumb_5F00_4A80E2ED.png" width="550" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;Close&lt;/strong&gt; and then &lt;strong&gt;Next&lt;/strong&gt;. Verify that everything is correct at the &lt;strong&gt;Summary&lt;/strong&gt; page and click &lt;strong&gt;Create&lt;/strong&gt;. You should see the new template in the &lt;strong&gt;Web Application Availability Monitoring&lt;/strong&gt; folder:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4762.image_5F00_4361A675.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/7418.image_5F00_thumb_5F00_6A2FBCB5.png" width="723" height="132" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;View the Map Dashboard&lt;/h2&gt;  &lt;p&gt;Now that our monitoring is configured, let’s take a look at the map dashboard. In the &lt;strong&gt;Operations Console&lt;/strong&gt; switch to the &lt;strong&gt;Monitoring&lt;/strong&gt; pane and navigate to &lt;strong&gt;Application Monitoring&lt;/strong&gt; \ &lt;strong&gt;Web Application Availability Monitoring&lt;/strong&gt; folder and expand it. Click the &lt;strong&gt;Web Application Status&lt;/strong&gt; dashboard in the folder. You may see something like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/5355.image_5F00_35232D85.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/2211.image_5F00_thumb_5F00_150820C8.png" width="225" height="154" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It may take some time for the monitoring to become active. Please wait until the dashboard looks like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4375.image_5F00_1F2AB219.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/8475.image_5F00_thumb_5F00_2CFCF814.png" width="164" height="133" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select &lt;strong&gt;My Monitoring&lt;/strong&gt; and click the &lt;strong&gt;Summary Dashboard – Map&lt;/strong&gt; link in the &lt;strong&gt;Tasks&lt;/strong&gt; pane. This will open a new window that should be similar to this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4774.image_5F00_310745E6.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/5344.image_5F00_thumb_5F00_6CC6DE99.png" width="644" height="391" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This dashboard is showing the locations from which Web Availability Monitoring tests are running from. If you recall from previous steps, we configured the tests to run from an agent and server that had geographic locations associated with them. This information is used to populate this dashboard.&lt;/p&gt;  &lt;p&gt;If you zoom in a bit, you’ll see that the green checkmarks are located by Redmond, WA and Chicago, IL:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/6825.image_5F00_37BA4F69.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4762.image_5F00_thumb_5F00_179F42AC.png" width="728" height="517" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you select one or more locations in the map (use Ctrl select to select multiple or deselect items), the &lt;strong&gt;Test Status&lt;/strong&gt; portion of the dashboard will light up. Select the Chicago location:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/2627.image_5F00_257188A7.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/1122.image_5F00_thumb_5F00_57692931.png" width="688" height="101" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select the item in the &lt;strong&gt;Test Status&lt;/strong&gt; table and click the &lt;strong&gt;Detailed Dashboard – List &lt;/strong&gt;link in the &lt;strong&gt;Tasks&lt;/strong&gt; pane. This will bring up a dashboard that displays performance data collected from Web Application Availability tests:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/2703.image_5F00_4C3F9EE7.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/6835.image_5F00_thumb_5F00_4520626F.png" width="644" height="391" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select one or more locations and put a check mark by at least one of the items under &lt;strong&gt;Test Status&lt;/strong&gt;. You should see something like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/7536.image_5F00_4E5E37F3.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-75-67-metablogapi/4087.image_5F00_thumb_5F00_6E0D11BB.png" width="644" height="391" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It may take some time for the data to appear in the dashboard. &lt;/p&gt;  &lt;p&gt;Congratulations! You now know how to associate locations with agents and/or servers and how to display that information using the Summary Map Dashboard.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3499135" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="test" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/test/" /><category term="dashboard" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/dashboard/" /><category term="web" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/web/" /><category term="availability" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/availability/" /><category term="cmdlet" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/cmdlet/" /><category term="location" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/location/" /><category term="powershell" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/powershell/" /><category term="map" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/map/" /></entry><entry><title>Setting up a comparer application in MPBPA v2</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/11/14/setting-up-a-comparer-application-in-mpbpa-v2.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/11/14/setting-up-a-comparer-application-in-mpbpa-v2.aspx</id><published>2009-11-15T00:24:29Z</published><updated>2009-11-15T00:24:29Z</updated><content type="html">&lt;h1&gt;&lt;/h1&gt;  &lt;h2&gt;Introduction&lt;/h2&gt;  &lt;p&gt;In my &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx"&gt;previous post&lt;/a&gt;, I discussed how you can use MPBPA v2 to automatically fix common issues in MPs. In order to preview the changes that MPBPA v2 makes to MPs when fixing issues, you need to have a comparer application configured in MPBPA v2. The &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx"&gt;previous post&lt;/a&gt; assumes that WinDiff was already configured in your environment. Today, we will discuss how to configure other applications that can preview MP changes.&lt;/p&gt;  &lt;p&gt;In order to configure the comparer application, click &lt;strong&gt;Configure&lt;/strong&gt; that is located in the top left corner of the &lt;strong&gt;MPBPA v2&lt;/strong&gt; window. (The &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx"&gt;previous post&lt;/a&gt; explains how to get that window to open.)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb.png" width="440" height="207" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Clicking &lt;strong&gt;Configure &lt;/strong&gt;will open the following window (assuming you left the default configuration intact):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_1.png" width="644" height="473" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Open the &lt;strong&gt;Preferences&lt;/strong&gt; tab by clicking on it:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_8.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_3.png" width="644" height="473" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here you can configure your comparer application by either clicking &lt;strong&gt;Browse&lt;/strong&gt; and selecting it or by entering a full path to its executable.&lt;/p&gt;  &lt;p&gt;MPBPA v2 can run any application that you configure. For the preview functionality to work correctly, your application must support the following command-line argument convention: &lt;em&gt;&amp;lt;Application&amp;gt; &amp;lt;before&amp;gt; &amp;lt;after&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;When MPBPA v2 runs the comparer applications, the following substitutions are made:&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="2"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top"&gt;&lt;em&gt;&amp;lt;Application&amp;gt;&lt;/em&gt;&lt;/td&gt;        &lt;td valign="top"&gt;This is the application’s executable that you configure using the above dialog.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top"&gt;&amp;lt;before&amp;gt;&lt;/td&gt;        &lt;td valign="top"&gt;MPBPA v2 will put the absolute path to the xml file containing the management pack &lt;em&gt;before&lt;/em&gt; the proposed change is made.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top"&gt;&amp;lt;after&amp;gt;&lt;/td&gt;        &lt;td valign="top"&gt;MPBPA v2 will put the absolute path to the xml file containing the management pack &lt;em&gt;after&lt;/em&gt; the change is made.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;Mp Diff&lt;/h2&gt;  &lt;p&gt;The easiest comparer application to set up with MPBPA v2 is Mp Diff. Mp Diff is a management pack comparer tool that calculates the net changes between two management packs and displays a report using the default system browser. Mp Diff is installed with the rest of &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0"&gt;System Center Operations Manager 2007 R2 Authoring Resource Kit&lt;/a&gt;. It is accessible from &lt;strong&gt;Start \ All Programs \ System Center Operations Manager 2007 R2 \ Authoring Tools \ Mp Diff&lt;/strong&gt; (this path may vary if you use an older version of Windows).&lt;/p&gt;  &lt;p&gt;To use Mp Diff with MPBPA v2, simply point MPBPA v2 to the location of MpDiff.exe. It will most likely be installed in \System Center MP Authoring Console 2007\MpDiff\MpDiff.exe under your Program Files folder (most often C:\Program Files\ or C:\Program Files (x86)\).&lt;/p&gt;  &lt;p&gt;Once it’s configured you should see something similar to this in the &lt;strong&gt;Configure&lt;/strong&gt; window:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_12.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_5.png" width="571" height="73" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here’s a screenshot of Mp Diff being used by MPBPA v2 to fix the MP from the &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx"&gt;previous post&lt;/a&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_14.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_6.png" width="644" height="360" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h2&gt;WinDiff&lt;/h2&gt;  &lt;p&gt;WinDiff is a file comparer utility that has been around for ages. To set it up you will need to download it first. Then simply point MPBPA v2 to the location of WinDiff.exe and off you go:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_16.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_7.png" width="236" height="67" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You can see WinDiff in action with MPBPA v2 in the &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx"&gt;previous post&lt;/a&gt;:&lt;/p&gt;  &lt;h2&gt;Batch File&lt;/h2&gt;  &lt;p&gt;What if the tool you want to use for previewing with MPBPA v2 does not accept command-line arguments the MPBPA v2 way? The solution is simple. Write a batch file that converts the MPBPA v2 calling convention to your tool’s calling convention. Here’s an example of such a batch file:&lt;/p&gt;  &lt;div style="border-bottom: rgb(0,0,0) 1px solid; border-left: rgb(0,0,0) 1px solid; overflow: auto; border-top: rgb(0,0,0) 1px solid; border-right: rgb(0,0,0) 1px solid"&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;style type="text/css"&gt;


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}

.csharpcode pre { margin: 0em; }

.csharpcode .rem { color: #008000; }

.csharpcode .kwrd { color: #0000ff; }

.csharpcode .str { color: #006080; }

.csharpcode .op { color: #0000c0; }

.csharpcode .preproc { color: #cc6633; }

.csharpcode .asp { background-color: #ffff00; }

.csharpcode .html { color: #800000; }

.csharpcode .attr { color: #ff0000; }

.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}

.csharpcode .lnum { color: #606060; }&lt;/style&gt;    &lt;div class="csharpcode"&gt;     &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;@echo off&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;echo Before MP: %1&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;echo After MP: %2&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;start iexplore %1&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;start notepad %2&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;pause&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;The above script displays the two file names used by MPBPA v2 to save the temporary xml files, starts opens the file before changes with Internet Explorer and opens the file after the changes with Notepad. The script has no real purpose, but it illustrates the flexibility of what you can do. What your script does is really up to you, but I expect that you would simply call some command with %1 and %2 to indicate the before changes and after changes MP files, respectively. Keep in mind that MPBPA v2 does not monitor %1 and %2 for any changes, so if you edit those files your self, the changes will be ignored.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_22.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_9.png" width="232" height="74" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Here are the screenshots of the script in action with the MP from the &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx"&gt;previous post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_18.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_4.png" width="644" height="239" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_10.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_2.png" width="558" height="422" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_20.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/SettingupacomparerapplicationinMPBPAv2_DB0B/image_thumb_8.png" width="623" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;This posting is provided &amp;quot;AS IS&amp;quot; with no warranties. 
  &lt;br /&gt;Use of included tools and reports are subject to the terms specified at 

  &lt;br /&gt;&lt;a href="http://www.microsoft.com/info/cpyright.htm"&gt;http://www.microsoft.com/info/cpyright.htm&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3293911" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="MPBPA" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/MPBPA/" /><category term="MpDiff" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/MpDiff/" /><category term="ResKit" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/ResKit/" /><category term="authoring" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/authoring/" /><category term="fix" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/fix/" /></entry><entry><title>Fixing common MP issues using MPBPA v2</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx" /><link rel="enclosure" type="text/xml" length="3476" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-29-35-63/MarcinAtWork.BestPracticeViolations.One.xml" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/11/13/fixing-common-mp-issues-using-mpbpa-v2.aspx</id><published>2009-11-13T08:20:00Z</published><updated>2009-11-13T08:20:00Z</updated><content type="html">&lt;p&gt;Today, we will take a look at MPBPA v2’s ability to automatically fix problems it finds in management packs. To illustrate this behavior, I attached a small sample MP that has a few best practice violations that can be fixed by MPBPA v2. (MPBPA v2 is available from the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0"&gt;System Center Operations Manager 2007 R2 Authoring Resource Kit&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;After downloading the sample MP, open it in the Authoring Console. Then, click &lt;b&gt;Tools \ Analyze with MPBPA…&lt;/b&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_2.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_2.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb.png" border="0" height="316" width="509"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This will bring up a window similar to this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_18.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_18.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_8.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_8.png" border="0" height="347" width="644"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;If you see something different, make sure that you are checking for all best practice violations. The easiest way to do that is by clicking &lt;b&gt;Configure &lt;/b&gt;and then &lt;b&gt;Restore default configuration&lt;/b&gt; in the window that opens.&lt;/p&gt;  &lt;p&gt;Looking at the window above, check all the available check boxes by either clicking &lt;b&gt;Check All&lt;/b&gt; or manually clicking each violation displayed. This will enable the &lt;b&gt;Fix Checked Violation(s)&lt;/b&gt; button:&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_20.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_20.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_9.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_9.png" border="0" height="347" width="644"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click &lt;b&gt;Fix Checked Violation(s)&lt;/b&gt;. The following window will appear:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_8.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_8.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_3.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_3.png" border="0" height="442" width="604"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;As you can see, the &lt;b&gt;Description&lt;/b&gt; field has a red exclamation point near it. This means that the data entered in the field is invalid. Hover the cursor anywhere over the field or the exclamation point to find out why the entered data is invalid:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_10.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_10.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_4.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_4.png" border="0" height="72" width="575"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;Entering some description will enable &lt;b&gt;Preview&lt;/b&gt; and &lt;b&gt;Fix&lt;/b&gt; buttons as well as the &lt;b&gt;Fix all similar violations using same inputs&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_12.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_12.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_5.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_5.png" border="0" height="205" width="604"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Clicking &lt;b&gt;Preview &lt;/b&gt;will display a preview of the fix about to be made to the management pack using the preview tool that you have configured. If you have a preview tool configured, click &lt;b&gt;Preview&lt;/b&gt;. If you had WinDiff configured, something similar to this would appear:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_16.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_16.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_7.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_7.png" border="0" height="287" width="644"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;This is the only change that fixing will make to the MP. A missing MP description requires that we add the missing tag and an appropriate value. Let’s click &lt;b&gt;Fix&lt;/b&gt; to make the change. Since the other two checked violations do not require any user input, MPBPA will just fix them. The result will be similar to this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_22.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_22.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_10.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_10.png" border="0" height="347" width="644"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;At this point, you can click &lt;b&gt;Rescan&lt;/b&gt; to confirm that fixed violations are really gone, but you don’t have to. Simply close the &lt;b&gt;MPBPA v2&lt;/b&gt; window and save the MP in the Authoring Console.&lt;/p&gt;  &lt;p&gt;MPBPA v2 is capable of automatically fixing many common issues with MPs and identifying many more. If you’d like some more information about a particular issue, simply highlight it and click &lt;b&gt;Link to help:&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_24.png" mce_href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_24.png"&gt;&lt;img src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_11.png" style="border: 0px none ; display: inline;" title="image" alt="image" mce_src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/QuicklyaddingmissingdisplaystringstoanMP_E6B2/image_thumb_11.png" border="0" height="123" width="136"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;When you do that, a knowledge article will be displayed using your default browser with information about the selected issue. Good luck and happy fixing!&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;This posting is provided "AS IS" with no warranties.    &lt;br&gt;Use of included tools and reports are subject to the terms specified at     &lt;br&gt;&lt;a href="http://www.microsoft.com/info/cpyright.htm" mce_href="http://www.microsoft.com/info/cpyright.htm"&gt;http://www.microsoft.com/info/cpyright.htm&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3293563" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="MPBPA" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/MPBPA/" /><category term="ResKit" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/ResKit/" /><category term="analyzer" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/analyzer/" /><category term="authoring" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/authoring/" /><category term="fix" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/fix/" /></entry><entry><title>All References Tips and Tricks: Time-savers</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/30/all-references-tips-and-tricks-time-savers.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/30/all-references-tips-and-tricks-time-savers.aspx</id><published>2009-10-31T00:14:01Z</published><updated>2009-10-31T00:14:01Z</updated><content type="html">&lt;p&gt;There are certain things that you can do with the All References add-in that are not immediately obvious while using it. Here are some of them:&lt;/p&gt;  &lt;h2&gt;Non-Modal Windows&lt;/h2&gt;  &lt;p&gt;The search result windows displayed by the add-in are non-modal. As a result, you can have as many windows open as you want. If you search for references to an element that already has a corresponding search result window open, the contents of the window will be updated.&lt;/p&gt;  &lt;h2&gt;References to References&lt;/h2&gt;  &lt;p&gt;Sometimes you may need to follow a chain of references wherever it may take you. If the reference you found is in the same MP that is currently open in the Authoring Console, it is rather easy. You can simply find the element in the MP using the Authoring Console, right-click on it, and click &lt;strong&gt;Show References&lt;/strong&gt;. But what do you do if the reference found is in another MP? Normally, you would have to open that MP in the same or another instance of the Authoring Console, find the element, right-click it, and click &lt;strong&gt;Show References&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;There is an easier way, however. Simply double-click an item in the add-in’s result window and it will find references to it. (It doesn’t matter in which MP it is declared.)Alternatively, you can right-click the item and click &lt;strong&gt;Show References&lt;/strong&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesTipsandTricksTimesavers_EA9B/image_6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesTipsandTricksTimesavers_EA9B/image_thumb_2.png" width="485" height="403" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;&lt;/h3&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Of course, you can continue double-clicking to find references to references to references, and so on.&lt;/p&gt;  &lt;h3&gt;&lt;/h3&gt;  &lt;h2&gt;References to Multiple MP Elements&lt;/h2&gt;  &lt;p&gt;The All References Add-in lets you find references to multiple elements. Simply select multiple MP elements (either in the Authoring Console or in one of add-in’s windows), right-click on one of the selected elements, and click &lt;strong&gt;Show References&lt;/strong&gt;. For each selected element, the add-in will display a separate window with the results.&lt;/p&gt;  &lt;h2&gt;Copy Results to Excel&lt;/h2&gt;  &lt;p&gt;Selecting one or more MP elements in the add-in’s search results window and pressing Ctrl + C or clicking Copy in the context menu will copy the element name, management pack name, management pack version, and management pack key token to the clipboard in a tab-separated format without headers. You can easily paste that into your favorite spreadsheet application while maintaining some of the formatting.&lt;/p&gt;  &lt;h2&gt;Making Results Less Verbose&lt;/h2&gt;  &lt;p&gt;Once you’re familiar with the way the All References Add-in presents its results, you may find it a bit verbose. To help matters, you use the following two options:&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="2"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="250"&gt;Show Group Descriptions&lt;/td&gt;        &lt;td valign="top"&gt;This option switches between long and short descriptions for groups used to separate MP elements in the add-in’s result windows. It is also accessible by pressing &lt;strong&gt;F2&lt;/strong&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="250"&gt;Show Empty Groups&lt;/td&gt;        &lt;td valign="top"&gt;This option switches between showing and hiding empty MP element groups in the add-in’s result windows. It is also accessible by pressing &lt;strong&gt;F3&lt;/strong&gt;.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;Updating Reference Cache&lt;/h2&gt;  &lt;p&gt;Sometimes, you may find yourself changing the Authoring Console’s reference folders. You might add, remove, or update the MPs contained there or you might even add or remove the reference folders to/from the Authoring Console. If this happens, the All References Add-in must rebuild its cache in order to avoid inaccurate results.&lt;/p&gt;  &lt;p&gt;One way to force a cache update is to simply restart the Authoring Console.&lt;/p&gt;  &lt;p&gt;However, a quicker way is to right-click in any of the add-in’s result windows and click &lt;strong&gt;Update Reference Cache&lt;/strong&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesTipsandTricksTimesavers_EA9B/image_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesTipsandTricksTimesavers_EA9B/image_thumb.png" width="397" height="479" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This will display the following confirmation dialog:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesTipsandTricksTimesavers_EA9B/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesTipsandTricksTimesavers_EA9B/image_thumb_1.png" width="572" height="224" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;Yes&lt;/strong&gt; and run your search again. The new result will reflect changes that you made to the cache (if any).&lt;/p&gt;  &lt;h3&gt;&lt;/h3&gt;  &lt;h2&gt;Getting Help&lt;/h2&gt;  &lt;p&gt;Most of the tools that were included in the Authoring Resource Kit display a help file when you press F1. It’s quicker than clicking &lt;strong&gt;Start \ All Programs \ System Center Operations Manager 2007 R2 \ Authoring Tools \ Resource Kit Help&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This posting is provided &amp;quot;AS IS&amp;quot; with no warranties.    &lt;br /&gt;Use of included tools and reports are subject to the terms specified at     &lt;br /&gt;&lt;a href="http://www.microsoft.com/info/cpyright.htm"&gt;http://www.microsoft.com/info/cpyright.htm&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3290498" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="AllReferences" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/AllReferences/" /><category term="ResKit" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/ResKit/" /><category term="references" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/references/" /><category term="authoring" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/authoring/" /><category term="search" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/search/" /><category term="time" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/time/" /></entry><entry><title>All References Tips and Tricks: Improving Memory Utilization</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/30/all-references-tips-and-tricks-improving-memory-utilization.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/30/all-references-tips-and-tricks-improving-memory-utilization.aspx</id><published>2009-10-30T19:15:58Z</published><updated>2009-10-30T19:15:58Z</updated><content type="html">&lt;p&gt;The All References Add-in is described in some detail in the &lt;a href="http://blogs.technet.com/marcin_jastrzebski/archive/2009/10/30/finding-references-to-mp-elements-in-other-mps-using-the-all-references-add-in.aspx"&gt;previous post&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;If you often open MPs that are referred to by a lot of other MPs (in your reference folders), you may find that the All References Add-in consumes a lot of memory during its search. This only applies to often-used library MPs such as the ones that ship with System Center Operations Manager 2007 and any of the later versions. &lt;/p&gt;  &lt;p&gt;If you often find yourself in this situation, this article is for you. If you do not see any problems with memory utilization when using the All References Add-in, I would not recommend applying the changes described in the rest of this post.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;There exists a hidden setting that allows you to control how the add-in optimizes its search. It is called SearchOptimization and it has the following 2 allowed values:&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="2"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="100"&gt;Time&lt;/td&gt;        &lt;td valign="top"&gt;This is the default value for this setting. With this set, the add-in will perform the search as fast as possible at the cost of using more memory. The actual memory consumption is proportional to the number of MPs that refer to the currently open MP. With this setting, only the first search takes some time. Subsequent searches are instant. The majority of MPs do not have many MPs referring to them. As such, this setting will work perfectly without any significant memory consumption issues. &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="100"&gt;Memory&lt;/td&gt;        &lt;td valign="top"&gt;Setting SearchOptimization to Memory causes the add-in to perform the search more slowly. However, the memory consumption is fixed and does not grow with the number of MPs that refer to the currently open MP. The first and subsequent searches take exactly the same amount of time. It is appropriate to use this setting in situations when you have a large number of MPs in your reference folders and you often want to find references to MP elements declared in system libraries. (And only if your machine has very little RAM.) &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;In order to change the setting from the default, you need to find your &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0"&gt;Authoring Resource Kit&lt;/a&gt; installation directory. It should be either &lt;strong&gt;C:\Program Files\System Center MP Authoring Console 2007&lt;/strong&gt; or &lt;strong&gt;C:\Program Files (x86)\System Center MP Authoring Console 2007&lt;/strong&gt;. In that directory, there is a file called &lt;strong&gt;Microsoft.EnterpriseManagement.UI.MPAuthoring.exe.config&lt;/strong&gt;. (If Windows Explorer is hiding extensions of known file types, you will only see &lt;strong&gt;Microsoft.EnterpriseManagement.UI.MPAuthoring.exe&lt;/strong&gt; and file type &lt;strong&gt;XML Configuration File&lt;/strong&gt;.)&lt;/p&gt;  &lt;p&gt;Make a backup copy of the file just in case something goes wrong.&lt;/p&gt;  &lt;p&gt;Open that file with your favorite text or XML editor. If you are using Windows Vista or later, you will need to run the editor as Administrator.&lt;/p&gt;  &lt;p&gt;Find the following snippet in the opened file:&lt;/p&gt;  &lt;div style="border-bottom: rgb(0,0,0) 1px solid; border-left: rgb(0,0,0) 1px solid; overflow: auto; border-top: rgb(0,0,0) 1px solid; border-right: rgb(0,0,0) 1px solid"&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;style type="text/css"&gt;




.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}

.csharpcode pre { margin: 0em; }

.csharpcode .rem { color: #008000; }

.csharpcode .kwrd { color: #0000ff; }

.csharpcode .str { color: #006080; }

.csharpcode .op { color: #0000c0; }

.csharpcode .preproc { color: #cc6633; }

.csharpcode .asp { background-color: #ffff00; }

.csharpcode .html { color: #800000; }

.csharpcode .attr { color: #ff0000; }

.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}

.csharpcode .lnum { color: #606060; }&lt;/style&gt;    &lt;div class="csharpcode"&gt;     &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Addin&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Microsoft.EnterpriseManagement.AuthoringExtensibility.AllReferencesAddin.AllReferencesAddin,Microsoft.EnterpriseManagement.AuthoringExtensibility.AllReferencesAddin&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Settings&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;CrossMPSearch&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Enabled&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;CachePopulationStrategy&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Incremental&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;ResultsFormStyle&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;ListView&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;SearchOptimization&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Time&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  20:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Settings&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  21:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;DefaultResourceFileName&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Microsoft.EnterpriseManagement.AuthoringExtensibility.AllReferencesAddin.Resources&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;DefaultResourceFileName&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  22:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Actions&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  23:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Action&lt;/span&gt; &lt;span class="attr"&gt;TextId&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;ShowReferences&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;OnAction&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;ShowReferences&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;IconId&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;AllReferencesIcon_16&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  24:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^ClassType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  25:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^RelationshipType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  26:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^Discovery$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  27:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^UnitMonitor$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  28:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^UnitMonitorType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  29:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^DependencyMonitor$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  30:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^AggregateMonitor$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  31:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^Rule$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  32:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^SecureReference$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  33:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^DataSourceModuleType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  34:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^ConditionDetectionModuleType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  35:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^ProbeActionModuleType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  36:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TargetType&lt;/span&gt; &lt;span class="attr"&gt;Type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;^WriteActionModuleType$&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  37:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Action&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  38:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Actions&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  39:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Addin&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;The following part of the above file controls the value of the SearchOptimization setting: &lt;/p&gt;

&lt;div style="border-bottom: rgb(0,0,0) 1px solid; border-left: rgb(0,0,0) 1px solid; overflow: auto; border-top: rgb(0,0,0) 1px solid; border-right: rgb(0,0,0) 1px solid"&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;style type="text/css"&gt;



.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}

.csharpcode pre { margin: 0em; }

.csharpcode .rem { color: #008000; }

.csharpcode .kwrd { color: #0000ff; }

.csharpcode .str { color: #006080; }

.csharpcode .op { color: #0000c0; }

.csharpcode .preproc { color: #cc6633; }

.csharpcode .asp { background-color: #ffff00; }

.csharpcode .html { color: #800000; }

.csharpcode .attr { color: #ff0000; }

.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}

.csharpcode .lnum { color: #606060; }&lt;/style&gt;

  &lt;div class="csharpcode"&gt;
    &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;SearchOptimization&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Time&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Replace &lt;strong&gt;Time&lt;/strong&gt; with &lt;strong&gt;Memory&lt;/strong&gt;:&lt;/p&gt;

&lt;div style="border-bottom: rgb(0,0,0) 1px solid; border-left: rgb(0,0,0) 1px solid; overflow: auto; border-top: rgb(0,0,0) 1px solid; border-right: rgb(0,0,0) 1px solid"&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;style type="text/css"&gt;



.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}

.csharpcode pre { margin: 0em; }

.csharpcode .rem { color: #008000; }

.csharpcode .kwrd { color: #0000ff; }

.csharpcode .str { color: #006080; }

.csharpcode .op { color: #0000c0; }

.csharpcode .preproc { color: #cc6633; }

.csharpcode .asp { background-color: #ffff00; }

.csharpcode .html { color: #800000; }

.csharpcode .attr { color: #ff0000; }

.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}

.csharpcode .lnum { color: #606060; }&lt;/style&gt;

  &lt;div class="csharpcode"&gt;
    &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;SearchOptimization&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Memory&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Setting&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Save the file and run the Authoring Console. If the Authoring Console should not display any error messages if the file was modified correctly. (Make sure you have a backup or you will have to uninstall and reinstall the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0"&gt;Authoring Resource Kit&lt;/a&gt; to restore the file.)&lt;/p&gt;

&lt;p&gt;If you want to go back to the previous setting, just change Memory back to Time and restart the Authoring Console.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;This posting is provided &amp;quot;AS IS&amp;quot; with no warranties. 
  &lt;br /&gt;Use of included tools and reports are subject to the terms specified at 

  &lt;br /&gt;&lt;a href="http://www.microsoft.com/info/cpyright.htm"&gt;http://www.microsoft.com/info/cpyright.htm&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3290463" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="AllReferences" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/AllReferences/" /><category term="ResKit" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/ResKit/" /><category term="references" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/references/" /><category term="authoring" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/authoring/" /><category term="utilization" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/utilization/" /><category term="search" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/search/" /><category term="memory" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/memory/" /><category term="time" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/time/" /><category term="consumption" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/consumption/" /></entry><entry><title>Finding references to MP elements in other MPs using the All References Add-in</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/30/finding-references-to-mp-elements-in-other-mps-using-the-all-references-add-in.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/30/finding-references-to-mp-elements-in-other-mps-using-the-all-references-add-in.aspx</id><published>2009-10-30T17:53:00Z</published><updated>2009-10-30T17:53:00Z</updated><content type="html">&lt;p&gt;The All References Add-in is one of the tools included with the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0"&gt;System Center Operations Manager 2007 R2 Authoring Resource Kit&lt;/a&gt; that shipped recently. It allows you to find references to the selected MP element in the currently opened MP in the Authoring Console as well as any MP that refers to the currently-open MP. (Provided that the currently open MP and the MPs that refer to it are included in the Authoring Console’s reference folders.)&lt;/p&gt;  &lt;p&gt;Let’s download an MP to see how this works. Any MP will do, but for the purposes of this blog post, I will use the latest version of the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=3529D233-5E3E-4B51-8F66-5D6F27005EC3"&gt;BaseOS MP&lt;/a&gt;. Download it and install it. (Any location on your system will work. I used the default suggested by the installer: &lt;strong&gt;C:\Program Files (x86)\System Center Management Packs\Windows Server Base OS System Center Operations Manager 2007 MP&lt;/strong&gt;.)&lt;/p&gt;  &lt;p&gt;Open the Authoring Console and click &lt;strong&gt;Tools \ Options…&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Partial screenshot of the Authoring Console with Tools menu open and Options... highlighted." border="0" alt="Partial screenshot of the Authoring Console with Tools menu open and Options... highlighted." src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_1.png" width="522" height="305" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The Options dialog will appear. Click the &lt;strong&gt;References&lt;/strong&gt; tab:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_2.png" width="514" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Your reference paths may not necessarily be empty. Click &lt;strong&gt;Add…&lt;/strong&gt; and select the installation directory of the BaseOS MP:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_8.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_3.png" width="492" height="530" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;OK&lt;/strong&gt;. Your Reference Paths should now contain the BaseOS MP installation directory. Highlight it and keep clicking the Up arrow button until the directory is at the top of the list:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_10.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_4.png" width="514" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click &lt;strong&gt;OK&lt;/strong&gt; and restart the Authoring Console. When the console starts up again, open the Microsoft.Windows.Server.Library.mp from the BaseOS MP installation directory using the &lt;strong&gt;File \ Open…&lt;/strong&gt; option of the Authoring Console. Once the MP opens, open the &lt;strong&gt;Service Model&lt;/strong&gt; pane and click &lt;strong&gt;Classes&lt;/strong&gt;. The following list of classes should appear:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_14.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_6.png" width="559" height="354" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Select &lt;strong&gt;Microsoft.Windows.Server.NetworkAdapter&lt;/strong&gt;, right-click it, and click &lt;strong&gt;Show References&lt;/strong&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_16.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_7.png" width="533" height="200" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After the add-in completes the search, you should see the following window:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_12.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_5.png" width="868" height="515" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;To hide the empty groups in the window, either press &lt;strong&gt;F3&lt;/strong&gt; or right-click and uncheck &lt;strong&gt;Show Empty Groups &lt;/strong&gt;like so:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_18.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_8.png" width="709" height="376" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The result will be:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_22.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_10.png" width="949" height="383" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This means that the following classes derive from class Microsoft.Windows.Server.NetworkAdapter declared in MP Microsoft.Windows.Server.Library:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Class Microsoft.Windows.Server.2000.NetworkAdapter (declared in MP Microsoft.Windows.Server.2000) &lt;/li&gt;    &lt;li&gt;Class Microsoft.Windows.Server.2003.NetworkAdapter (declared in MP Microsoft.Windows.Server.2003) &lt;/li&gt;    &lt;li&gt;Class Microsoft.Windows.Server.2008.NetworkAdapter (declared in MP Microsoft.Windows.Server.2008.Discovery) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;In addition, the add-in found 6 views that target class Microsoft.Windows.Server.NetworkAdapter in MP Microsoft.Windows.Server.Library.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;With the All References add-in, you can find other references to many different MP elements. For a full list, either press F1 in the above window or click &lt;strong&gt;Start \ All Programs \ System Center Operations Manager 2007 R2 \ Authoring Tools \ Resource Kit Help&lt;/strong&gt;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_24.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/marcin_jastrzebski/WindowsLiveWriter/AllReferencesAddin_8A93/image_thumb_11.png" width="726" height="429" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I hope this was an interesting introduction to the All References Add-in. As always, all feedback, comments, and questions are appreciated.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This posting is provided &amp;quot;AS IS&amp;quot; with no warranties.   &lt;br /&gt;Use of included tools and reports are subject to the terms specified at    &lt;br /&gt;&lt;a href="http://www.microsoft.com/info/cpyright.htm"&gt;http://www.microsoft.com/info/cpyright.htm&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3290447" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="AllReferences" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/AllReferences/" /><category term="ResKit" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/ResKit/" /><category term="references" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/references/" /><category term="authoring" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/authoring/" /></entry><entry><title>System Center Operations Manager 2007 R2 Authoring Resource Kit has been released</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/27/system-center-operations-manager-2007-r2-authoring-resource-kit-has-been-released.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/10/27/system-center-operations-manager-2007-r2-authoring-resource-kit-has-been-released.aspx</id><published>2009-10-27T17:19:00Z</published><updated>2009-10-27T17:19:00Z</updated><content type="html">&lt;p&gt;This post may be a little late since the resource kit was released last week, but better late than never.&lt;/p&gt;
&lt;p&gt;The resource kit contains the SCOM 2007 R2 Authoring Console and several tool that enhance its functionality to help with authoring, development, maintenance, and reviewing of management packs. You can download the resource kit from the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9104af8b-ff87-45a1-81cd-b73e6f6b51f0&amp;amp;displaylang=en"&gt;Microsoft Download Center&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The following tools have been included in the resource kit:&lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Management Pack Best Practices Analyzer (MPBPA) -&lt;/b&gt; scans management packs for best practice violations and allows you to automatically fix a number of issues. &lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Management Pack Spell Checker (MP Spell Checker)&lt;/b&gt; - helps you eliminate errors in display strings.&lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Management Pack Visio Generator (MP Visio Generator)&lt;/b&gt; - generates a class inheritance and class relationship diagram using Microsoft Office Visio.&lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Management Pack Diff (MP Diff) -&lt;/b&gt; compares two management packs and presents differences between them.&lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Management Pack Cookdown Analyzer (MP Cookdown Analyzer) -&lt;/b&gt; identifies workflows which may break cook-down, and provides suggestions on how to fix performance issues.&lt;/p&gt;
&lt;p&gt;· &lt;b&gt;All References Add-in -&lt;/b&gt; helps find all references to the selected MP element. &lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Workflow Analyzer&lt;/b&gt; - provides the ability to statically analyze all types of workflows.&lt;/p&gt;
&lt;p&gt;· &lt;b&gt;Workflow Simulator&lt;/b&gt; - provides the ability to test certain types of workflows such as discoveries, rules, and monitors without a Management Server and Management Group.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3289559" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="MPBPA" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/MPBPA/" /><category term="workflow" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/workflow/" /><category term="MpDiff" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/MpDiff/" /><category term="spell" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/spell/" /><category term="simulator" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/simulator/" /><category term="visio" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/visio/" /><category term="cookdown" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/cookdown/" /><category term="AllReferences" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/AllReferences/" /><category term="ResKit" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/ResKit/" /><category term="analyzer" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/analyzer/" /></entry><entry><title>Hard-coded Management Pack Discoveries</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/05/31/hard-coded-management-pack-discoveries.aspx" /><link rel="enclosure" type="text/xml" length="12210" href="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-03-24-85-89/MarcinAtWork.HardcodedDiscovery.One.xml" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/05/31/hard-coded-management-pack-discoveries.aspx</id><published>2009-06-01T05:46:00Z</published><updated>2009-06-01T05:46:00Z</updated><content type="html">&lt;P&gt;Typically when developing management packs, the following is done more or less in order:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Object model (classes and relationships)&lt;/LI&gt;
&lt;LI&gt;Discoveries (to discover classes and relationships)&lt;/LI&gt;
&lt;LI&gt;Monitoring workflows (to target the discovered classes and relationships)&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;What if the product you will manage with your MP has some experimental or poorly documented API that you would like to use for monitoring. Let's say you want to experiment with it a bit to determine whether or not it is viable for your purposes. In addition, assume that the discovery for that particular application is somewhat tricky and will take time to fully implement. (If the aforementioned API turns out to be a disappointment, all the discovery work will be wasted.)&lt;/P&gt;
&lt;P&gt;So why not just hard code the discovery for testing purposes?&lt;/P&gt;
&lt;P mce_keep="true"&gt;To accomplish this, do the following:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;Create a composite data source module type consisting of a System.Discovery.Scheduler data source and a System.Discovery.ClassSnapshotDataMapper condition detection module (both from System.Library MP)&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;Create a discovery that uses your newly created data source.&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P mce_keep="true"&gt;The following is an example of a data source module type from step 1:&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: #000000 1px solid; BORDER-LEFT: #000000 1px solid; OVERFLOW: auto; BORDER-TOP: #000000 1px solid; BORDER-RIGHT: #000000 1px solid"&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;
&lt;STYLE type=text/css&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: Consolas, "Courier New", Courier, Monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}

.csharpcode pre { margin: 0em; }

.csharpcode .rem { color: #008000; }

.csharpcode .kwrd { color: #0000ff; }

.csharpcode .str { color: #006080; }

.csharpcode .op { color: #0000c0; }

.csharpcode .preproc { color: #cc6633; }

.csharpcode .asp { background-color: #ffff00; }

.csharpcode .html { color: #800000; }

.csharpcode .attr { color: #ff0000; }

.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}

.csharpcode .lnum { color: #606060; }
&lt;/STYLE&gt;

&lt;DIV class=csharpcode&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   1:  &lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;DataSourceModuleType&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="MarcinAtWork.HardcodedDiscovery.One.DemoApplicationDiscovery.DS"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Accessibility&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="Internal"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Batching&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="false"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   2:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Configuration&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   3:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;xsd:element&lt;/SPAN&gt; &lt;SPAN class=attr&gt;minOccurs&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="1"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="IntervalSeconds"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;type&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="xsd:integer"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   4:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;xsd:element&lt;/SPAN&gt; &lt;SPAN class=attr&gt;minOccurs&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="1"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SyncTime"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;type&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="xsd:string"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   5:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;xsd:element&lt;/SPAN&gt; &lt;SPAN class=attr&gt;minOccurs&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="1"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SomeInteger"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;type&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="xsd:integer"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   6:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;xsd:element&lt;/SPAN&gt; &lt;SPAN class=attr&gt;minOccurs&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="1"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SomeString"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;type&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="xsd:string"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   7:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Configuration&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   8:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;OverrideableParameters&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   9:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;OverrideableParameter&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="IntervalSeconds"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Selector&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="$Config/IntervalSeconds$"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ParameterType&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="int"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  10:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;OverrideableParameter&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SyncTime"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Selector&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="$Config/SyncTime$"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ParameterType&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="string"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  11:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;OverrideableParameter&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SomeString"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Selector&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="$Config/SomeString$"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ParameterType&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="string"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  12:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;OverrideableParameters&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  13:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;ModuleImplementation&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Isolation&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="Any"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  14:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Composite&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  15:  &lt;/SPAN&gt;      &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;MemberModules&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  16:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;DataSource&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="DS"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="System!System.Discovery.Scheduler"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  17:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Scheduler&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  18:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;SimpleReccuringSchedule&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  19:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Interval&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Unit&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="Seconds"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$Config/IntervalSeconds$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Interval&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  20:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;SyncTime&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$Config/SyncTime$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;SyncTime&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  21:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;SimpleReccuringSchedule&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  22:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;ExcludeDates&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  23:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Scheduler&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  24:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;DataSource&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  25:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;ConditionDetection&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="CD"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="System!System.Discovery.ClassSnapshotDataMapper"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  26:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;ClassId&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$MPElement[Name="MarcinAtWork.HardcodedDiscovery.One.DemoApplication"]$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;ClassId&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  27:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;InstanceSettings&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  28:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Settings&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  29:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Setting&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  30:  &lt;/SPAN&gt;                &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  31:  &lt;/SPAN&gt;                &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Value&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Value&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  32:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Setting&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  33:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Setting&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  34:  &lt;/SPAN&gt;                &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$MPElement[Name="MarcinAtWork.HardcodedDiscovery.One.DemoApplication"]/SomeInteger$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  35:  &lt;/SPAN&gt;                &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Value&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$Config/SomeInteger$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Value&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  36:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Setting&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  37:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Setting&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  38:  &lt;/SPAN&gt;                &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$MPElement[Name="MarcinAtWork.HardcodedDiscovery.One.DemoApplication"]/SomeString$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Name&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  39:  &lt;/SPAN&gt;                &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Value&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;$Config/SomeString$&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Value&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  40:  &lt;/SPAN&gt;              &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Setting&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  41:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Settings&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  42:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;InstanceSettings&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  43:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;ConditionDetection&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  44:  &lt;/SPAN&gt;      &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;MemberModules&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  45:  &lt;/SPAN&gt;      &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Composition&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  46:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Node&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="CD"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  47:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Node&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="DS"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  48:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Node&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  49:  &lt;/SPAN&gt;      &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Composition&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  50:  &lt;/SPAN&gt;    &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Composite&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  51:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;ModuleImplementation&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  52:  &lt;/SPAN&gt;  &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;OutputType&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;System!System.Discovery.Data&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;OutputType&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  53:  &lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;DataSourceModuleType&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;The following is an example of the discovery from step 2:&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: #000000 1px solid; BORDER-LEFT: #000000 1px solid; OVERFLOW: auto; BORDER-TOP: #000000 1px solid; BORDER-RIGHT: #000000 1px solid"&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;
&lt;STYLE type=text/css&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: Consolas, "Courier New", Courier, Monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}

.csharpcode pre { margin: 0em; }

.csharpcode .rem { color: #008000; }

.csharpcode .kwrd { color: #0000ff; }

.csharpcode .str { color: #006080; }

.csharpcode .op { color: #0000c0; }

.csharpcode .preproc { color: #cc6633; }

.csharpcode .asp { background-color: #ffff00; }

.csharpcode .html { color: #800000; }

.csharpcode .attr { color: #ff0000; }

.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}

.csharpcode .lnum { color: #606060; }
&lt;/STYLE&gt;

&lt;DIV class=csharpcode&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   1:  &lt;/SPAN&gt;      &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Discovery&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="MarcinAtWork.HardcodedDiscovery.One.DemoApplicationDiscovery"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Enabled&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="true"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Target&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="Windows!Microsoft.Windows.Computer"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ConfirmDelivery&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="true"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Remotable&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="true"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;Priority&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="Normal"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   2:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Category&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;Discovery&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Category&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   3:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;DiscoveryTypes&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   4:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;DiscoveryClass&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="MarcinAtWork.HardcodedDiscovery.One.DemoApplication"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   5:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Property&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="MarcinAtWork.HardcodedDiscovery.One.DemoApplication"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;PropertyID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SomeInteger"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   6:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Property&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="MarcinAtWork.HardcodedDiscovery.One.DemoApplication"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;PropertyID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="SomeString"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   7:  &lt;/SPAN&gt;            &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;Property&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="System!System.Entity"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;PropertyID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="DisplayName"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   8:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;DiscoveryClass&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;   9:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;DiscoveryRelationship&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="Windows!Microsoft.Windows.ComputerHostsLocalApplication"&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  10:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;DiscoveryTypes&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  11:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;DataSource&lt;/SPAN&gt; &lt;SPAN class=attr&gt;ID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="DS"&lt;/SPAN&gt; &lt;SPAN class=attr&gt;TypeID&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;="MarcinAtWork.HardcodedDiscovery.One.DemoApplicationDiscovery.DS"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  12:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;IntervalSeconds&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;120&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;IntervalSeconds&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  13:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;SyncTime&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  14:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;SomeInteger&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;42&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;SomeInteger&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  15:  &lt;/SPAN&gt;          &lt;SPAN class=kwrd&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;SomeString&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;Some test string goes here.&lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;SomeString&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  16:  &lt;/SPAN&gt;        &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;DataSource&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN class=lnum&gt;  17:  &lt;/SPAN&gt;      &lt;SPAN class=kwrd&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN class=html&gt;Discovery&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;The entire management pack containing the above snippets is attached to this post. In addition to the above, I included another discovery that uses a System.Discovery.FilteredClassSnapshotDataMapper (also from System.Library MP) to demonstrate how you can use an expression to determine whether or not a discovery should run on a particular computer.&lt;/P&gt;
&lt;P mce_keep="true"&gt;If you import the attached MP (make sure to change string "NLB-CL7-N2.marcin.com" in the MP to a fully-qualified device name of one computer in your maanagement group), the following should happen:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;Instances of class MarcinAtWork.HardcodedDiscovery.One.DemoApplication will be discovered on every computer in your management group.&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;One instance of class MarcinAtWork.HardcodedDiscovery.One.DemoApplicationSingle will be discovered on the computer whose FQDN you entered in the MP before importing it.&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;Good luck!&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;This posting is provided "AS IS" with no warranties.&lt;BR&gt;Use of included tools and reports are subject to the terms specified at&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.microsoft.com/info/cpyright.htm" mce_href="http://www.microsoft.com/info/cpyright.htm"&gt;&lt;FONT color=#0000ff face=Calibri&gt;http://www.microsoft.com/info/cpyright.htm&lt;/FONT&gt;&lt;/A&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3248589" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /><category term="discovery" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/discovery/" /><category term="test" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/test/" /><category term="mp" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/mp/" /><category term="hardcoded" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/hardcoded/" /></entry><entry><title>First Post!</title><link rel="alternate" type="text/html" href="http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/05/26/first-post.aspx" /><id>http://blogs.technet.com/b/marcin_jastrzebski/archive/2009/05/26/first-post.aspx</id><published>2009-05-26T19:36:00Z</published><updated>2009-05-26T19:36:00Z</updated><content type="html">&lt;P&gt;Welcome to my blog!&lt;/P&gt;
&lt;P&gt;I'm Marcin Jastrzebski and I'm a developer on the System Center Operations Manager (SCOM). In time, this blog will contain various SCOM-related information that I feel might be useful to you. This may include tools, Management Pack or SCOM SDK development tips, feature demos, or pretty much anything else.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;This posting is provided "AS IS" with no warranties.&lt;BR&gt;Use of included tools and reports are subject to the terms specified at&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.microsoft.com/info/cpyright.htm"&gt;&lt;FONT color=#0000ff face=Calibri&gt;http://www.microsoft.com/info/cpyright.htm&lt;/FONT&gt;&lt;/A&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3245820" width="1" height="1"&gt;</content><author><name>Marcin Jastrzębski</name><uri>http://blogs.technet.com/marcin_4000_marcinj.net/ProfileUrlRedirect.ashx</uri></author><category term="scom" scheme="http://blogs.technet.com/b/marcin_jastrzebski/archive/tags/scom/" /></entry></feed>