Archive for January, 2011


Links and Support


This site was more or less designed as a brain dump for me to help others who may come across complex problems that you don’t see everyday.

For “Officially Unofficial” support for System Center Essentials, WSUS, and Microsoft Deployment Toolkit please visit the TechNet forums hosted by Microsoft.  You will find numerous experts (myself included) in virtually every MS discipline available.

System Center Forums are here.

For System Center users, another community site is http://www.systemcentercentral.com There are System Center family MVP’s that are frequently at this site which can also provide help for difficult problems, as well as assisting in development, say you want to create a new management pack or script something within SCE, they can help you.

WSUS Forums are here.

MDT Forums are here.

All Microsoft TechNet forums are listed here.

 

Advertisements

While I’m on the subject of deployment, along with Adobe, I get “How can I deploy Java”?

This one is even easier.

In this example I’ll use Java 6 Update 22.

Download the offline installer.  In this case the filename is jre-6u22-windows-i586-s.exe, and save it to your network share.

Go into SCE and create a new software package, point to the file above that you saved on your network share.  The additional installation parameters are “/s”  no quotes, it’s that easy.  This will install java silently and one less thing you have to worry about.


I get questions about this all the time….”How do I deploy Adobe Reader using SCE2010″?

It’s quite easy actually.

What you’ll need:

An offline version of the installer from Adobe – all versions of installers are here

Adobe Customization Wizard for the version you’re trying to deploy (yes, they ARE different, so get the right one)  The latest customization wizard for Reader X is here.  If you’re deploying Reader 9, get the Customization Wizard for version 9.

You have to transform the MSI with the customization wizard.  This provides for options pertaining to default pdf viewer, silent installs, remove old versions, etc.  Once you get it the way you want, the program creates an MST file.  At the top or the customization wizard you’ll actually see transformed by “nameofyourmstfile”.  Great, save those files to your network share where all your other deployment files are.

Go into system center and create a new package, point to the msi file, usually Acroread.msi by default.  Once you get to the additional installation parameters page you’ll put in  ALLUSERS=True TRANSFORMS=\\server\share\yourmstfile.mst   Remember if your mst path name has spaces in it, you MUST enclose the whole path in quotes or it will stop at the first space you have in the path name.  Deploy to a test group and make changes to the mst file as necessary.


Ever had the problem where Windows Update freezes during the download phase and won’t continue?
Check to see if BITS is running. If not, and it WON’T start..read below

Try deleting the downloader cache files!

I’m not going to include XP users because:
1. I can’t remember the exact path
2. You’re still using XP, you’re a bit behind.

For Windows 7 users, the downloader cache/queue location is c:\ProgramData\Microsoft\Network\Downloader.
Inside this folder are .DAT files, remove them and see if BITS will now start thus, enabling Windows Update.
Note: This has only been tested for people using the Microsoft site, it “should” be the same for WSUS, but I can’t guarantee it.


Using System Center Essentials 2010 with SQL 2008R2 databases.

For those of you using SCE2010, you may (or may not) have found that SQL 2008R2 doesn’t play nicely, particularly in the area of drill-trough parameters with software/hardware summary reports.

I’ve created a fix for this and have had other colleagues test this with 100% success.  Keep in mind this is ONLY for SQL 2008R2.
You’ll need to modify the software summary report to do this.

Edit the report in Report Builder 3.0

You need to edit the Textbox properties of textbox8, not the placeholder properties. You can identify the box because it has “[ApplicationName]” written in blue.

So right click on the textbox, go to Text Box Properties.

Select “Action” on the left, you should see “Go to report” and then the report name is your software inventory report.

Under “Use these parameters to run the report” you’ll see Name: ComputerTargetId and the value is an expression.

Click the fx button to open the expression.

Delete =Code.GetObjectList(“” + Code.CurrentObjectList + “”)

and put in =LookupSet(Fields!ApplicationName.Value + “,” + Fields!ApplicationVersion.Value,Fields!ApplicationName.Value + “,” + Fields!ApplicationVersion.Value,Fields!ComputerTargetId.Value, “SUSDB”)

Save the report back to your report server and try running a software summary report, then click on a software title and make sure it takes you to the inventory report.

Please post if this doesn’t make sense or it’s not working or you need help, etc.

Disclaimer: This is MY fix, not an official fix from Microsoft. It’s been tested and confirmed to work in different environments, but I’m not responsible if it doesn’t work in yours or somehow corrupts your install or DB. This fix is also assuming your databases are using the default names created/installed by System Center Essentials 2010.


I cannot claim responsibility for this but I found it to be extremely useful.  Basically a management pack that creates client groups by using the PROCESSOR_ARCHITECTURE key within Windows.  Thanks to Brian at Unidev.  Here’s the original post.

Unfortunately System Center Essentials doesn’t come with computer groups that are based on whether or not Windows is installed as 32-bit or 64-bit.  This would be extremely helpful in pushing software that is targeted for those specific platforms.  Below is the management pack xml I came up with.  You can save this XML as “Platform.Based.Computer.Groups.xml” and import via the console.  It uses the PROCESSOR_ARCHITECTURE registry key to make the determination of a 32-bit vs. 64-bit OS.  This creates 6 groups, 3 sets each split into x86 and x64:  Windows <platform> Computer Group, Windows Client <platform> Computer Group, Windows Server <platform> Computer Group.  To create the management pack by scratch, you can follow this outline:

  1. Create a new attribute for the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE registry key value, targeting Windows Computer, Windows Client, and Windows Server.  Yes this means you create 3 attributes.
  2. Create new groups for each platform.  The rule for the x64 groups is the value of this key must equal “amd64”.  The rule for the x86 groups is this key doesn’t equal “amd64”.  More explanation can be found here (note the management agent/service runs native to the platform).  For the Windows <platform> Group, make sure you use the Windows Computer_Extended class.  For the Windows Client <platform> Computer Group, make sure you use the Windows Client_Extended class.  For the Windows Server <platform> Computer Group, make sure you use the Windows Server_Extended class.
  3. Wait for the agents to set the new attribute.

Here is the Exported Management Pack.  Note this was created using System Center Essentials 2010.  I believe this would work under 2007, but different version numbers would need to be used.

<?xml version=”1.0″ encoding=”utf-8″?><ManagementPack ContentReadable=”true” xmlns:xsd=”http://www.w3.org/2001/XMLSchema” xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”>
<Manifest>
<Identity>
<ID>Platform.Based.Computer.Groups</ID>
<Version>1.0.0.0</Version>
</Identity>
<Name>Platform Based Computer Groups</Name>
<References>
<Reference Alias=”MicrosoftWindowsLibrary6172210″>
<ID>Microsoft.Windows.Library</ID>
<Version>6.1.7221.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”MicrosoftSystemCenterInstanceGroupLibrary6172210″>
<ID>Microsoft.SystemCenter.InstanceGroup.Library</ID>
<Version>6.1.7221.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”SystemCenter”>
<ID>Microsoft.SystemCenter.Library</ID>
<Version>6.1.7221.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
</References>
</Manifest>
<TypeDefinitions>
<EntityTypes>
<ClassTypes>
<ClassType ID=”Type79bcd4b047114bf38057cccfefc23b3f” Accessibility=”Public” Abstract=”false” Base=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Client.Computer” Hosted=”false” Singleton=”false”>
<Property ID=”AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db” Type=”string” Key=”false” CaseSensitive=”false” Length=”256″ MinLength=”0″ />
</ClassType>
<ClassType ID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpace9c461cdabc464754901456d880b76d42.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”Typec1ddf4898a8c45759b68eb55084f063d” Accessibility=”Public” Abstract=”false” Base=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Server.Computer” Hosted=”false” Singleton=”false”>
<Property ID=”AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4″ Type=”string” Key=”false” CaseSensitive=”false” Length=”256″ MinLength=”0″ />
</ClassType>
<ClassType ID=”Type2259d37e77334b7394a4bdb268a58764″ Accessibility=”Public” Abstract=”false” Base=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer” Hosted=”false” Singleton=”false”>
<Property ID=”AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5″ Type=”string” Key=”false” CaseSensitive=”false” Length=”256″ MinLength=”0″ />
</ClassType>
<ClassType ID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
</ClassTypes>
</EntityTypes>
</TypeDefinitions>
<Monitoring>
<Discoveries>
<Discovery ID=”AttributeDiscoveryGeneratedByUIcf48023b73e54e8dae3405dd1ff63ae4″ Enabled=”true” Target=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Client.Computer” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>PerformanceCollection</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID=”Type79bcd4b047114bf38057cccfefc23b3f”>
<Property TypeID=”Type79bcd4b047114bf38057cccfefc23b3f” PropertyID=”AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db” />
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID=”AttributeDiscoveryGeneratedByUI538c41746aa249058ff191fc55335053″ TypeID=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.RegistryDiscoverySingleProvider”>
<ComputerName>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/NetworkName$</ComputerName>
<AttributeName>AttributeDiscoveryRule7a8459cae84842f082b2f7da5b2fa27a</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]/AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db$</Name>
<Value>$Data/Values/AttributeDiscoveryRule7a8459cae84842f082b2f7da5b2fa27a$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Name>
<Value>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]/AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db$</Property>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpace9c461cdabc464754901456d880b76d42.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpace9c461cdabc464754901456d880b76d42.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpace9c461cdabc464754901456d880b76d42.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]/AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”AttributeDiscoveryGeneratedByUIc35946fd1e9246bb91ff701b971134c9″ Enabled=”true” Target=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Server.Computer” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>PerformanceCollection</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID=”Typec1ddf4898a8c45759b68eb55084f063d”>
<Property TypeID=”Typec1ddf4898a8c45759b68eb55084f063d” PropertyID=”AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4″ />
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID=”AttributeDiscoveryGeneratedByUI553f00ed2fbd4b4d8bf516bad763fa75″ TypeID=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.RegistryDiscoverySingleProvider”>
<ComputerName>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/NetworkName$</ComputerName>
<AttributeName>AttributeDiscoveryRulec017456d384b4bb9860dac5b91dcf8c2</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]/AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4$</Name>
<Value>$Data/Values/AttributeDiscoveryRulec017456d384b4bb9860dac5b91dcf8c2$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Name>
<Value>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>
<Discovery ID=”AttributeDiscoveryGeneratedByUI4fcdb3368e174252a02253a63dc5373b” Enabled=”true” Target=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>PerformanceCollection</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID=”Type2259d37e77334b7394a4bdb268a58764″>
<Property TypeID=”Type2259d37e77334b7394a4bdb268a58764″ PropertyID=”AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5″ />
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID=”AttributeDiscoveryGeneratedByUI2cc5aaef5b8c4e849fe5af1833a0115f” TypeID=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.RegistryDiscoverySingleProvider”>
<ComputerName>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/NetworkName$</ComputerName>
<AttributeName>AttributeDiscoveryRule95424e49ca10467eb12d4611633759c5</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]/AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5$</Name>
<Value>$Data/Values/AttributeDiscoveryRule95424e49ca10467eb12d4611633759c5$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Name>
<Value>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]/AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4$</Property>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]/AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]/AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5$</Property>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]/AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
</Discoveries>
</Monitoring>
<Presentation>
<Folders>
<Folder ID=”Folder_3a3150e06af04efc93e10ce2cbdb67a5″ Accessibility=”Public” ParentFolder=”SystemCenter!Microsoft.SystemCenter.Monitoring.ViewFolder.Root” />
</Folders>
</Presentation>
<LanguagePacks>
<LanguagePack ID=”ENU” IsDefault=”false”>
<DisplayStrings>
<DisplayString ElementID=”Platform.Based.Computer.Groups”>
<Name>Platform Based Computer Groups</Name>
</DisplayString>
<DisplayString ElementID=”Folder_3a3150e06af04efc93e10ce2cbdb67a5″>
<Name>Platform Based Computer Groups</Name>
</DisplayString>
<DisplayString ElementID=”AttributeDiscoveryGeneratedByUIcf48023b73e54e8dae3405dd1ff63ae4″>
<Name>Process ArchitectureDiscovery</Name>
</DisplayString>
<DisplayString ElementID=”Type79bcd4b047114bf38057cccfefc23b3f”>
<Name>Windows Client_Extended</Name>
</DisplayString>
<DisplayString ElementID=”Type79bcd4b047114bf38057cccfefc23b3f” SubElementID=”AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db”>
<Name>Process Architecture</Name>
<Description>Determines 32-bit or 64-bit version of windows based on the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group”>
<Name>Windows Client x86 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group.DiscoveryRule”>
<Name>Populate Windows Client x86 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Client x86 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpace9c461cdabc464754901456d880b76d42.Group”>
<Name>Windows Client x64 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpace9c461cdabc464754901456d880b76d42.Group.DiscoveryRule”>
<Name>Populate Windows Client x64 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Client x64 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”AttributeDiscoveryGeneratedByUIc35946fd1e9246bb91ff701b971134c9″>
<Name>Process ArchitectureDiscovery</Name>
</DisplayString>
<DisplayString ElementID=”Typec1ddf4898a8c45759b68eb55084f063d”>
<Name>Windows Server_Extended</Name>
</DisplayString>
<DisplayString ElementID=”Typec1ddf4898a8c45759b68eb55084f063d” SubElementID=”AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4″>
<Name>Process Architecture</Name>
<Description>Determines 32-bit or 64-bit version of windows based on the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Description>
</DisplayString>
<DisplayString ElementID=”AttributeDiscoveryGeneratedByUI4fcdb3368e174252a02253a63dc5373b”>
<Name>Process ArchitectureDiscovery</Name>
</DisplayString>
<DisplayString ElementID=”Type2259d37e77334b7394a4bdb268a58764″>
<Name>Windows Computer_Extended</Name>
</DisplayString>
<DisplayString ElementID=”Type2259d37e77334b7394a4bdb268a58764″ SubElementID=”AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5″>
<Name>Process Architecture</Name>
<Description>Determines 32-bit or 64-bit version of windows based on the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group”>
<Name>Windows Server x86 Computer Group</Name>
<Description />
</DisplayString>
<DisplayString ElementID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group.DiscoveryRule”>
<Name>Populate Windows Server x86 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Server x86 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group”>
<Name>Windows Server x64 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group.DiscoveryRule”>
<Name>Populate Windows Server x64 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Server x64 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group”>
<Name>Windows x86 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group.DiscoveryRule”>
<Name>Populate Windows x86 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows x86 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group”>
<Name>Windows x64 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group.DiscoveryRule”>
<Name>Populate Windows x64 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows x64 Computer Group’</Description>
</DisplayString>
</DisplayStrings>
</LanguagePack>
</LanguagePacks>
</ManagementPack>


Go into authoring and go to monitors.  Scope the list to Windows Servers ( the more I think about it, I may revise this to apply only to dc’s since they’re the ones that notate a computer account creation).

Create a new Unit Monitor the monitor type will be Windows Events->Simple Event Detection-> Timer Reset.  I chose this because I want it to log an alert but not remain in a warning state ( i hate yellow and red marks all over my gui =) )

Leave the management pack at default.

Name the monitor whatever you like, give it a description if you want and the parent monitor I set to Security.  – seems appropriate

Log name is Security

Event ID equals 645 and Event Source equals Security.

Leave the timer default at 15 seconds, again all we want to do is generate an alert, not annoy us to death.

Monitor conditions shouldn’t need to change, it’ll warn when the event is raised and go back to healthy after the timer expires.

The alert settings, you want to check the box to generate an alert, when it’s in a health state, and uncheck automatically resolve the alert, (otherwise it auto-resolves and unless you catch it in the 15 seconds, you won’t know what happened).

Name the alert, priority, severity and description however you want.  you’re done with creating the monitor.

The only thing you have left to do is look at the properties of the monitor, and add a recovery task (the auto-discovery) and you’re done.  You can get some ideas about how the discovery script works by going to Authoring->Tasks and search for discovery  you may have to rescope your search to include Root Management Server, then you’ll see Essential Computer Discovery task and can view the properties to see how it works.


Scenario: you have pc’s reporting in, and when you look at a hardware inventory, your Intel Core 2 Duo pc’s are showing up as PIII Xeon’s (sounds weird but it does happen).

Solution: Contrary to popular belief, this is NOT a SCE problem, but a problem that has been recognized and addressed by Microsoft. The WMI call does exactly what it should however, the processor is incorrectly identified. The hotfix is here. Keep in mind, this is a request-only hotfix, and only effects XP and Server 2003 machines.


Old news, but for the folks who don’t know about it, here it is.