<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.infosupport.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>SYSTEM OPERATIONS [Michel Kamp]</title><link>http://blogs.infosupport.com/blogs/michelk/default.aspx</link><description>The challenge to ease system operations</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>This Is My Last BLOG Post</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2007/07/04/This-Is-My-Last-BLOG-Post.aspx</link><pubDate>Wed, 04 Jul 2007 09:19:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:12398</guid><dc:creator>michel kamp</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hello bloggers,&lt;/p&gt;&lt;p&gt;This will be my last blog post by and for Info Support.&lt;/p&gt;&lt;p&gt;I will be blogging in the future on &lt;a href="http://www.scug.nl/"&gt;www.scug.nl&lt;/a&gt;&amp;nbsp;the Dutch System Center User Group or on a other blog site. (Just&amp;nbsp;search for my name on the&amp;nbsp;internet)&lt;/p&gt;&lt;p&gt;Hope you &lt;span style="font-size:10pt;font-family:'Arial','sans-serif';"&gt;enjoyed &lt;/span&gt;the blogs post i have written.&lt;/p&gt;&lt;p&gt;See you later.....&lt;/p&gt;&lt;p&gt;Michel&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=12398" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/thee+nd/default.aspx">thee nd</category></item><item><title>MOM ORACLE MANAGEMENT PACK</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/11/02/MOM-ORACLE-MANAGEMENT-PACK.aspx</link><pubDate>Thu, 02 Nov 2006 12:57:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10894</guid><dc:creator>michel kamp</dc:creator><slash:comments>6</slash:comments><description>&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;Feeling lucky today?. Due to a feet operation I&amp;rsquo;m in recovery at home. So my mind was spinning to do something. I was always wondering why there wasn&amp;rsquo;t a ORACLE management pack for MOM. Of course you could buy one form Netiq example , but the complete version will have more overhead that you want (I tried it). No I want a FREE and simple one!. &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Ok so you&amp;rsquo;re lucky, here&amp;rsquo;s the free oracle MP.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;I&amp;rsquo;m NOT a oracle expert so there maybe missing some checks but it&amp;rsquo;s a start. If you give me some remarks then I have a look at it.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;What does it for all oracle instances:&lt;/font&gt;&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;-&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;it monitors the oracle alert files. And report the important ORA-xxx messages and oracle text messages. (last one disabled by default).&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;-&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;it monitors oracle NT services state changes.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;-&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;it collects important performance counters from the instances. (v$ views)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;-&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;It monitors the free space on tablespaces. And report if below 25% free. &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;-&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;Oracle instances discovery. Automatically finds all instances and SIDs in all homes.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;Configuration:&lt;/font&gt;&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;To use all the monitor features you must do a little configuration on the oracle instances and the mp.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;em&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;At the oracle servers:&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;1. Change the alertlogfile locations. (no shutdown required)&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;1)&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;open the enterprise manager login to the instance under system sysdba&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;2)&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;go to configuration -&amp;gt; all initialization parameters&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;3)&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;Change the &amp;ldquo;background_dump_dest&amp;rdquo; to &amp;ldquo;c:\oracle\alertlogs&amp;rdquo; You can change this path but then you have also to change the MOM alert log file provider.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;4)&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;Then apply.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#a6a6a6;margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&lt;font size="3"&gt;5)&lt;/font&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;Do step 1 .. 4 for every instance you have running on any server.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Now all the alert logs are written to a standard location. This is needed because the&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;Path of the &amp;ldquo;MOM application log provider&amp;rdquo; cannot be dynamically configured.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;2. Install the ORACLE ODBC driver and client tools (connectivity) on the oracle servers.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;3. The performance and table space check use a oracle account to login. You specify this at the respond rules. I use the system user for this. But better is to create a special account for this. If you do be sure it can read the sys.v$ views and the tablespace table.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;em&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;At the mom oracle mp:&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Import the MOM ORACLE MP&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;change the user and passwords of the respond script of the rules:&lt;br /&gt;&lt;/font&gt;&lt;font face="Times New Roman" size="3"&gt;[MITS] ORACLE\ [MITS] ORACLE CHECKS\ [MITS] Collect Oracle free tablespace info&lt;br /&gt;&lt;/font&gt;&lt;font face="Times New Roman" size="3"&gt;and&lt;br /&gt;&lt;/font&gt;&lt;font face="Times New Roman" size="3"&gt;[MITS] ORACLE\ [MITS] ORACLE PERFORMANCE V$ COLLECTIONS\*&lt;/font&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;change the path of the &amp;ldquo;providers\[MITS] oracle alert log files&amp;rdquo; provider to the location you have changed in step 1 &amp;ldquo;change the alertlogfile locations&amp;rdquo;&lt;/font&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;change or create more alert rules for notification.&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;do a commit.&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;That&amp;rsquo;s all.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;What you will see at the operator console:&lt;/font&gt;&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Open the mom operator console go to the &amp;ldquo;Alerts\[MITS] Oracle&amp;rdquo; folder.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Open the mom operator console go to the &amp;ldquo;Performance\[MITS] Oracle&amp;rdquo; folder.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;There should me more views created but it&amp;rsquo;s a start.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Hope you enjoy this MP.&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Download at : &lt;a href="http://blogs.infosupport.com/files/folders/10895/download.aspx"&gt;http://blogs.infosupport.com/files/folders/10895/download.aspx&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Michel Kamp&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10894" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+Management+Packs+_2800_MP_2900_/default.aspx">MOM Management Packs (MP)</category><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/Oracle/default.aspx">Oracle</category></item><item><title>PART 1: AXIOS ASSYST MOM PRODUCT CONNECTOR</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/10/11/PART-1_3A00_-AXIOS-ASSYST-MOM-PRODUCT-CONNECTOR.aspx</link><pubDate>Wed, 11 Oct 2006 08:19:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10806</guid><dc:creator>michel kamp</dc:creator><slash:comments>4</slash:comments><description>&lt;p&gt;&lt;strong&gt;&lt;u&gt;Why:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;We are using Assyst as our helpdesk tool. If MOM detects a critical error this must be logged as a Assyst call. Now we are doing this manually.&amp;nbsp;I always wondered why there was no MOM product connector for ASSYST. Yesterday I could not wait anymore for it so I have build one my self.&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;What is it:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;The first release will be one build on the MPC SDK example and will be a basic one-way connector and a ASSYST webservice.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;How this works:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;The new alert is&amp;nbsp;generated in MOM. You evaluate it&amp;nbsp;if this should be logged into ASSYST.&amp;nbsp; You change the resolution state to &amp;quot;Log to Assyst&amp;quot;. The MPC will now do a webservice call to the Assyst webservice. This webservice will make a Assyst incident using the ACLI (from Assyst) interface. The ACLI returns the incident number. The MPC receives the incident number and saves this in the MOM alerts &amp;quot;ticked id&amp;quot; field. At last the MPC changes the resolution state to &amp;quot;level 1:.... assigned...&amp;quot;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Status:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Yesterday&amp;nbsp;I complied&amp;nbsp;,installed and tested the ASSYST MPC. And it works!!! Now I have to put in some error handling.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Download:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;In part 2 I will post the setup package. Please let me know if you like this worked out idea.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Michel Kamp&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10806" width="1" height="1"&gt;</description></item><item><title>MOM MP: Basic Windows Security check</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/09/14/MOM-MP_3A00_-Basic-Windows-Security-check.aspx</link><pubDate>Thu, 14 Sep 2006 04:36:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10611</guid><dc:creator>michel kamp</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Due to account policy&amp;#39;s we forbid&amp;nbsp;administrators to logon with&amp;nbsp;specific domain admin accounts or with the local administrator accounts. Also wanted was a security audit to lookup or monitor possible attacks.&lt;/p&gt;&lt;p&gt;To do this I&amp;#39;ve written a simple security management pack. That collects all security events and generate alerts when a logon fails 3 times&amp;nbsp;within 3 min , account rights are changed and when a&amp;nbsp;local administrator, specific admin account logon (successful) &amp;nbsp;is detected.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Pre-installs:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;1&lt;/u&gt;&amp;nbsp;Import the security MP into MOM.&amp;nbsp;Its by default assigned to all windows servers.&lt;/p&gt;&lt;p&gt;&lt;u&gt;2&lt;/u&gt; Change the&amp;nbsp;domain&amp;nbsp;audit policy to&amp;nbsp;&amp;quot;audit account logon events&amp;quot; , &amp;nbsp;&amp;quot;audit&amp;nbsp;logon events&amp;quot;&amp;nbsp;and &amp;quot;audit&amp;nbsp;account management&amp;quot; to value &amp;quot;Success,Failure&amp;quot;. Change also for the Evenlog policy that your eventlogs are min 20Mb big. AND THAT OVERWRITE IF NEEDED IS ACTIVATED. MOM will be fast enough to store the evens in the database before the will be overwritten in case of a flush attack. Otherwise your system will go in HOLD status. (and that&amp;#39;s not what you want)&lt;/p&gt;&lt;p&gt;&lt;u&gt;3&lt;/u&gt;&amp;nbsp;Deploy your policy.&lt;/p&gt;&lt;p&gt;&lt;u&gt;4&lt;/u&gt; Change the rules to the admin accounts you want to monitor. Rule &amp;quot;[MITS] SECURITY ISSUE ALERT ON [Logon/Logoff admin_xxx]&amp;quot; -&amp;gt; &amp;quot;criteria&amp;quot; property &amp;quot;user name&amp;quot; to what specific account you want to monitor. For multiply accounts you can also use a regexpression for this.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;u&gt;5&lt;/u&gt; Do a MOM commit.&lt;/p&gt;&lt;p&gt;&lt;u&gt;6&lt;/u&gt; Open the operator console and go to the &amp;quot;security views&amp;quot; There must be events in it.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;To do:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;- I&amp;#39;m working on a datawarehouse report that will analyze the events.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Be aware:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;That your onepoint db will grow faster.&lt;/p&gt;&lt;p&gt;That the mom datawarehouse db will also grow faster.&lt;/p&gt;&lt;p&gt;So make source there enough space in it.&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;font color="#ff0000"&gt;&lt;a href="http://blogs.infosupport.com/files/folders/michelk/entry10606.aspx" title="You can download the MP HERE"&gt;&lt;font color="#4c7a9e"&gt;You can download the MP HERE&lt;/font&gt;&lt;/a&gt;:&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;Michel&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10611" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+Management+Packs+_2800_MP_2900_/default.aspx">MOM Management Packs (MP)</category></item><item><title>PART 2: Mass MOM rule Editor</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/09/07/PART-2_3A00_-Mass-MOM-rule-Editor.aspx</link><pubDate>Thu, 07 Sep 2006 08:42:41 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10517</guid><dc:creator>michel kamp</dc:creator><slash:comments>7</slash:comments><description>&lt;p&gt;Ok did some coding today.&lt;/p&gt; &lt;p&gt;There's the first real build. !!!!&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Please &lt;strong&gt;test&amp;nbsp;&lt;/strong&gt;it&amp;nbsp;&lt;strong&gt;NOT&lt;/strong&gt; on production ;-)&amp;nbsp;&lt;/p&gt; &lt;p&gt;Don't except error handling in this version.&lt;/p&gt; &lt;p&gt;The tool is quite&amp;nbsp;easy to understand.&lt;/p&gt; &lt;p&gt;1. Run the exe on you MOM server (with the MOM SDK installed).&lt;/p&gt; &lt;p&gt;2. Press on "Get MPs". And wait.&lt;/p&gt; &lt;p&gt;3.&amp;nbsp;Navigate to your rule group.&amp;nbsp;You can&amp;nbsp;rightmouse click to do&amp;nbsp;the actions enable/disable all rules or selected rule group.&lt;/p&gt; &lt;p&gt;4. If there are rules in the rule group they are displayed in the rule list.&lt;/p&gt; &lt;p&gt;5. Select the rule you want to change. For now you can only change : disable/enable the rule and the CompanyKnowledge fields.&lt;/p&gt; &lt;p&gt;6. Press the update rule(s) button to process the changes. Only the selected rules will be processed.&lt;/p&gt; &lt;p&gt;7. OR if you want to set a value for all the selected rules you can fill in the value in the rule detail box and then press the mass rule update button.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Please give me some feedback on this tool!!!!&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;see for the download: &lt;a href="http://blogs.infosupport.com/files/folders/michelk/entry10516.aspx" target="_blank"&gt;MassMOMRuleEditorV1&lt;/a&gt;&lt;/p&gt; &lt;p&gt;see below for some screen shots.&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;/em&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;em&gt;Have fun with it Michel&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://blogs.infosupport.com/photos/michelk/images/10515/original.aspx"&gt;&lt;/p&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10517" width="1" height="1"&gt;</description></item><item><title>PART 1: Mass MOM rule Editor</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/09/06/PART-1_3A00_-Mass-MOM-rule-Editor.aspx</link><pubDate>Wed, 06 Sep 2006 05:09:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10506</guid><dc:creator>michel kamp</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;OK. I was I a situation that I had about 200 rules that must be disabled.&amp;nbsp;The only way to do this is:&lt;/p&gt;&lt;p&gt;1. By hand&amp;nbsp;one&amp;nbsp;by one&amp;nbsp;with the&amp;nbsp;administrator console&lt;/p&gt;&lt;p&gt;2.&amp;nbsp;Do a non supported SQL update&lt;/p&gt;&lt;p&gt;3. Use the MOM SDK&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Of course I did step 3. And the MassMomRuleEditor&amp;nbsp;is born. &amp;nbsp;I&amp;#39;m still working on it but the tool is getting some body. What the MassMomRuleEditor must do is:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Wanted features:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1. View the MPs&lt;/p&gt;&lt;p&gt;2. Disable/enable MP rule group(s)&lt;/p&gt;&lt;p&gt;3. Disable/enable MP rule(s)&amp;nbsp;. All or only the selected.&lt;/p&gt;&lt;p&gt;4. Display information on a rule or rule group&lt;/p&gt;&lt;p&gt;5. Edit the rule. Name , Knowledge , criteria etc.&lt;/p&gt;&lt;p&gt;6. Backup (export) a rule/ rule group.&lt;/p&gt;&lt;p&gt;7. some of version control using Microsoft visual source safe.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;Steps %&amp;nbsp;completed:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;step 1 : 100%&lt;/p&gt;&lt;p&gt;step 2: 100%&lt;/p&gt;&lt;p&gt;step 3: 90%&lt;/p&gt;&lt;p&gt;step 4: 90%&lt;/p&gt;&lt;p&gt;step 5: 10%&lt;/p&gt;&lt;p&gt;step 6: 0%&lt;/p&gt;&lt;p&gt;step 7: 0%&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;To tease you I have posted&amp;nbsp;a screen shot below. I will post the tool if I have a feeling it is stable. &lt;/p&gt;&lt;p&gt;&lt;em&gt;Meanwhile you are free to give me some comments on wanted features.&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;SO KEEP LOOKING AT THIS BLOG SITE&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;img alt="massmomruleeditor" height="602" src="http://blogs.infosupport.com/photos/michelk/images/10505/original.aspx" style="width:739px;height:602px;" title="massmomruleeditor" width="739" /&gt;&lt;/p&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10506" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category></item><item><title>MP: Sophos v4</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/09/05/MP_3A00_-Sophos-v4.aspx</link><pubDate>Tue, 05 Sep 2006 08:53:31 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10491</guid><dc:creator>michel kamp</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;Yesterday I needed some rules to check Sophos Virus scanner on our corporate network.&lt;/p&gt; &lt;p&gt;So I made an first version to monitor Sophos Version 4.x&lt;/p&gt; &lt;p&gt;You can Import it into MOM and it will automatic find the sophos enabled servers. See also the Alert and event view. In this version I have only enabled the most critical event rules.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;You are free to change it , please inform me also when what you have changed. So we can come to a next version.&lt;/p&gt; &lt;p&gt;Have fun with it!&lt;/p&gt; &lt;p&gt;Michel&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.infosupport.com/files/folders/michelk/entry10496.aspx" target="_blank"&gt;Download sophos v4 MOM management pack&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;font color="#ff0000"&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10491" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+Management+Packs+_2800_MP_2900_/default.aspx">MOM Management Packs (MP)</category></item><item><title>HOWTO: bulk export / import MOM management packs</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/09/01/HOWTO_3A00_-bulk-export-_2F00_-import-MOM-management-packs.aspx</link><pubDate>Fri, 01 Sep 2006 05:02:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:10444</guid><dc:creator>michel kamp</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Hi,&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;As a MOM system administrator / consultant&amp;nbsp;I have visited many customers that don&amp;#39;t backup the MOM MPs.&amp;nbsp;The say&amp;nbsp;&amp;quot;&lt;em&gt;why? I&amp;#39;m making a SQL onepoint backups , this should do it....&lt;/em&gt;&amp;rdquo; Personally I&amp;#39;m not a big&amp;nbsp;pro on restoring the complete onepoint db if you lose or miss-change a MP. So the mom SDK has some tools to export / import MPs from the command line. The only problem is&amp;nbsp;that this tool only processes 1 rule group at the time. I&amp;#39;ve written a c# program that solves this problem.&amp;nbsp;This is a simple way to export (backup) your MPs.&amp;nbsp;I&amp;nbsp;use the tool for one reason more: I&amp;#39;m using the MOM to MOM product connector to forward alerts from a co hosting MOM locations to our main MOM location. This requires you to have the same MPs on both sites.&amp;nbsp;My tool has a Import feature as well. So you can make a co-site export and import to the main site in one step. &lt;br /&gt;So if you want to make only a export (for backup resons) you make the source and destination server parameters the same. The tool then only exports the MPs to the given directory. If you fill in a different destination server the tool will imports the exported MPs one by one on the specified server. The tool also export / imports all the RULES , VIEWS , TASKS.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Command line usage:&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;ExportImportMP.exe &amp;lt;source mom server&amp;gt; &amp;lt;dest mom server&amp;gt; &amp;lt;dest path&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;requirements:&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;- Dot Net 1.1 framework installed&lt;br /&gt;- MOM SDK installed &lt;br /&gt;- must exists:\Program Files\Microsoft Operations Manager 2005\ManagementModuleUtil.exe&lt;br /&gt;- execute&amp;nbsp;on the MOM server.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;I will share the code. This&amp;nbsp;is a quick programming project , so do not except to much:&lt;br /&gt;&lt;em&gt;&lt;span style="color:blue;"&gt;(You can download the project from the download section&amp;nbsp;on this blog server)&lt;/span&gt;&lt;/em&gt;&lt;span style="color:blue;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;It is build of 3 parts.&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Part one reads out the command line arguments and is creating a MOM management object.&lt;/span&gt;&lt;/p&gt;&lt;p style="background:#a6a6a6;"&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&amp;nbsp;System.Diagnostics.Process proc = new System.Diagnostics.Process();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string arguments;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string SourceSrv;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string DestSrv;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string DestDir;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (args.Length != 3) &lt;br /&gt;&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;Console.WriteLine(&amp;quot;Error invalid arguments&amp;quot;); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;VERSION : 0.9&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;Michel Kamp. 2006&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;Usage: ExportImportMP &amp;lt;source mom server&amp;gt; &amp;lt;dest mom server&amp;gt; &amp;lt;dest path&amp;gt;&amp;quot;); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;Description: Export and import MOM MPs with the ManagementModuleUtil.exe&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(@&amp;quot;Description: besure C:\Program Files\Microsoft Operations Manager 2005\ManagementModuleUtil.exe exsists&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;HINT: If the Source and destionation is the same then no import will be done. This is usefull for making an backup. &amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Environment.Exit(-1);&lt;br /&gt;&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;SourceSrv = args[0].ToString(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DestSrv = args[1].ToString(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DestDir = args[2].ToString(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&amp;quot;ExportImportMP &amp;quot; + SourceSrv + &amp;quot; &amp;quot; + DestSrv + &amp;quot; &amp;quot; +DestDir );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Administration admin = Administration.GetAdministrationObject(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RuleGroupsCollection rgs = admin.GetRuleGroups(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Part 2 does the export&lt;/span&gt;&lt;/p&gt;&lt;p style="background:#a6a6a6;"&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;foreach (RuleGroup rg in rgs) &lt;br /&gt;{ &lt;br /&gt;Console.WriteLine(&amp;quot;Export RULES: &amp;quot; + rg.Name);&lt;br /&gt;Console.WriteLine(&amp;quot;DestDir: &amp;quot; + DestDir);&lt;br /&gt;arguments = &amp;quot; -O &amp;quot; + SourceSrv + &amp;quot; {&amp;quot; + rg.Id.ToString().ToUpper()&lt;span&gt;&amp;nbsp; &lt;/span&gt;+ &amp;quot;} &amp;quot; + &amp;quot;\&amp;quot;&amp;quot; +&lt;span&gt;&amp;nbsp; &lt;/span&gt;DestDir + @&amp;quot;\&amp;quot; + rg.Name + @&amp;quot;.AKM&amp;quot; + &amp;quot;\&amp;quot;&amp;quot; +&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;quot; -W&amp;quot;;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;proc.EnableRaisingEvents=true;&lt;br /&gt;proc.StartInfo.FileName=@&amp;quot;C:\Program Files\Microsoft Operations Manager 2005\ManagementModuleUtil.exe&amp;quot; ;&lt;br /&gt;proc.StartInfo.Arguments=arguments;&lt;br /&gt;Console.WriteLine(&amp;quot;Processing :&amp;quot; + proc.StartInfo.FileName + &amp;quot; &amp;quot; + proc.StartInfo.Arguments);&lt;br /&gt;proc.Start();&lt;br /&gt;&amp;hellip;&amp;hellip;.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&amp;nbsp;Part 3 does the import&lt;/span&gt;&lt;/p&gt;&lt;p style="background:#a6a6a6;"&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;if ( SourceSrv != DestSrv )&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Console.WriteLine(&amp;quot;IMPORT: &amp;quot; + rg.Name);&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;arguments = &amp;quot; -I &amp;quot; + DestSrv + &amp;quot; \&amp;quot;&amp;quot; + DestDir + @&amp;quot;\&amp;quot; + rg.Name + &amp;quot;.AKM&amp;quot; + &amp;quot;\&amp;quot; -F&amp;quot;;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;proc.EnableRaisingEvents=true;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;proc.StartInfo.FileName=@&amp;quot;C:\Program Files\Microsoft Operations Manager 2005\ManagementModuleUtil.exe&amp;quot; ;&lt;br /&gt;proc.StartInfo.Arguments=arguments;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Console.WriteLine(&amp;quot;Processing :&amp;quot; + proc.StartInfo.FileName + &amp;quot; &amp;quot; + proc.StartInfo.Arguments);&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;proc.Start();&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;proc.WaitForExit();&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Hope you can use it. If not please let me know why and what&amp;rsquo;s missing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;span style="font-size:10pt;color:blue;font-family:Arial;"&gt;You can download the project from the download section&amp;nbsp;on this blog server&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Michel Kamp&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=10444" width="1" height="1"&gt;</description></item><item><title>Testing and developing MOM scripts outside MOM.</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/07/21/Testing-and-developing-MOM-scripts-outside-MOM_2E00_.aspx</link><pubDate>Fri, 21 Jul 2006 13:10:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:9353</guid><dc:creator>michel kamp</dc:creator><slash:comments>0</slash:comments><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Testing and developing&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;MOM scripts outside MOM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Here’s a simple and good working solution to &lt;b style="mso-bidi-font-weight:normal;"&gt;test&lt;/b&gt; and &lt;b style="mso-bidi-font-weight:normal;"&gt;develop&lt;/b&gt; your mom scripts without buying MP studio enterprise.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;1)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Install Visual studio 2003 or Visual studio 2005&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;2)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Install the “responsetest.exe”&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;from the “MOM resource tool kit 2005 sp1” &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;3)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Create a “empty” solution as “test mom scripts” &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;(and you would add it to sourcesafe also ;-) )&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;4)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Create a “empty” project as “mom vbs”&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;5)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Add a new “vbscript” item , name it “test1.vbs”&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Fill it with &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;example code:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;set oEvent = ScriptContext.CreateEvent&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;oEvent.EventNumber = 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;oEvent.EventSource = "SampleScript.txt"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;oEvent.Message = “This is a event. Prameter is :” &amp;amp; ScriptContext.Parameters.Get(“Test Param”)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;ScriptContext.Submit oEvent&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;6)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Create a file “test.cmd” in the project directory&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Fill it with the batch code: (make sure your path to the responsetest.exe is correct)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;:: &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Enter the name below of the script your editing (NO .vbs !)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;set MOM_SCRIPT=test1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;set MOM_RESPONSE=%MOM_SCRIPT%_RESPONSE.xml&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;set MOM_CONFIG=%MOM_SCRIPT%_Config.xml&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;"C:\Program Files\Microsoft Operations Manager Resource Kit\Tools\Response Test Utility\ResponseTest.exe" /q /d /out:%MOM_RESPONSE% /script:%MOM_SCRIPT%.vbs /config:%MOM_CONFIG%&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;7)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Add the existing item file “test.cmd” to the project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;8)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Add an new XML Item named “test1_CONFIG.XML”&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Fill it with the parameter info that will be used for calling the mom script.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-tab-count:1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt; &lt;script&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BACKGROUND:#d9d9d9;MARGIN:0in 0in 0pt 0.25in;"&gt;&lt;SPAN style="mso-ansi-language:EN-US;"&gt;&lt;SPAN style="mso-tab-count:2;"&gt;                  &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BACKGROUND:#d9d9d9;MARGIN:0in 0in 0pt 0.25in;"&gt;&lt;SPAN style="mso-ansi-language:EN-US;"&gt;&lt;SPAN style="mso-tab-count:2;"&gt;                  &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BACKGROUND:#d9d9d9;MARGIN:0in 0in 0pt 0.25in;"&gt;&lt;SPAN style="mso-ansi-language:EN-US;"&gt;&lt;SPAN style="mso-tab-count:3;"&gt;                              &lt;/SPAN&gt;Test&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BACKGROUND:#d9d9d9;MARGIN:0in 0in 0pt 0.25in;"&gt;&lt;SPAN style="mso-ansi-language:EN-US;"&gt;&lt;SPAN style="mso-tab-count:2;"&gt;                  &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BACKGROUND:#d9d9d9;MARGIN:0in 0in 0pt 0.25in;"&gt;&lt;SPAN style="mso-ansi-language:EN-US;"&gt;&lt;SPAN style="mso-tab-count:1;"&gt;      &lt;/SPAN&gt;&lt;/script&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="background:#d9d9d9;margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.5in;text-indent:-0.25in;mso-list:l0 level1 lfo1;tab-stops:list .5in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;span style="mso-list:ignore;"&gt;9)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Now edit the “mom vbs” project properties. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 1in;text-indent:-0.25in;mso-list:l0 level2 lfo1;tab-stops:list 1.0in;"&gt;&lt;span style="font-family:symbol;mso-ansi-language:en-us;mso-fareast-font-family:symbol;mso-bidi-font-family:symbol;"&gt;&lt;span style="mso-list:ignore;"&gt;·&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Click the “configuration manager”&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 1in;text-indent:-0.25in;mso-list:l0 level2 lfo1;tab-stops:list 1.0in;"&gt;&lt;span style="font-family:symbol;mso-ansi-language:en-us;mso-fareast-font-family:symbol;mso-bidi-font-family:symbol;"&gt;&lt;span style="mso-list:ignore;"&gt;·&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Create a new configuration. Name it “MOM response via test.cmd”. then close.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 1in;text-indent:-0.25in;mso-list:l0 level2 lfo1;tab-stops:list 1.0in;"&gt;&lt;span style="font-family:symbol;mso-ansi-language:en-us;mso-fareast-font-family:symbol;mso-bidi-font-family:symbol;"&gt;&lt;span style="mso-list:ignore;"&gt;·&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Under “common properties” change the “output type” to “class library” . then Apply&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 1in;text-indent:-0.25in;mso-list:l0 level2 lfo1;tab-stops:list 1.0in;"&gt;&lt;span style="font-family:symbol;mso-ansi-language:en-us;mso-fareast-font-family:symbol;mso-bidi-font-family:symbol;"&gt;&lt;span style="mso-list:ignore;"&gt;·&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Under “Debugging” change the “start application” to “c:\windows\system32\cmd.exe”. then apply&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 1in;text-indent:-0.25in;mso-list:l0 level2 lfo1;tab-stops:list 1.0in;"&gt;&lt;span style="font-family:symbol;mso-ansi-language:en-us;mso-fareast-font-family:symbol;mso-bidi-font-family:symbol;"&gt;&lt;span style="mso-list:ignore;"&gt;·&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Under “Debugging” change the “command line Arguments” to “/t test.cmd”. then apply an OK.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;If you done this all you can now press F5 and it will run the test1.vbs code. The output is stored in the directory where you installed the responsetest.exe and is named “test1_RESPONSE.xml”. Drag this file into your project and set the view mode to DATA. Now you will see all the events (1) that the MOM script “test1.vbs” will create if it runs in MOM. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;u&gt;&lt;span style="font-size:14pt;mso-ansi-language:en-us;"&gt;!!!! Be aware that all vb code is executed in real. Only the mom events / performance events are simulated !!!!!!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;see also: &lt;a href="http://www.microsoft.com/technet/scriptcenter/topics/mom/mom3.mspx"&gt;http://www.microsoft.com/technet/scriptcenter/topics/mom/mom3.mspx&lt;/a&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;Here some action screen shots: &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;u&gt;Editing the MP:&lt;/u&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;img src="http://blogs.infosupport.com/images/blogs_infosupport_com/michelk/206/r_screen1.JPG"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;u&gt;Editing the parameters:&lt;/u&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;a href="http://blogs.infosupport.com//images/blogs_infosupport_com/michelk/206/r_screen1.JPG"&gt;&lt;img src="http://blogs.infosupport.com/images/blogs_infosupport_com/michelk/206/r_screen2.JPG"&gt;&lt;/a&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;u&gt;Viewing the results:&lt;/u&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&lt;img src="http://blogs.infosupport.com/images/blogs_infosupport_com/michelk/206/r_screen3.JPG"&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="mso-ansi-language:en-us;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=9353" width="1" height="1"&gt;</description></item><item><title>MOM 2005 MOBILE PHONE OPERATOR CONSOLE</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/06/14/7818.aspx</link><pubDate>Wed, 14 Jun 2006 09:47:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:7818</guid><dc:creator>michel kamp</dc:creator><slash:comments>13</slash:comments><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;STRONG&gt;&lt;U&gt;MOM 2005 MOBILE PHONE OPERATOR CONSOLE&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Yesterday I&amp;#8217;ve managed to get the mom mobile phone console working. So what you say&amp;#8230; Ok look at the source . It is in Chinese language and Microsoft says the wont bring out an English version. . After what testing I figured out that you can change it to English easily. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Because they used resource files and the programmed it also (??) for the English language you can change the language to English in the web.config.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Here are the steps I&amp;#8217;ve taken:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Download the &amp;#8220;mom2005Mpc.exe&amp;#8221; at &lt;A href="http://www.microsoft.com/japan/mom/evaluation/mpc.mspx"&gt;http://www.microsoft.com/japan/mom/evaluation/mpc.mspx&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Download and Install the &amp;#8220;mobile components update 4.0&amp;#8221; from &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=02FA15FE-40D9-4DCE-9BB1-4DD61A5B7CCB&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=02FA15FE-40D9-4DCE-9BB1-4DD61A5B7CCB&amp;amp;displaylang=en&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Install the &amp;#8220;mom2005Mpc.exe&amp;#8221; . Just click the buttons you normally will click. Choose all the programs to install. The setup will create 2 websites on the given ports (default 1280 and 1281). It will also create an database MOMMPC on the database server you selected during the install. This database will contain 3 tables and stored procedures needed for the web service to authenticate the mobile devices.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Connect to the mobile phone console website &lt;A href="http://localhost:1280/default.aspx"&gt;http://localhost:1280/default.aspx&lt;/A&gt; You will see this in Chinese&amp;#8230;. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Change for the MobilePhoneConsole website the web.config as following. Search the text &amp;#8220;DefaultLocaleId&amp;#8221; and change the value to 1033. This is English US. Now we are almost there.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Connect again to &lt;A href="http://localhost:1280/default.aspx"&gt;http://localhost:1280/default.aspx&lt;/A&gt; . You will see this in English. Log on with a correct user that has mom privileges. I used the local administrator. Now you will see the &amp;#8220;device not approved&amp;#8221; message.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Go to the SQL server where the database MOMMPC and tables are created. Go to the table &amp;#8220;MPChwId&amp;#8221; . Query the table. You will see an entry in it . Change for al rows the vaule from the column &amp;#8220;IdStatus&amp;#8221; to 2. And change the &amp;#8220;LocaleId&amp;#8221; to 1033.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Connect to &lt;A href="http://localhost:1280/default.aspx"&gt;http://localhost:1280/default.aspx&lt;/A&gt; And you will see it WORKS!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Have fun with it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&amp;nbsp;Michel&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=7818" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category></item><item><title>MOM 2000/2005 WAP Operator Console is born!.</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/03/12/MOM-2000_2F00_2005-WAP-Operator-Console-is-born_2100__2E00_.aspx</link><pubDate>Sun, 12 Mar 2006 09:15:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:4334</guid><dc:creator>michel kamp</dc:creator><slash:comments>5</slash:comments><description>&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;strong&gt;&lt;u&gt;MOM 2000/2005 WAP Operator Console is born.&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;Past week I had a great idea. We are now sending SMS alerts to our standby phone. This is working O.K but the problem was that the standby operator was getting multiply SMS parts because the alert message was longer than 160 chars. I had to figure out to get a fast and costless solution for this. I thought about this:&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span&gt;1)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Get a XDA or PDA smart phone. &lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Send the alert as email to the standby operator mail box. Since Exchange SP2 you are getting right-on &lt;span&gt;&amp;nbsp;&lt;/span&gt;your messages.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Problem: You must have a XDA/PDA smart phone and an GPRS/UMTS connection.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span&gt;2)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Get a XDA or PDA smart phone.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Connect with the PDA internet explorer to the MOM web operator console and browse the alerts/events.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Problem: The web console is not written for a PDA screen resolution. So you are spending more time clicking on the scroll bars than reading you alerts.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span&gt;3)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Get a XDA or PDA smart phone.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Connect with the PDA internet explorer to the MOM Mobile operator console and browse the alerts/events. Seems the perfect solution. BUT&amp;hellip;. &lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Problem: Yea sure , Microsoft hasn&amp;rsquo;t writing one yet. They have indeed written one but that&amp;rsquo;s a Chinese version. (by the way : I have the source code , and I&amp;rsquo;m trying to translate this one&amp;hellip;)&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span&gt;4)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;OR&amp;hellip; You&amp;rsquo;re using your old Nokia phone (with WAP function)&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;So now we still send 1 SMS to this phone. This SMS is only saying that a &amp;ldquo;source&amp;rdquo; is in service unavailable state. The operator then connects with WAP to the MOM operator WAP console. Read the Alert information and browse other alerts/events.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;Option 4 is the solution I&amp;rsquo;m going to explain. This one is written in 30min and installed in 5min. You don&amp;rsquo;t have to get to your boss and ask for a XDA/PDA investment, just use your old WAP compatible phone. I have written this one in my private time so I will share some code.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;Short steps I&amp;rsquo;ve taken:&lt;/p&gt;&lt;ol style="margin-top:0cm;"&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Open a new project in visual studio named: Mobile Web application &lt;/li&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Drag a new form on it. &lt;/li&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Drag a Object &lt;span&gt;&amp;nbsp;&lt;/span&gt;List on this form &lt;/li&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Drag 3 buttons on it. (or more) &lt;/li&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Name the button: SU alerts , CE alerts , Error Alerts&lt;span&gt;&amp;nbsp; &lt;/span&gt;etc.. &lt;/li&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Click on the (example CE alerts) button and assign a action. &lt;/li&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;The action is a procedure I will explain below. For now just fill in this code:&lt;/li&gt;&lt;/ol&gt;&lt;div style="background:#e6e6e6;border:windowtext 1pt solid;padding:1pt;"&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; Command2_Click(&lt;span style="color:blue;"&gt;object&lt;/span&gt; sender, System.EventArgs e)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;try&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// ResolutionState=0, Severity=70 critial error&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;GetAlerts(0,70);&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;catch&lt;/span&gt;(System.Exception err)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Label1.Text = &amp;quot;Fatal error : &amp;quot; + err.Message;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;ol style="margin-top:0cm;"&gt;&lt;li class="MsoNormal" style="margin:0cm 0cm 0pt;tab-stops:list 36.0pt;"&gt;Now we are getting to the main part of this console. The Getalerts() procedure.&lt;/li&gt;&lt;/ol&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;This procedure is for now using the (old unsupported?) MOM WMI interfaces. But you can however simple use the SDK MOM SQL views for this. That&amp;rsquo;s up to you!. I&amp;rsquo;m using for now the WMI &lt;font face="Courier New" size="2"&gt;MSFT_Alert &lt;/font&gt;interfaces to retrieve the alerts with a specific resolution state.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;Here&amp;rsquo;s the code:&lt;/p&gt;&lt;div style="background:#e6e6e6;border:windowtext 1pt solid;padding:1pt;"&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; GetAlerts(&lt;span style="color:blue;"&gt;int&lt;/span&gt; ResolutionState, &lt;span style="color:blue;"&gt;int&lt;/span&gt; Severity )&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;try&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; sMOMserver = &amp;quot;.&amp;quot;;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ManagementScope scope = &lt;span style="color:blue;"&gt;new&lt;/span&gt; ManagementScope(&amp;quot;\\\\&amp;quot;+ sMOMserver +&amp;quot;\\root\\mom&amp;quot;);&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// display where to get the data&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Label2.Text = &amp;quot;MOM &amp;quot; + sMOMserver;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Create a DataSet (only needed if you want to save to XML ) &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;System.Data.DataSet ds = &lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Data.DataSet(); &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Create a DataTable to hold our results &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;System.Data.DataTable dt = &lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Data.DataTable(&amp;quot;Alerts&amp;quot;);&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Add the table to the dataset &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ds.Tables.Add(dt); &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Create columns for our data &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;dt.Columns.Add(&lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Data.DataColumn(&amp;quot;DateTime&amp;quot;, &lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(DateTime))); &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;dt.Columns.Add(&lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Data.DataColumn(&amp;quot;Type&amp;quot;, &lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(String)));&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;dt.Columns.Add(&lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Data.DataColumn(&amp;quot;Name&amp;quot;, &lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(String)));&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;dt.Columns.Add(&lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Data.DataColumn(&amp;quot;Message&amp;quot;, &lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(String)));&lt;span&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; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;scope.Connect();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ObjectQuery query= &lt;span style="color:blue;"&gt;new&lt;/span&gt; ObjectQuery(&amp;quot;Select * from MSFT_Alert where ResolutionState=&amp;quot; + ResolutionState.ToString() +&amp;quot;&lt;span&gt;&amp;nbsp; &lt;/span&gt;and Severity= &amp;quot; + Severity.ToString() ); &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ManagementObjectSearcher searcher = &lt;span style="color:blue;"&gt;new&lt;/span&gt; ManagementObjectSearcher(scope, query);&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;DateTime TimeLastModified = &lt;span style="color:blue;"&gt;new&lt;/span&gt; DateTime();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Loop through each item in the collection &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;foreach&lt;/span&gt;( System.Management.ManagementObject queryObj &lt;span style="color:blue;"&gt;in&lt;/span&gt; searcher.Get() )&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{ &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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; &lt;/span&gt;&lt;span style="color:green;"&gt;// convert the WMI datetime to a GM date time&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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; &lt;/span&gt;TimeLastModified = ManagementDateTimeConverter.ToDateTime(queryObj[&amp;quot;TimeLastModified&amp;quot;].ToString());&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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; &lt;/span&gt;&lt;span style="color:green;"&gt;// Add a row of data to our table &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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; &lt;/span&gt;dt.Rows.Add(&lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:blue;"&gt;object&lt;/span&gt;[] {&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;TimeLastModified,&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;queryObj[&amp;quot;Severity&amp;quot;],&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;queryObj[&amp;quot;Name&amp;quot;],&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;queryObj[&amp;quot;Description&amp;quot;] } ); &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Label2.Text = &amp;quot;ROWS: &amp;quot; + dt.Rows.Count.ToString();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// sort on datetime&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;DataView dv = &lt;span style="color:blue;"&gt;new&lt;/span&gt; DataView(dt);&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;dv.Sort = &amp;quot;DateTime DESC&amp;quot;;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ObjectList1.DataSource = dv;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ObjectList1.DataBind(); &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;catch&lt;/span&gt;(ManagementException err)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Label1.Text = &amp;quot;An error occurred while querying for WMI data: &amp;quot; + err.Message;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;catch&lt;/span&gt;(System.UnauthorizedAccessException unauthorizedErr)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Label1.Text = &amp;quot;Connection error (user name or password might be incorrect): &amp;quot; + unauthorizedErr.Message;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;catch&lt;/span&gt;(System.Exception err)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Label1.Text = &amp;quot;Fatal error : &amp;quot; + err.Message;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&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;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="background:#e6e6e6;margin:0cm 0cm 0pt;border:medium none;padding:0cm;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;9)&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Now you build the project and deploy it on your MOM server. This is a WEB project so it must be deployed as a IIS web application. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;10)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Open a internet explorer and browse to the IIS application site you have created. And now you must see the create WAP site. If so. Then you&amp;rsquo;re ready to test it with the WAP phone.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;tab-stops:list 36.0pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;11)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Open with the phone the WAP URL. I&amp;rsquo;ve created a bookmark so it can be request easily.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;This is it up to now. You can easily extend this MOM WAP console and even get a trend performance graph in to it&amp;hellip; But that&amp;rsquo;s up to you.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Hope this helps..&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Any questions are welcome&amp;hellip;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Michel&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;See for project download: &lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;a href="http://blogs.infosupport.com/files/folders/11170/download.aspx"&gt;http://blogs.infosupport.com/files/folders/11170/download.aspx&lt;/a&gt;&lt;/p&gt;&amp;nbsp;&lt;a href="http://blogs.infosupport.com/files/folders/11170/download.aspx"&gt;http://blogs.infosupport.com/files/folders/11170/download.aspx&lt;/a&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt 18pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=4334" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category></item><item><title>[HOWTO] Installatie SNMP op de MOM management server</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/02/21/3892.aspx</link><pubDate>Tue, 21 Feb 2006 13:36:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:3892</guid><dc:creator>michel kamp</dc:creator><slash:comments>0</slash:comments><description>&lt;H2 style="MARGIN: 12pt 0in 3pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana; mso-fareast-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;&lt;EM&gt;Sorry , only in Dutch. Use &lt;/EM&gt;&lt;A class=l onmousedown="return clk(this.href,'res','1','')" href="http://babelfish.altavista.com/"&gt;&lt;FONT color=#0000cc&gt;AltaVista's &lt;B&gt;Babelfish&lt;/B&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;EM&gt; to translate&lt;/EM&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;H2 style="MARGIN: 12pt 0in 3pt"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana; mso-fareast-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;EM&gt;&lt;FONT face=Verdana&gt;1.1&lt;/FONT&gt;&lt;/EM&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="mso-fareast-language: NL"&gt;&lt;EM&gt;&lt;FONT face=Verdana&gt;Installatie SNMP op de MOM management server&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL; mso-fareast-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL; mso-fareast-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Voor dat SNMP in combinatie met MOM gebruikt kan worden op Windows 2003 moet er een aantal onderdelen ge&amp;#239;nstalleerd en geconfigureerd worden. SNMP in combinatie met MOM werkt via een WMI interface.&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;In het kort is de werkwijze alsvolgt:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL; mso-fareast-language: NL"&gt;Een SNMP device heeft een aantal counters welke uit gelezen kunnen worden. De counters kunnen via een O.I.D (object indentifier ) uitgelezen worden. Een OID is een cijfer reeks gescheiden door punten. ( bijvoorbeeld: 1.0.2.3.42 ). Aangezien zo&amp;#8217;n OID niets zeggend is maakt men gebruik een mapping naar echte namen . Deze koppeling tussen OID en een naam wordt in een MIB file gezet. Op deze mannier kan men via een SNMP object naam de counter opvragen. MOM heeft standaard niet de mogelijkheid om via een SNMP reader direct een SNMP device uit telezen. Dit wordt opgelost door een WMI SNMP Provider. Deze WMI provider werkt als een soort Proxy. Men kan dus direct een WQL query lost laten op deze WMI class zonder enige SNMP MIB kennis te hoeven hebben. De WMI SNMP provider zal de SNMP object gegevens ophalen en deze als een WMI class terug geven. Voor dat dit goed gaat werken moet er in WMI nog wel de MIB definities omgezet worden naar MOF definities. (omdat WMI alleen met MOF werkt). Je maakt als het ware een transformatie van de MIB naar MOF classes. Dit moet men doen met de &lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;Smi2smir&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt; compiler. Indien de translatie goed is gegaan moet de net gegenereerde MOF file in WMI gezet worden met het &lt;B style="mso-bidi-font-weight: normal"&gt;Mofcomp&lt;/B&gt; commando. Nu zijn de WMI MOF classes aanwezig maar nog niet via de normale WQL aanroep bruikbaar. De WMI SNMP provider weet namelijk nog niet welke device uitgelezen moet worden. Dit moet men aangeven in de context van de WMI connectie welke op 2 mannier uitgevoerd kan worden. Via een WMI namespace of in het WMI connectie object zelf. De meest gemakkelijke methode is deze op te nemen in het WMI connectie object.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;De onderstaande procedures beschrijven de installatie en configuratie.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 12pt 0in 3pt"&gt;&lt;A name=installing_the_snmp_provider&gt;&lt;/A&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.1&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL&gt;&lt;FONT face=Verdana&gt;Installatie WMI SNMP provider.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Voer uit op de MOM management server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo2; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Via de Control Panel, selecteer Add/Remove Programs. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo2; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Selecteer Add/Remove Windows Components, daarna Windows Components Wizard, en selecteer Management and Monitoring Tools. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo2; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Selecteer Simple Network Management Protocol en de WMI SNMP Provider, en druk op OK. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 12pt 0in 3pt"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.2&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL&gt;&lt;FONT face=Verdana&gt;SNMP Security instellen&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Na dat de installatie is uitgevoerd is de management server dus niet alleen een WMI SNMP proxy maar ook een SNMP device/trap receiver. Dit laatste kan een security issue zijn. Dus moeten we onder andere de &lt;B style="mso-bidi-font-weight: normal"&gt;Community string&lt;/B&gt; aanpassen.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo6; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Selecteer &lt;B style="mso-bidi-font-weight: normal"&gt;Computer Management -&gt; Services -&gt; SNMP Service -&gt; Security.&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l2 level1 lfo5; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Voeg toe in de &amp;#8220;accepted community names&amp;#8221; table:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;Public&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt; met rights &lt;B style="mso-bidi-font-weight: normal"&gt;READ ONLY. &lt;/B&gt;Is alleen voor test noodzakelijk. Aangezien we de management server in &amp;#8216;productie&amp;#8217; niet gaan uitlezen met als SNMP device. Daarvoor hebben we immers WMI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 3.75pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l2 level1 lfo5; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Activeer de &amp;#8220;Accept SNMP packets from any host&amp;#8221;. Zodat we ook de SNMP TRAPs kunnen ontvangen. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 12pt 0in 3pt"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.3&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL&gt;&lt;FONT face=Verdana&gt;Aanmaken WMI SNMP namespace.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Voordat de SNMP proxy provider weet van welk device deze de gegevens moet uitlezen, moet er een content namespace aangemaakt worden. Voer de onderstaande code uit mbv &lt;B style="mso-bidi-font-weight: normal"&gt;mofcomp &lt;file.mof&gt; &lt;/B&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;Je kunt deze actie , na aanpassing van de gegevens , voor elk SNMP device dat je wilt uitlezen uitvoeren , maar ook kun je in de programma code zelf deze gegevens dynamisch aanpassen. (voorkeur)&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;// Load classes and instances into &lt;\\.\root&gt; namespace&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;#pragma namespace("\\\\.\\root\\snmp")&lt;SPAN style="mso-spacerun: yes"&gt;               &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;[ &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentAddress( "localhost" ), &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentReadCommunityName( "public"), &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentWriteCommunityName( "private"), &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentRetryCount( 1 ), &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentRetryTimeout( 500 ), &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentVarBindsPerPdu( 10 ),&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;AgentFlowControlWindowSize ( 3 ) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;instance of __Namespace&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;Name = "localhost" ;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;};&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 12pt 0in 3pt"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.4&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL&gt;&lt;FONT face=Verdana&gt;Transformatie MIB naar MOF&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;In eerste instantie is er alleen de MIB file RFC1213 ge&amp;#239;nstalleerd, verder zijn er nog geen MIB classes omgezet en daarom zijn er ook geen MOF classes aanwezig voor de WMI SNMP provider (zie de namespace: root\snmp\SMIR). Windows 2003 bevat standaard een aantal MIB files welke informatie van Windows platforms kunnen uitlezen. Indien je ook Windows computers wilt monitoren met behulp van SNMP Proxy dan moeten we deze MIB files ook importeren , in alle andere gevallen hoef je alleen de SNMP MIB files importeren welke bij het te monitoren device behoren:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H4 style="MARGIN: 12pt 0in 3pt 0.6in"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.4.1&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;                   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT face=Verdana&gt;Windows platform&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H4&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Indien men Windows devices gaat uitlezen is het onderstaande noodzakelijk. Open een command prompt en voer uit: &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;cd %windir%\system32\wbem\SNMP&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\hostmib.mib &gt; hostmib.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\ipforwd.mib &gt; ipforwd.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\nipx.mib &gt; nipx.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\mib_ii.mib &gt; mib_ii.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\lmmib2.mib &gt; lmmib2.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\mcastmib.mib &gt; mcastmib.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\rfc2571.mib &gt; rfc2571.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\wfospf.mib &gt; wfospf.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\dhcp.mib ..\..\msft.mib &gt; dhcp.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\wins.mib ..\..\msft.mib &gt; wins.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\mipx.mib ..\..\msft.mib &gt; mipx.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\mripsap.mib ..\..\msft.mib &gt; mripsap.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\msipbtp.mib ..\..\msft.mib &gt; msipbtp.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Smi2smir /g ..\..\msiprip2.mib ..\..\msft.mib &gt; msiprip2.mof&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H4 style="MARGIN: 12pt 0in 3pt 0.6in"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.4.2&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;                   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT face=Verdana&gt;NON-windows bijvoorbeeld CISCO routers&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H4&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT face=Verdana size=2&gt;In dit voorbeeld gaan gaan we de CPU belasting uit een CISCO router uitlezen. Hier voor heb je de volgende MIB file nodig: OLD-CISCO-CPU-MIB . Er zijn hier 2 versies van namelijk V1 en V2. Gebruik hier voor V1. Download via: &lt;/FONT&gt;&lt;A href="http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&amp;step=2"&gt;&lt;FONT face=Verdana size=2&gt;http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&amp;step=2&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Deze MIB file heeft echter dependicies welke dus eerst geladen moeten worden. Download via:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;A href="http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&amp;step=2&amp;mibName=OLD-CISCO-CPU-MIB"&gt;&lt;FONT face=Verdana size=2&gt;http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&amp;step=2&amp;mibName=OLD-CISCO-CPU-MIB&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt; de onder staande files:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l3 level1 lfo3; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&amp;#183;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;SNMPv2-SMI (sla op als SNMPv2-SMI&lt;/SPAN&gt;&lt;FONT size=2&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;.my.txt )&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l3 level1 lfo3; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&amp;#183;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;CISCO-SMI (sla op als CISCO-SMI&lt;/SPAN&gt;&lt;FONT size=2&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;.my.txt )&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l3 level1 lfo3; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&amp;#183;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;RFC-1212 (= gelijk aan de RFC-1213 welke reeds ge&amp;#239;nstalleerd is)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l3 level1 lfo3; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&amp;#183;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;OLD-CISCO-CPU-MIB (sla op als OLD-CISCO-CPU-MIB&lt;/SPAN&gt;&lt;FONT size=2&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;.my.txt )&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Nu we de MIB files hebben moeten deze omgezet worden naar een MOF file en daarna moet de MOF files in WMI geladen worden. Voer het volgende commando uit op de locatie waar de MIB files staan:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-COLLAPSE: collapse; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 480" cellSpacing=0 cellPadding=0 border=0&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 16.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=22&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT size=2&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 433.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=578&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT face=Verdana&gt;%windir%\system32\wbem\SNMP\&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;smi2smir.exe /g OLD-CISCO-CPU-MIB.my.txt CISCO-SMI-V1SMI.my.txt &gt;&gt; CISCO-OLD-CPU.MOF&lt;/SPAN&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 16.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=22&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT size=2&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 433.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=578&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT size=2&gt;mofcomp CISCO-OLD-CPU.MOF&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Er mogen geen fouten optreden tijdens deze acties. Check daarom bij regel 1 op de tekst:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;MOF file has been successfully parsed&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Storing data in the repository...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Done! &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;En bij regel 2 op :&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;C:\WINDOWS\system32\wbem\SNMP\smi2smir.exe : Semantic Check successful on "OLD-CISCO-CPU-MIB.my.txt"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;C:\WINDOWS\system32\wbem\SNMP\smi2smir.exe: Generated MOF successfully&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Als deze bovengenoemde tekst aanwezig is dan hebben we een mogelijk werkende SNMP configuratie. In de onderstaande stap wordt uitgelegd hoe we dit kunnen testen.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;B&gt;&lt;SPAN lang=NL style="FONT-SIZE: 13pt; FONT-FAMILY: Verdana; mso-bidi-font-family: Arial; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: NL; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;BR style="PAGE-BREAK-BEFORE: always" clear=all&gt;&lt;/SPAN&gt;&lt;/B&gt;
&lt;H3 style="MARGIN: 12pt 0in 3pt"&gt;&lt;SPAN lang=NL style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana&gt;1.1.5&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL&gt;&lt;FONT face=Verdana&gt;Test SNMP&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Met de volgende &lt;B style="mso-bidi-font-weight: normal"&gt;VB script&lt;/B&gt; applicatie kunnen we de WMI SNMP Proxy testen. Voordat het script uitgevoerd kan worden moet eerst de content aangepast worden zodat deze naar het juiste SNMP device wijst. Pas hiervoor regel 6 aan met het &lt;B style="mso-bidi-font-weight: normal"&gt;IP&lt;/B&gt; nummers (of DNS naam) van het SNMP device en verander regel 7 met de juiste &lt;B style="mso-bidi-font-weight: normal"&gt;community string&lt;/B&gt;. Voer daarna het script uit op de MOM management server mbv &lt;B style="mso-bidi-font-weight: normal"&gt;cscript&lt;/B&gt; &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;file.vbs&gt;&lt;/B&gt; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-COLLAPSE: collapse; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 480; mso-table-layout-alt: fixed" cellSpacing=0 cellPadding=0 border=0&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;1.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Set wmiLocator = CreateObject("WbemScripting.SWbemLocator")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;2.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;wmiLocator.Security_.ImpersonationLevel = 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;3.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Set wmiService = wmiLocator.ConnectServer(, "root\snmp\localhost")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;4.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 4"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;5.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Set wmiContext = CreateObject("WbemScripting.SWbemNamedValueSet")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 5"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;6.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Set strNamedValue = wmiContext.Add("AgentAddress", "127.0.0.1")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 6"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;7.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Set strNamedValue = wmiContext.Add("AgentReadCommunityName", "public")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 7"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;8.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 8"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;9.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;      &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Set mibDataObjects = wmiService.ExecQuery ("Select * from SNMP_RFC1213_MIB_ifTable", , , wmiContext)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 9"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;10.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;wscript.echo "Count: " &amp; mibDataObjects.count&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 10"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;11.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 11"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;12.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;' Read SNMP values&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 12"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;13.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;For Each mibDataObjecta In mibDataObjects&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 13"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;14.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;'wscript.echo "=============================="&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 14"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;15.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;'wscript.echo "ifDescr: " &amp; mibDataObjecta.Properties_.item("x25OperLocalAddress")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 15"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;16.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;'wscript.echo "ifInNUcastPkts: " &amp; cstr(mibDataObjecta.Properties_.item("ifInNUcastPkts"))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 16"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;17.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;wscript.echo "=============================="&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 17"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;18.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 18"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;19.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;            &lt;/SPAN&gt;For Each mibDataObject in mibDataObjecta.Properties_&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 19"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;20.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 2"&gt;                        &lt;/SPAN&gt;If Not IsNull( mibDataObject.Name ) Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 20"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;21.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;                                    &lt;/SPAN&gt;str = mibDataObject.Name&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 21"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;22.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;            &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="mso-tab-count: 2"&gt;                       &lt;/SPAN&gt;str = str &amp; " == "&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 22"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;23.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;                                    &lt;/SPAN&gt;str = str &amp; mibDataObject.Value&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 23"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;24.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;                                    &lt;/SPAN&gt;WScript.Echo str&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 24"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;25.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 2"&gt;                        &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 25"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;26.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;            &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 26"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;27.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;wscript.echo "=============================="&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 27"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;28.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 28; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 41.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=55&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l5 level1 lfo4; tab-stops: list .5in"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: Arial; mso-ansi-language: NL"&gt;&lt;SPAN style="mso-list: Ignore"&gt;29.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 417.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=557&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="FONT-SIZE: 9.5pt; COLOR: black; FONT-FAMILY: Arial; mso-ansi-language: NL"&gt;Next&lt;/SPAN&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;In dit script wordt een SNMP class uitgelezen welke op de MOM management server aanwezig is , namelijk de &lt;B style="mso-bidi-font-weight: normal"&gt;ifTable&lt;/B&gt; uit de &lt;B style="mso-bidi-font-weight: normal"&gt;RFC1213&lt;/B&gt; MIB waarin alle netwerk interfaces staan. Als alles goed is geconfigureerd zou je de onderstaande uitvoer moeten zien (kan afwijken als er meerdere netwerkkaarten aanwezig zijn):&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt"&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Microsoft (R) Windows Script Host Version 5.6&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Count: 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;==============================&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifAdminStatus == up&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifDescr == Intel(R) PRO/100 Network Connection&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifIndex == 65539&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifInDiscards == 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifInErrors == 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifInNUcastPkts == 323401&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifInOctets == 1314208699&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifInUcastPkts == 2398296&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifInUnknownProtos == 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifLastChange == 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifMtu == 1500&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOperStatus == up&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOutDiscards == 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOutErrors == 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOutNUcastPkts == 3443&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOutOctets == 531226388&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOutQLen == 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifOutUcastPkts == 2206851&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifPhysAddress == 00:06:5b:3d:6e:15&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifSpecific == 0.0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifSpeed == 100000000&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;ifType == ethernet-csmacd&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;==============================&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;o:p&gt;&lt;FONT face=Verdana size=2&gt; Hopelijk heeft deze HOWTO je geholpen. Mijzelf in iedergeval wel ;-) &lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=NL style="mso-ansi-language: NL"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT face=Verdana size=2&gt;  &lt;/FONT&gt;&lt;/SPAN&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.infosupport.com/aggbug.aspx?PostID=3892" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/WINDOWS+2003/default.aspx">WINDOWS 2003</category><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/WMI/default.aspx">WMI</category></item><item><title>Automatically Refreshing the Perf View in the MOM console</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/01/18/3477.aspx</link><pubDate>Wed, 18 Jan 2006 05:11:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:3477</guid><dc:creator>michel kamp</dc:creator><slash:comments>0</slash:comments><description>&lt;FONT face=Verdana color=#000000 size=2&gt;
&lt;H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000&gt;&lt;FONT size=1&gt;spotted on: &lt;/FONT&gt;&lt;A href="http://blogs.technet.com/momteam/archive/2005/07/03/407231.aspx"&gt;&lt;FONT size=1&gt;http://blogs.technet.com/momteam/archive/2005/07/03/407231.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A id=_ctl0__ctl0__ctl0__ctl0_CategoryView__ctl0_postlist__ctl0_EntryItems__ctl9_PostTitle href="http://blogs.technet.com/momteam/archive/2005/07/03/407231.aspx"&gt;Automatically Refreshing the Perf View in the MOM console&lt;/A&gt;&lt;/P&gt;&lt;/H2&gt;&lt;/FONT&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Quite a few customers have asked 'Why doesn&amp;#8217;t the performance view automatically refresh like the other views in the operator console?"&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This is a great question.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;There are basically two reasons for this:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana size=2&gt;1.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;The performance view takes quite a bit of processing power on the database to generate.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Having the performance view open and refreshing every 30 seconds (default view refresh rate) would be a pretty heavy load on the database.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-bidi-font-family: Verdana; mso-fareast-font-family: Verdana"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Verdana size=2&gt;2.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;More important - MOM only collects a performance counter sample every 15 minutes or so for each performance counter.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The frequency depends on the rule but most of the rules shipped in the Management Packs for Microsoft products sample every 15 minutes.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;So - if you had the performance view open looking at CPU utilization on a particular computer. It would refresh every 30 seconds but the view would remain unchanged for 15 minutes until you had a new sample come into the database.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;For those, reasons we disabled the automatic view refresh in the MOM 2005 operator console.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However, there are definitely some scenarios where you do want to have automatic refresh.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You may collect performance samples frequently enough for a particular counter that it would make sense to automatically refresh the view.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Or, you may want to project some statistics on a large screen in your data center.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Whatever the case, people have asked me how to do it.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You can&amp;#8217;t do it using the console itself.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;But you can use a send key script to refresh the console "automatically" by simulating pushing F5 ("Refresh").&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Here is a basic example of the script:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#ff9900 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;Set WshShell = WScript.CreateObject("WScript.Shell")&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;Do While 1=1&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;WScript.Sleep 5000&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;WshShell.SendKeys "{F5}"&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;Loop&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#ff9900 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Explanation of code: &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Do While 1=1 sets up an infinite loop.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This loop will run until you terminate the process.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;WScript.Sleep is a pause command.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It will pause for 5000 milliseconds (5 seconds).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You can change this number to whatever interval you want.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The SendKeys method will send whatever key stroke combination you want.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For a full list of commands you can send see the SendKeys Method section of the MSDN library.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;To use this code do the following:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;1)&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Open Notepad&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;2)&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Copy the code into the notepad window&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;3)&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Save the file as 'Refresh.vbs' on your desktop or somewhere else&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;4)&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Launch the operator console and navigate to the performance view that you want to automatically refresh&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;5)&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Execute the Refresh.vbs file&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;6)&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Make the MOM console the active window&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;This will only work for situations where you are not actually using the computer because it will send a F5 keystroke to whatever the active window is.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;To stop the script you need to open Task Manager and select the wscript.exe process and click the End Process button.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;If you want to make the script a little more sophisticated and cycle through a bunch of Windows you can make a script like this:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#ff9900 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;Set WshShell = WScript.CreateObject("WScript.Shell")&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;Do While 1=1&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;WScript.Sleep 5000&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;WshShell.SendKeys "%{TAB 3}"&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;WScript.Sleep 500&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;WshShell.SendKeys "{F5}"&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;Loop&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Replace the number after 'TAB' with the number of windows you want to cycle between minus one.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;FONT color=#000000&gt;Another frequent question I get is how to refresh the web console.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The web console does not refresh automatically by default.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Fortunately, it is trivial to make it refresh automatically.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=#000000 size=2&gt;Add the following code to the default.aspx page inside the &amp;lt;Head&amp;gt; tags:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Verdana color=#ff9900 size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&amp;lt;Head&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&amp;lt;meta HTTP-EQUIV="Refresh" CONTENT="360" /&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&amp;lt;/Head&amp;gt;&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=3477" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category></item><item><title>Take Control of your MOM 2005 Operator Console</title><link>http://blogs.infosupport.com/blogs/michelk/archive/2006/01/18/3476.aspx</link><pubDate>Wed, 18 Jan 2006 04:54:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:3476</guid><dc:creator>michel kamp</dc:creator><slash:comments>2</slash:comments><description>&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN lang=NL style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;
&lt;H2&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN lang=NL style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Spotted on : &lt;A href="http://blogs.technet.com/momteam/archive/2005/08/03/408629.aspx"&gt;http://blogs.technet.com/momteam/archive/2005/08/03/408629.aspx&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;/FONT&gt;&lt;/P&gt;&lt;/H2&gt;
&lt;H2&gt;Take Control of your MOM 2005 Operator Console Experience with .omc Files&lt;/H2&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;The MOM 2005 Operator Console has a great hidden feature most people don't know about - .omc files!&amp;nbsp; A .omc file is a file which stores your personalization settings for the console session.&amp;nbsp; You can do a File/Save As at any time to start a new .omc file.&amp;nbsp; From then on, while you have the file "open" your personalization settings will be stored in the .omc file.&amp;nbsp; You can then put the .omc file on your desktop and open the console to a personalized view of the console.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Things that are stored in the .omc file:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Connection settings such as which Management Server to connect to. &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Column hide/show settings per view &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Column size settings per view &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Column order settings per view &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Column sort order per view &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Number of panes - if you use the multipane view feature &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Last view (or views in multipane) that you were looking at &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Other stuff - open a .omc file in notepad to browse the XML and see what other stuff is stored in there&lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;How is this useful?&amp;nbsp; Here are some ideas how to take advantage of this feature:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Save a .omc file for each of the Management Groups that you connect to on your desktop.&amp;nbsp; Then you can connect directly to the Management Group you need to without having to go to File/Console Settings to change it. &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Save a .omc file for a particular layout of a multipane console &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Use a single .omc file that all of your operators launch the console from so that they all get a consistent experience &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Save a .omc file for a favorite view that you like to start in.&amp;nbsp; That way when you launch the console you can always start there instead of the last view that you looked at. &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Launch the console from the command line or Start/Run by pointing to the .omc file &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Store your .omc file in a location that you normally backup files in to preserve your customizations in case of a disk failure.&lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Give it a try!&amp;nbsp; Here are the steps:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Open the console &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Go the main menu and choose File/Save As &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Choose a location where you want to save your .omc file &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Get the console configured the way that you want - the changes you make will be written to the .omc file while you work &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;File/Save at any time or close the console which will save the .omc file before exiting &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: orange; FONT-FAMILY: Verdana"&gt;&lt;FONT color=#000000&gt;Open the console by launching the .omc file instead of the usual Start/Program Files method&lt;BR&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/SPAN&gt;&lt;/FONT&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN lang=NL style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;A href="http://blogs.technet.com/momteam/archive/2005/08/03/408629.aspx"&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=3476" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category></item><item><title>Too many SQL connections </title><link>http://blogs.infosupport.com/blogs/michelk/archive/2005/11/09/2276.aspx</link><pubDate>Wed, 09 Nov 2005 07:23:00 GMT</pubDate><guid isPermaLink="false">56f6167b-0c51-4839-ab2d-34653eeb5c9c:2276</guid><dc:creator>michel kamp</dc:creator><slash:comments>13</slash:comments><description>&lt;TABLE cellSpacing=2 cellPadding=2 width=675 align=center border=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class=homepagetext9 noWrap align=left&gt;&lt;B&gt;&lt;U&gt;&lt;FONT color=#333333&gt;Quote:&lt;/FONT&gt;&lt;/U&gt;&lt;/B&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=homepagetext align=left&gt;&lt;PRE class=homepagetext&gt;&lt;HR id=null&gt;&lt;/PRE&gt;&lt;PRE class=homepagetext&gt;We have  many SQL 2000 server, that is not setup as a distributor or a    &lt;/PRE&gt;
&lt;P&gt;publisher. It is not involved in replication. we we have been seeing a bunch of connections on the server from user NT AUTHORITY/SYSTEM application SQLDMO executing exec sp_helpdistpublisher @check_user = 1 a number of times. Why would it be doing that, when the server is not setup for replication. One more thing.. We have MOM2005 SP1 would this be related.. ?? &lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;

&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;I'm getting the same problem. After installing the new SQL MP the connections arn't released.&amp;nbsp;So I started&amp;nbsp;the&amp;nbsp;query analyzer. Exec a sp_who2. The process names where all SQLDMO_&lt;NUMBER&gt; and the SQL statement was &amp;nbsp;exec sp_helpdistpublisher @check_user = 1 . I started a SQL profiles and monitored the server for a while. Then i did a search string&amp;nbsp;with &amp;#8220;exec sp_helpdistpublisher @check_user = 1&amp;#8221;. On the match record i looked at the&amp;nbsp;&amp;#8220;clientProcessID&amp;#8221; . Then i looked in the system task manager what&amp;nbsp;process has this PID. And yes it was the &amp;#8220;MOMHost.exe&amp;#8221;. So YES it is MOM releated. I'm going to see whats the solution.&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Found it on the inet: &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;
&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Quote:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;RESOLUTION:&lt;BR&gt;&lt;BR&gt;To resolve the issue, you changed the contents of the SQL Server 2000 &lt;BR&gt;Replication Monitoring script with the contents of the one from the original &lt;BR&gt;SQL 2000 MP (version 05.0.2746.0000). Since then, the process is now being &lt;BR&gt;released.&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;
&lt;/P&gt;
&lt;P&gt;Ok this solves the problem. I pasted the 05.0.2746.0000 script below:&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;
&lt;/P&gt;
&lt;P&gt;'-------------------------------------------------------------------&lt;BR&gt;' &amp;lt;company&amp;gt;Microsoft Corporation&amp;lt;/company&amp;gt;&lt;BR&gt;' &amp;lt;copyright&amp;gt;Copyright (c) Microsoft Corporation 2003&amp;lt;/copyright&amp;gt;&lt;BR&gt;' &amp;lt;summary&amp;gt;&lt;BR&gt;'&amp;nbsp;&amp;nbsp; Alerts on Replication failures&lt;BR&gt;' &amp;lt;/summary&amp;gt;&lt;BR&gt;'-------------------------------------------------------------------&lt;/P&gt;
&lt;P&gt;option explicit&lt;/P&gt;
&lt;P&gt;'Event Constants&lt;BR&gt;Const EVENTID_INFORMATION = 10701&lt;/P&gt;
&lt;P&gt;Const PROBLEMSTATE_NOTSET = 0&lt;BR&gt;Const PROBLEMSTATE_GREEN = 1&lt;BR&gt;Const PROBLEMSTATE_GREY = 2&lt;BR&gt;Const PROBLEMSTATE_RED = 3&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Const ALERT_SUCCESS = 10&lt;BR&gt;Const ALERT_INFORMATION = 20&lt;BR&gt;Const ALERT_WARNING = 30&lt;BR&gt;Const ALERT_ERROR = 40&lt;BR&gt;Const ALERT_CRITICAL_ERROR = 50&lt;BR&gt;Const ALERT_SECURITY_BREACH = 60&lt;BR&gt;Const ALERT_SERVICE_UNAVAILABLE = 70&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'Other constants&lt;BR&gt;Const SCRIPT_NAME = "SQL Server 2000 Replication Failures"&lt;/P&gt;
&lt;P&gt;Dim g_oSQL&lt;/P&gt;
&lt;P&gt;Sub Main()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim oParams, bInformationEvent, aInstances, sMsgActive&lt;BR&gt;&amp;nbsp;Dim i, sMessage, oEvent&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set g_oSQL = New SQL&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oParams = ScriptContext.Parameters&lt;BR&gt;&amp;nbsp;bInformationEvent = CBool(oParams.Get("InformationEvent"))&lt;BR&gt;&amp;nbsp;Set oParams = Nothing&lt;/P&gt;
&lt;P&gt;&amp;nbsp;aInstances = Split(g_oSQL.GetSQLInstances(),",")&lt;BR&gt;&amp;nbsp;For i = 0 To UBound(aInstances)&lt;BR&gt;&amp;nbsp;&amp;nbsp;If sMsgActive &amp;lt;&amp;gt; "" Then sMsgActive = sMsgActive &amp;amp; ","&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;sMsgActive = sMsgActive &amp;amp; aInstances(i)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;CheckReplicationFailures aInstances(i)&lt;BR&gt;&amp;nbsp;Next&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If bInformationEvent Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;If sMsgActive &amp;lt;&amp;gt; "" Then &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sMessage = "The script '" &amp;amp; SCRIPT_NAME &amp;amp; "' ran.&amp;nbsp; The following instances are available on this server and were checked: " &amp;amp; sMsgActive&lt;BR&gt;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sMessage = "The script '" &amp;amp; SCRIPT_NAME &amp;amp; "' ran.&amp;nbsp; There were no instances currently active on this server"&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_oSQL.CreateEvent EVENTID_INFORMATION, EVENT_TYPE_INFORMATION, sMessage&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;End Sub&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;CheckReplicationFailures&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks for replication failures&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance - the name of the instance to check&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;nothing&lt;BR&gt;'&lt;BR&gt;Function CheckReplicationFailures(sInstance)&lt;BR&gt;&amp;nbsp;dim cnADOConnection&lt;BR&gt;&amp;nbsp;dim rsSQLReplicationFailures&lt;BR&gt;&amp;nbsp;dim strServerName&lt;BR&gt;&amp;nbsp;dim strProv&lt;BR&gt;&amp;nbsp;dim strQuery&lt;BR&gt;&amp;nbsp;dim strDatabaseName&lt;BR&gt;&amp;nbsp;dim sName&lt;BR&gt;&amp;nbsp;dim spath&lt;BR&gt;&amp;nbsp;dim sMessage&lt;/P&gt;
&lt;P&gt;&amp;nbsp;strDatabaseName = "distribution"&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp;On Error Resume Next&lt;/P&gt;
&lt;P&gt;&amp;nbsp;sName = g_oSQL.GetSQLName(sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;If sName &amp;lt;&amp;gt; "" Then&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;If sInstance = "MSSQLSERVER" Then &lt;BR&gt;&amp;nbsp;&amp;nbsp;sPath = sName&lt;BR&gt;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;sPath = sName &amp;amp; "\" &amp;amp; sInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;Set cnADOConnection = MomCreateObject("ADODB.Connection")&lt;BR&gt;&amp;nbsp;&amp;nbsp;cnADOConnection.Provider = "sqloledb"&lt;BR&gt;&amp;nbsp;&amp;nbsp;cnADOConnection.ConnectionTimeout = 30&lt;BR&gt;&amp;nbsp;&amp;nbsp;strProv = "Server=" &amp;amp; sPath &amp;amp; ";Database=" &amp;amp; strDatabaseName &amp;amp; ";Trusted_Connection=yes"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;on error resume next&lt;BR&gt;&amp;nbsp;&amp;nbsp;Err.Clear&lt;BR&gt;&amp;nbsp;&amp;nbsp;cnADOConnection.Open strProv&lt;BR&gt;&amp;nbsp;&amp;nbsp;if 0 &amp;lt;&amp;gt; Err.number then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;on error goto 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set cnADOConnection = Nothing&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;end if&lt;BR&gt;&amp;nbsp;&amp;nbsp;on error goto 0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;'SELECT &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_history.agent_id, &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_history.runstatus, &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_history.[time], &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_history.comments, &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_agents.name&lt;BR&gt;&amp;nbsp;&amp;nbsp;'FROM&lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_history INNER JOIN&lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;dbo.MSdistribution_agents ON dbo.MSdistribution_history.agent_id = dbo.MSdistribution_agents.id&lt;BR&gt;&amp;nbsp;&amp;nbsp;'WHERE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;(dbo.MSdistribution_history.runstatus = '6') AND &lt;BR&gt;&amp;nbsp;&amp;nbsp;'&amp;nbsp;DATEDIFF(minute, [time], getdate()) &amp;lt; 10&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;strQuery = "SELECT dbo.MSdistribution_history.agent_id, dbo.MSdistribution_history.runstatus, dbo.MSdistribution_history.[time], dbo.MSdistribution_history.comments, dbo.MSdistribution_agents.name FROM dbo.MSdistribution_history INNER JOIN dbo.MSdistribution_agents ON dbo.MSdistribution_history.agent_id = dbo.MSdistribution_agents.id WHERE (dbo.MSdistribution_history.runstatus = '6') AND DATEDIFF(minute, [time], getdate()) &amp;lt; 20"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;Set rsSQLReplicationFailures = cnADOConnection.Execute(strQuery)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;Do While rsSQLReplicationFailures.EOF = False&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sMessage = "The SQL Server Replication Agent (" &amp;amp; rsSQLReplicationFailures("name").Value &amp;amp; ") has failed. Details: " &amp;amp; rsSQLReplicationFailures("comments").Value&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;g_oUtil.LogMessage g_oUtil.DBG_TRACE, sMessage&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;g_oSQL.CreateAlert ALERT_CRITICAL_ERROR, _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SCRIPT_NAME, _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sMessage, _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"", _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;""&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;rsSQLReplicationFailures.MoveNext&lt;BR&gt;&amp;nbsp;&amp;nbsp;Loop&lt;/P&gt;
&lt;P&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set cnADOConnection = Nothing&lt;BR&gt;&amp;nbsp;Set rsSQLReplicationFailures = Nothing&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;Dim g_aDatabaseExcludeArray&lt;BR&gt;Dim g_bDatabaseExclusion&lt;BR&gt;Dim g_aJobExcludeArray&lt;BR&gt;Dim g_bJobExclusion&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Const SQL_CLASS_ID = "SQL"&lt;/P&gt;
&lt;P&gt;Const SQL_SQL_SERVER_INSTANCE_NAME_ATTRIBUTE_ID =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "SQL Server Instance Name"&lt;BR&gt;Const SQL_AUDIT_LEVEL_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Audit Level"&lt;BR&gt;Const SQL_AUTHENTICATION_MODE_ATTRIBUTE_ID =&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; "Authentication Mode"&lt;BR&gt;Const SQL_CLUSTER_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Cluster"&lt;BR&gt;Const SQL_CONNECTION_NAME_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Connection Name"&lt;BR&gt;Const SQL_ENABLE_ERROR_REPORTING_ATTRIBUTE_ID =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Enable Error Reporting"&lt;BR&gt;Const SQL_ERROR_LOG_LOCATION_ATTRIBUTE_ID =&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;&amp;nbsp; "Error Log Location"&lt;BR&gt;Const SQL_LANGUAGE_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Language"&lt;BR&gt;Const SQL_MASTER_DATABASE_LOCATION_ATTRIBUTE_ID =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Master Database Location"&lt;BR&gt;Const SQL_MASTER_DATABASE_LOG_LOCATION_ATTRIBUTE_ID =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Master Database Log Location"&lt;BR&gt;Const SQL_REPLICATION_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Replication"&lt;BR&gt;Const SQL_REPLICATION_DISTRIBUTION_DATABASE_ATTRIBUTE_ID =&amp;nbsp; "Replication Distribution Database"&lt;BR&gt;Const SQL_REPLICATION_WORKING_DIRECTORY_ATTRIBUTE_ID =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Replication Working Directory"&lt;BR&gt;Const SQL_SERVICE_NAME_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Service Name"&lt;BR&gt;Const SQL_SERVICE_PACK_VERSION_ATTRIBUTE_ID =&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; "Service Pack Version"&lt;BR&gt;Const SQL_SQL_SERVER_VERSION_ATTRIBUTE_ID =&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;&amp;nbsp; "SQL Server Version"&lt;BR&gt;Const SQL_AGENT_NAME_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Agent Name"&lt;BR&gt;Const SQL_INSTALL_PATH_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Install Path"&lt;BR&gt;Const SQL_TOOLS_PATH_ATTRIBUTE_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Tools Path"&lt;/P&gt;
&lt;P&gt;Const SQL_LOG_SPACE_COMPONENT_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Log Space"&lt;BR&gt;Const SQL_DB_HEALTH_COMPONENT_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "DB Health"&lt;BR&gt;Const SQL_AGENT_COMPONENT_ID =&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;&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; "Agent"&lt;BR&gt;Const SQL_CONNECTIVITY_COMPONENT_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Connectivity"&lt;BR&gt;Const SQL_DB_SPACE_COMPONENT_ID =&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "DB Space"&lt;BR&gt;Const SQL_SQL_COMPONENT_ID =&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;&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;&amp;nbsp; "SQL"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name - SQL - SQL Server Utility Class &lt;BR&gt;'&lt;BR&gt;' Version - Microsoft Operations Manager 2005 &lt;BR&gt;'&lt;BR&gt;' Purpose - Utility Class for SQL Server health monitoring&lt;BR&gt;'&lt;BR&gt;' Methods Implemented -&lt;BR&gt;'&lt;BR&gt;' Discovery and Service Check:&lt;BR&gt;'&amp;nbsp;&amp;nbsp;GetSQLInstances&amp;nbsp;&amp;nbsp;- Returns a comma-delimited list of SQL instances&lt;BR&gt;'&amp;nbsp;&amp;nbsp;IsSQL7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;- Returns True if SQL Server 7.0&lt;BR&gt;'&amp;nbsp;&amp;nbsp;Is64Bit&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;- Returns True if 64Bit&lt;BR&gt;'&amp;nbsp;&amp;nbsp;IsMSDE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;- Returns True if MSDE&lt;BR&gt;'&amp;nbsp;&amp;nbsp;IsClustered&amp;nbsp;&amp;nbsp;&amp;nbsp;- Returns boolean for SQL clustered value&lt;BR&gt;'&amp;nbsp;&amp;nbsp;IsServiceStarted&amp;nbsp;- Checks if the specified service is started&lt;BR&gt;'&amp;nbsp;&amp;nbsp;GetSQLName&amp;nbsp;&amp;nbsp;&amp;nbsp;- Returns the name of the SQL Server&amp;nbsp;&lt;BR&gt;'&amp;nbsp;&amp;nbsp;GetSQLInstanceName&amp;nbsp;- Returns the SQL Server instance name&lt;BR&gt;'&amp;nbsp;&amp;nbsp;CollectDatabaseExclusions&amp;nbsp;- Collect a list of excluded servers&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CollectJobExclusions&amp;nbsp;&amp;nbsp;&amp;nbsp; - Collect a list of excluded jobs&lt;BR&gt;'&amp;nbsp;&amp;nbsp;IsDatabaseExcluded&amp;nbsp;&amp;nbsp;&amp;nbsp;- Determine if a database is excluded&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsJobExcluded&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Determine if a job is excluded&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsSQLServiceStarted - Checks if the specified SQL server instance is started&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLServiceName&amp;nbsp;&amp;nbsp; - Returns the service name for a SQL instance&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetConnectionFailureMessage - Returns an error message for connection failures&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetRunningInstances&amp;nbsp; - Returns arrays of the instances in a given array that are running and not running&lt;BR&gt;'&lt;BR&gt;' Connectivity Check:&lt;BR&gt;'&amp;nbsp;&amp;nbsp;SQLConnect&amp;nbsp;&amp;nbsp;&amp;nbsp;- Checks if a specified instance returns data&lt;BR&gt;'&lt;BR&gt;' Event Logging:&lt;BR&gt;'&amp;nbsp;&amp;nbsp;CreateEvent&amp;nbsp;&amp;nbsp;&amp;nbsp;- Creates a MOM event&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CreateAlert&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Creates a MOM alert&lt;BR&gt;'&lt;BR&gt;' Service Discovery:&lt;BR&gt;'&amp;nbsp;&amp;nbsp;ServiceStateUpdate&amp;nbsp;- Updates the Summary State View for a specified SRG&lt;BR&gt;'&lt;BR&gt;' Registry Reading:&amp;nbsp;&amp;nbsp;&lt;BR&gt;'&amp;nbsp;&amp;nbsp;ReadRegistryStringValue&amp;nbsp;- Read a string registry key&lt;BR&gt;'&amp;nbsp;&amp;nbsp;ReadRegistryMultiStringValue - Read a multi string registry key&lt;BR&gt;'&amp;nbsp;&amp;nbsp;ReadRegistryDWORDValue - Read a DWORD value registry key&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceKeyRoot - Get the root of the sql instance's registry keys&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceKey&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Get the registry key path for a sql instance&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&lt;BR&gt;' Version 12&lt;/P&gt;
&lt;P&gt;Class SQL&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; Public HKEY_LOCAL_MACHINE &lt;BR&gt;&amp;nbsp; Public SQL_DEFAULT &lt;BR&gt;&amp;nbsp; Public SQL_KEY_DEFAULT &lt;BR&gt;&amp;nbsp; Public SQL_KEY_NAMED &lt;BR&gt;&amp;nbsp; Public SQL_KEY_VER &lt;BR&gt;&amp;nbsp; Public SQL_VAL_INSTINST &lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; Public SERVICESTATE_GREEN&lt;BR&gt;&amp;nbsp; Public SERVICESTATE_YELLOW&lt;BR&gt;&amp;nbsp; Public SERVICESTATE_RED&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; Public DATABASE_EXCLUDE_FILENAME&lt;BR&gt;&amp;nbsp; Public DATABASE_EXCLUDE_DIRECTORY &lt;BR&gt;&amp;nbsp; Public JOB_EXCLUDE_FILENAME&lt;BR&gt;&amp;nbsp; Public JOB_EXCLUDE_DIRECTORY &lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; Private m_oSafeRegistry&lt;BR&gt;&amp;nbsp; &lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;Class_Initialize&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Initialize the public methods of the class&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;Private Sub Class_Initialize()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_LOCAL_MACHINE = &amp;amp;H80000002&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL_DEFAULT = "MSSQLSERVER"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL_KEY_DEFAULT = "Software\Microsoft\MSSQLServer"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL_KEY_NAMED = "Software\Microsoft\Microsoft SQL Server"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL_KEY_VER = "Software\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQL_VAL_INSTINST = "InstalledInstances"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SERVICESTATE_GREEN = 0 &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SERVICESTATE_YELLOW = 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SERVICESTATE_RED = 2&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DATABASE_EXCLUDE_FILENAME = "SQLExclude.txt"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DATABASE_EXCLUDE_DIRECTORY = "C:\"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; JOB_EXCLUDE_FILENAME = "SQLMPAgentExclude.txt"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; JOB_EXCLUDE_DIRECTORY = "C:\"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set m_oSafeRegistry = New SafeRegistry&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_oSafeRegistry.SuppressionFlags = (m_oSafeRegistry.SUPPRESS_KEY_NOT_FOUND Or m_oSafeRegistry.SUPPRESS_VALUE_NOT_FOUND)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;End Sub&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetRunningInstances&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;Public Function GetRunningInstances(ByVal aInstances, ByRef aNonRunningInstances)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sWQLNameList&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not IsArray(aInstances) Then Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each sInstance In aInstances&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sWQLNameList &amp;lt;&amp;gt; "" Then sWQLNameList = sWQLNameList &amp;amp; " or "&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sWQLNameList = sWQLNameList &amp;amp; "Name = '" &amp;amp; GetSQLServiceName(sInstance) &amp;amp; "'"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sWQLNameList &amp;lt;&amp;gt; "" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sWQLQuery&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sWQLQuery = "select Name from Win32_Service where (" &amp;amp; sWQLNameList &amp;amp; ")"&lt;BR&gt;&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; Dim sNamespace&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sNamespace = "winmgmts://" &amp;amp; ScriptContext.TargetComputer &amp;amp; "/root/cimv2"&lt;BR&gt;&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; Dim oRunning&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oRunning = WMIExecQuery(sNamespace, sWQLQuery &amp;amp; " and State = 'Running'")&lt;BR&gt;&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; GetRunningInstances = CreateSQLInstanceArray(oRunning)&lt;BR&gt;&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; Dim oNotRunning&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oNotRunning = WMIExecQuery(sNamespace, sWQLQuery &amp;amp; " and State &amp;lt;&amp;gt; 'Running'")&lt;BR&gt;&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; aNonRunningInstances = CreateSQLInstanceArray(oNotRunning)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;CreateSQLInstanceArray&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;Private Function CreateSQLInstanceArray(ByVal oServiceObjectSet)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim aInstances&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If oServiceObjectSet.Count &amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReDim aInstances(oServiceObjectSet.Count - 1)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim i&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oService&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each oService in oServiceObjectSet&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; aInstances(i) = GetSQLInstanceNameFromServiceName(oService.Name)&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; i = i + 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CreateSQLInstanceArray = aInstances&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLInstanceKeyRoot&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Gets the path to the root registry key for the instance's &lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; registry values&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance - The SQL instance name&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;the root registry path&lt;BR&gt;'&lt;BR&gt;Public Function GetSQLInstanceKeyRoot(ByVal sInstance)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sInstance = SQL_DEFAULT Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceKeyRoot = SQL_KEY_DEFAULT &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceKeyRoot = SQL_KEY_NAMED &amp;amp; "\" &amp;amp; sInstance &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLInstanceKey&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Gets the path to the registry key for the instance&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance - The SQL instance name&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;the registry path&lt;BR&gt;'&lt;BR&gt;Public Function GetSQLInstanceKey(ByVal sInstance, ByVal sKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceKey = GetSQLInstanceKeyRoot(sInstance) &amp;amp; "\" &amp;amp; sKey&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetConnectionFailureMessage&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;To generate a message stating the reason for failing to connect to a SQL instance&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, The SQL instance&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; lErrNumber, The error number returned from the connection attempt&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; sErrDescription, The error description returned from the connection attempt&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;The failure message&lt;BR&gt;'&lt;BR&gt;Public Function GetConnectionFailureMessage(sInstance, lErrNumber, sErrDescription)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sFailureReason&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sSQLServiceName&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sSQLServiceName = GetSQLServiceName(sInstance)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sResult&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select Case IsSQLServiceStarted(sInstance)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case -2&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; sFailureReason = "is not installed"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case -1, 0&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; sFailureReason = "is not running"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case 1&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; Const DB_CONNECTION_FAILURE_MESSAGE = "The SQL Server management pack script ""SQL Server 2000 Replication Monitoring"" is unable to successfully connect to the SQL Server instance ""{ServiceName}"". The error message returned is ""{Description}"""&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; sResult = Replace(DB_CONNECTION_FAILURE_MESSAGE, "{ServiceName}", sSQLServiceName)&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; GetConnectionFailureMessage = Replace(sResult, "{Description}", sErrDescription)&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; Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Select&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Const DB_CONNECTION_NO_SERVICE_MESSAGE = "The SQL Server service ({ServiceName}) {FailureReason}."&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(DB_CONNECTION_NO_SERVICE_MESSAGE, "{ServiceName}", sSQLServiceName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetConnectionFailureMessage = Replace(sResult, "{FailureReason}", sFailureReason)&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLInstances&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Gets the list of instances of SQL installed on&lt;BR&gt;'&amp;nbsp;&amp;nbsp;the specified server.&amp;nbsp; These are read from the registry.&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;A comma separated list of instances&lt;BR&gt;'&lt;BR&gt;Public Function GetSQLInstances()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim sInstances&lt;BR&gt;&amp;nbsp;Dim aKeyValues&lt;BR&gt;&amp;nbsp;Dim iCount&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sClusterName&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim bAddInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;aKeyValues = ReadRegistryMultiStringValue(SQL_KEY_NAMED, SQL_VAL_INSTINST, ScriptContext.TargetComputer)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If Not IsNull(aKeyValues) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;For Each sInstance In aKeyValues&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If Not IsMSDE(sInstance) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sClusterName = ReadRegistryStringValue(GetSQLInstanceKey(sInstance, "Cluster"), "ClusterName", ScriptContext.TargetComputer)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If ScriptContext.IsTargetVirtualServer Then &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bAddInstance = (ScriptContext.TargetNetbiosComputer = sClusterName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bAddInstance = IsNull(sClusterName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&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; If bAddInstance Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sInstances &amp;lt;&amp;gt; "" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sInstances = sInstances &amp;amp; ","&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&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; sInstances = sInstances &amp;amp; sInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;Next &lt;BR&gt;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;If IsSQL7(ScriptContext.TargetComputer) then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sInstances = SQL_DEFAULT&lt;BR&gt;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sInstances = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "GetSQLInstances returning the following instances: " &amp;amp; sInstances)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;GetSQLInstances = sInstances&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsSQL7&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks if a Server is SQL Server 7.0&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sHostName, the name of the instance to check&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;True if Microsoft SQL Server 7.0 is installed&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;False if Microsoft SQL Server 7.0 is not installed&lt;BR&gt;'&lt;BR&gt;Public Function IsSQL7(sHostName)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;If Left(ReadRegistryStringValue(SQL_KEY_VER, "CurrentVersion", ScriptContext.TargetComputer),4) = "7.00" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;IsSQL7 = True&lt;BR&gt;&amp;nbsp;&amp;nbsp;Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "SQL Server 7.0 True for: " &amp;amp; sHostName)&lt;BR&gt;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;IsSQL7 = False&lt;BR&gt;&amp;nbsp;End if &lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;Is64Bit&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks if a Server is 64Bit&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the instance to check&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;True if 64Bit&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;False if not 64bit&lt;BR&gt;Public Function Is64Bit(sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Dim sKeyValue&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; sKeyValue = ReadRegistryStringValue(GetSQLInstanceKey(SQL_DEFAULT, "Setup"), "FeatureName", ScriptContext.TargetComputer)&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; If sKeyValue = "SQL_Engine" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Is64Bit = True&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "64Bit True for: " &amp;amp; sInstance)&lt;BR&gt;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Is64Bit = False&lt;BR&gt;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsMSDE&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks if a Server is MSDE&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the instance to check&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;True if Microsoft MSDE&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;False if Microsoft MSDE is not installed&lt;BR&gt;Public Function IsMSDE(sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Dim sKeyValue&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; if True = Is64Bit(sInstance) then&lt;BR&gt;&amp;nbsp;IsMSDE = False&lt;BR&gt;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp; End if&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; sKeyValue = ReadRegistryStringValue(GetSQLInstanceKey(sInstance, "Setup"), "ProductCode", ScriptContext.TargetComputer)&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; If Not IsNull(sKeyValue) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsMSDE = True&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "MSDE True for: " &amp;amp; sInstance)&lt;BR&gt;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsMSDE = False&lt;BR&gt;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsClustered&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks if an instance is clustered&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the instance to check&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;1 if the instance is clustered&lt;BR&gt;'&amp;nbsp;&amp;nbsp;0 if the instance is not clustered&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Function IsClustered(sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Dim sClusterName&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; sClusterName = ReadRegistryStringValue(GetSQLInstanceKey(sInstance, "Cluster"), "ClusterName", ScriptContext.TargetComputer)&lt;BR&gt;&amp;nbsp; If Not IsNull(sClusterName) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsClustered = 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "The following node is a member of a cluster: " &amp;amp; sInstance)&lt;BR&gt;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsClustered = 0&lt;BR&gt;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp; &lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsSQLServiceStarted&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks whether a given SQL service instance is running&amp;nbsp;&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the SQL instance to check&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;0 if the service is not started and not disabled&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;1 if the service is started&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;-1 if the service is not started but the service is disabled&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;-2 if there was a WMI Error getting the service status or the&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;service does not exist&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Function IsSQLServiceStarted(sInstance)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsSQLServiceStarted = IsServiceStarted(GetSQLServiceName(sInstance))&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsServiceStarted&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Checks whether a given Windows service is running&amp;nbsp;&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sServiceName, the Windows service name (short)&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;0 if the service is not started and not disabled&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;1 if the service is started&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;-1 if the service is not started but the service is disabled&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;-2 if there was a WMI Error getting the service status or the&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;service does not exist&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Function IsServiceStarted(sServiceName)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Dim oService, sObjectString&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; sObjectString = "winmgmts:\\" &amp;amp; ScriptContext.TargetComputer &amp;amp; "\root\cimv2"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp; On Error Resume Next &lt;BR&gt;&amp;nbsp; Err.Clear&lt;BR&gt;&amp;nbsp; 'We want to do our own error handling here. No WMIGetObject().&lt;BR&gt;&amp;nbsp; Set oService = GetObject(sObjectString &amp;amp; ":Win32_Service.Name='" &amp;amp; sServiceName &amp;amp; "'")&lt;BR&gt;&amp;nbsp; If Err.number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsServiceStarted = -2&lt;BR&gt;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If oService.State = "Running" Then &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsServiceStarted = 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ElseIf oService.StartMode = "Disabled" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsServiceStarted = -1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsServiceStarted = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp; Set oService = nothing&lt;BR&gt;&amp;nbsp; On Error Goto 0&lt;BR&gt;&amp;nbsp; &lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLInstanceNameFromServiceName&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;Public Function GetSQLInstanceNameFromServiceName(ByVal sServiceName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sServiceName = SQL_DEFAULT Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceNameFromServiceName = SQL_DEFAULT&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceNameFromServiceName = Mid(sServiceName, 7)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLServiceName&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the instance to return the service name for&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;The service name&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Function GetSQLServiceName(sInstance)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sInstance = SQL_DEFAULT Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLServiceName = SQL_DEFAULT&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLServiceName = "MSSQL$" &amp;amp; sInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLName&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Returns the name of the SQL server.&amp;nbsp; This will be the physical &lt;BR&gt;'&amp;nbsp;&amp;nbsp;name of the server for a non clustered instance.&amp;nbsp; It will be the&lt;BR&gt;'&amp;nbsp;&amp;nbsp;Virtual name for a clustered instance&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the instance to return the name for&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;The server name (virtual or physical)&lt;BR&gt;'&amp;nbsp;&amp;nbsp;If there was an error getting the name "" is returned&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Function GetSQLName(sInstance)&lt;BR&gt;&amp;nbsp; Dim sClusterName&lt;/P&gt;
&lt;P&gt;&amp;nbsp; If IsClustered(sInstance) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sClusterName = ReadRegistryStringValue(GetSQLInstanceKey(sInstance, "Cluster"), "ClusterName", ScriptContext.TargetComputer)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not IsNull(sClusterName) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLName = sClusterName&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLName = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp; &lt;BR&gt;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLName = ScriptContext.TargetComputer&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "GetSQLName returns: " &amp;amp; GetSQLName)&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;GetSQLInstanceName&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Returns the SQL Server instance name or default&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sName - The physical name of the SQL Server&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sInstance - The SQL Server instance name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;The default or named instance connection name&lt;BR&gt;'&lt;BR&gt;Public Function GetSQLInstanceName(sName, sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If sInstance = SQL_DEFAULT Then &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceName = sName&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GetSQLInstanceName = sName &amp;amp; "\" &amp;amp; sInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;SQLConnect&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Creates a SQL DMO connection to an instance and runs a query&lt;BR&gt;'&amp;nbsp;&amp;nbsp;at the instance level&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sInstance, the name of the instance to check&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&lt;BR&gt;' Returns:&amp;nbsp;1 if a connection is successfully made and the query run&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;0 if a connection cannot be made or the query cannot be run&lt;BR&gt;'&lt;BR&gt;Public Function SQLConnect(sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dim oSQLServer, sPath, oResults, sName&lt;/P&gt;
&lt;P&gt;&amp;nbsp; On Error Resume Next&lt;/P&gt;
&lt;P&gt;&amp;nbsp; sName = GetSQLName (sInstance)&lt;BR&gt;&amp;nbsp; If sName &amp;lt;&amp;gt; "" Then&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oSQLServer = MomCreateObject("SQLDMO.SQLServer")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Err.number = 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oSQLServer.LoginSecure = 1&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; sPath = GetSQLInstanceName(sName, sInstance)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oSQLServer.Connect sPath&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Err.Number = 0 Then &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oResults = oSQLServer.ExecuteWithResults("SELECT GETDATE()")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Err.Number =&amp;nbsp; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If oResults.GetColumnString(1,1) &amp;lt;&amp;gt; "" Then&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; SQLConnect = 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQLConnect = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQLConnect = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oSQLServer.Disconnect&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oSQLServer = Nothing&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oResults = nothing&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQLConnect = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp; Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SQLConnect = 0&lt;BR&gt;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp; On Error Goto 0&lt;BR&gt;&amp;nbsp; &lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;CreateEvent&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Creates an event and inserts it into the MOM data stream&lt;BR&gt;'&amp;nbsp;&amp;nbsp;The event will be created with the source set to the script name&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;iEventID, the event ID&lt;BR&gt;'&amp;nbsp;&amp;nbsp;iEventType, the event type (see constant values at top of file)&lt;BR&gt;'&amp;nbsp;&amp;nbsp;sMessage, the message text for the event&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Sub CreateEvent(iEventID, iEventType, sMessage)&lt;BR&gt;&amp;nbsp; On Error Resume Next&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Dim oNewEvent&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ' Create a new event&lt;BR&gt;&amp;nbsp; Set oNewEvent = ScriptContext.CreateEvent()&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ' Set event properties&lt;BR&gt;&amp;nbsp; oNewEvent.Message = sMessage&lt;BR&gt;&amp;nbsp; oNewEvent.EventNumber = iEventID&lt;BR&gt;&amp;nbsp; oNewEvent.EventType = iEventType&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ' Submit the event&lt;BR&gt;&amp;nbsp; ScriptContext.Submit oNewEvent&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Set oNewEvent = Nothing&lt;/P&gt;
&lt;P&gt;End Sub&lt;/P&gt;
&lt;P&gt;''******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;CreateAlert&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Raises an alert&lt;BR&gt;'&lt;BR&gt;' Parameters:&lt;BR&gt;'&amp;nbsp;iSeverity - The severity of the alert.&lt;BR&gt;'&amp;nbsp;strName - The name of the alert.&lt;BR&gt;'&amp;nbsp;strDescription - The alert description.&lt;BR&gt;'&amp;nbsp;strInstance - The instance of SQL for which to issue an alert.&lt;BR&gt;'&amp;nbsp;&amp;nbsp; strComponent - The SQL component affected&lt;BR&gt;'&lt;BR&gt;Function CreateAlert(iSeverity, strName, strDescription, strInstance, strComponent)&lt;BR&gt;&amp;nbsp;Dim oAlert&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;Set oAlert = ScriptContext.CreateAlert()&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;oAlert.Name = strName&lt;BR&gt;&amp;nbsp;oAlert.Description = strDescription&lt;BR&gt;&amp;nbsp;oAlert.AlertSource = "SQL Server 2000 Replication Monitoring"&lt;BR&gt;&amp;nbsp;oAlert.AlertLevel = iSeverity&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If strInstance &amp;lt;&amp;gt; "" And strComponent &amp;lt;&amp;gt; "" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oAlert.ProblemState = PROBLEMSTATE_RED&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oAlert.ServerRole = SQL_CLASS_ID&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oAlert.ServerRoleInstance = strInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oAlert.Component = strComponent&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oAlert.ComponentInstance = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;ScriptContext.Submit oAlert&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;CollectDatabaseExclusions&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Collect the list of excluded databases&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;Sub CollectDatabaseExclusions()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim oExcludeFile&lt;BR&gt;&amp;nbsp;Dim oFSO&lt;BR&gt;&amp;nbsp;Dim sExcludeDatabaseName&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;Set oFSO = MomCreateObject("Scripting.FileSystemObject")&lt;BR&gt;&amp;nbsp;Set oExcludeFile = oFSO.OpenTextFile(DATABASE_EXCLUDE_DIRECTORY &amp;amp; DATABASE_EXCLUDE_FILENAME, 1)&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If Err.number = 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "Exclusions are defined for this server")&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_bDatabaseExclusion = True&lt;BR&gt;&amp;nbsp;&amp;nbsp;sExcludeDatabaseName = oExcludeFile.ReadAll&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_aDatabaseExcludeArray = Split(sExcludeDatabaseName, vbcrlf)&lt;BR&gt;&amp;nbsp;&amp;nbsp;oExcludeFile.Close&lt;BR&gt;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_bDatabaseExclusion = False&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Goto 0&amp;nbsp;&lt;BR&gt;End Sub&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsDatabaseExcluded&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Determine if a specified database is exlcuded from monitoring&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;Instance name and Database name&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;True or False&lt;BR&gt;'&lt;BR&gt;Function IsDatabaseExcluded(sInstanceName, sDatabaseName)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim sInstanceDatabaseName&lt;BR&gt;&amp;nbsp;Dim iArrayMembers&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If g_bDatabaseExclusion Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;If sInstanceName = SQL_DEFAULT Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sInstanceDatabaseName = sDatabaseName&lt;BR&gt;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sInstanceDatabaseName = sInstanceName &amp;amp; "\" &amp;amp; sDatabaseName&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;For iArrayMembers = 0 To UBound(g_aDatabaseExcludeArray)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If UCase(g_aDatabaseExcludeArray(iArrayMembers)) = UCase(sInstanceDatabaseName) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IsDatabaseExcluded = True&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "Database " &amp;amp; sDatabaseName &amp;amp; "on instance " &amp;amp; sInstanceName &amp;amp; " is excluded")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;IsDatabaseExcluded = False&lt;BR&gt;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;IsDatabaseExcluded = False&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;CollectJobExclusions&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Collect the list of excluded servers/jobs&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;None&lt;BR&gt;'&lt;BR&gt;Sub CollectJobExclusions()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim oExcludeFile&lt;BR&gt;&amp;nbsp;Dim oFSO&lt;BR&gt;&amp;nbsp;Dim sExcludeServerName&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;Set oFSO = MomCreateObject("Scripting.FileSystemObject")&lt;BR&gt;&amp;nbsp;Set oExcludeFile = oFSO.OpenTextFile(JOB_EXCLUDE_DIRECTORY &amp;amp; JOB_EXCLUDE_FILENAME, 1)&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If Err.number = 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "Exclusions are defined for this server")&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_bJobExclusion = True&lt;BR&gt;&amp;nbsp;&amp;nbsp;sExcludeServerName = oExcludeFile.ReadAll&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_aJobExcludeArray = Split(sExcludeServerName, vbcrlf)&lt;BR&gt;&amp;nbsp;&amp;nbsp;oExcludeFile.Close&lt;BR&gt;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;g_bJobExclusion = False&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Goto 0&amp;nbsp;&lt;BR&gt;End Sub&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;IsJobExcluded&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Determine if a specified server/job is exlcuded from monitoring&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;Server name and Job name&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;True or False&lt;BR&gt;'&lt;BR&gt;Function IsJobExcluded(sServerName, sJobName)&lt;BR&gt;&amp;nbsp;Dim sServerJobName&lt;BR&gt;&amp;nbsp;Dim iArrayMembers&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If g_bJobExclusion Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;sServerJobName = sServerName &amp;amp; "\" &amp;amp; sJobName&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;For iArrayMembers = 0 To UBound(g_aJobExcludeArray)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If UCase(g_aJobExcludeArray(iArrayMembers)) = UCase(sServerJobName) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IsJobExcluded = True&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call g_oUtil.LogMessage(g_oUtil.DBG_TRACE, "Job " &amp;amp; sJobName &amp;amp; "on server " &amp;amp; sServerName &amp;amp; " is excluded")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;IsJobExcluded = False&lt;BR&gt;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;IsJobExcluded = False&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;ServiceStateUpdate&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Generate State Monitoring Red and Green lights for Summary State View&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sStateToUpdate - eg Agent, Server, Connectivity&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sServiceName - name of the instance eg Instance1, Instance2&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sStateDescription - text to be included in the alert description&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sHealthState - defined by constants&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;Nothing&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;Public Function ServiceStateUpdate(sStateToUpdate, sServiceName, sStateSource, sStateDescription, iHealthState)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim lngProblemState&lt;BR&gt;&amp;nbsp;Dim oAlert&lt;BR&gt;&amp;nbsp;Dim iProblemState&lt;BR&gt;&amp;nbsp;Dim iAlertSev&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oAlert = ScriptContext.CreateAlert()&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;oAlert.Description = sStateDescription&lt;BR&gt;&amp;nbsp;oAlert.AlertSource =&amp;nbsp; sStateSource&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;oAlert.ServerRole = SQL_CLASS_ID&lt;BR&gt;&amp;nbsp;oAlert.ServerRoleInstance = sServiceName&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Select Case sStateToUpdate&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case "Server"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Name = "SQL Server 2000 Service Availability"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Component = SQL_SQL_COMPONENT_ID&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case "Agent"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Name = "SQL Server Agent Service Availability"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Component = SQL_AGENT_COMPONENT_ID&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case "Connectivity"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Name = "SQL Server Local Connectivity"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Component = SQL_CONNECTIVITY_COMPONENT_ID&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case "DatabaseHealth"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Name = "SQL Server 2000 Database Health"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Component = SQL_DB_HEALTH_COMPONENT_ID&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case "DatabaseSpace"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Name = "SQL Server Database Space"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Component = SQL_DB_SPACE_COMPONENT_ID&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case "LogSpace"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Name = "SQL Server Log Space"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;oAlert.Component = SQL_LOG_SPACE_COMPONENT_ID&lt;BR&gt;&amp;nbsp;End Select&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;Select Case iHealthState&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case SERVICESTATE_GREEN&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iProblemState = PROBLEMSTATE_GREEN&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iAlertSev = ALERT_CRITICAL_ERROR&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case SERVICESTATE_YELLOW&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iProblemState = PROBLEMSTATE_RED&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iAlertSev = ALERT_WARNING&lt;BR&gt;&amp;nbsp;&amp;nbsp;Case SERVICESTATE_RED&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iProblemState = PROBLEMSTATE_RED&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iAlertSev = ALERT_CRITICAL_ERROR&lt;BR&gt;&amp;nbsp;End Select&lt;/P&gt;
&lt;P&gt;&amp;nbsp;oAlert.ProblemState = iProblemState&lt;BR&gt;&amp;nbsp;oAlert.AlertLevel = iAlertSev&lt;BR&gt;&amp;nbsp;ScriptContext.Submit oAlert&amp;nbsp; &lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;ReadRegistryStringValue&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Return a string value from the registry (HKLM)&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sKeyPath, the path to the key&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sValueName, the name of the value to return&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sHostName, the computer to connect to&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;A string matching the contents of the value or null&lt;BR&gt;'&lt;BR&gt;Public Function ReadRegistryStringValue(sKeyPath, sValueName, sHostName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadRegistryStringValue = m_oSafeRegistry.ReadStringValue(sKeyPath, sValueName, sHostName, lResult)&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;ReadRegistryMultiStringValue&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Return a multi string value from the registry (HKLM)&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sKeyPath, the path to the key&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sValueName, the name of the value to return&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sHostName, the computer to connect to&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;A string matching the contents of the value or null&lt;BR&gt;'&lt;BR&gt;Public Function ReadRegistryMultiStringValue(sKeyPath, sValueName, sHostName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadRegistryMultiStringValue = m_oSafeRegistry.ReadMultiStringValue(sKeyPath, sValueName, sHostName, lResult)&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;'******************************************************************************&lt;BR&gt;' Name:&amp;nbsp;&amp;nbsp;ReadRegistryDWORDValue&lt;BR&gt;' &lt;BR&gt;' Purpose:&amp;nbsp;Return a DWORD value from the registry (HKLM)&lt;BR&gt;'&lt;BR&gt;' Parameters:&amp;nbsp;sKeyPath, the path to the key&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sValueName, the name of the value to return&lt;BR&gt;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sHostName, the computer to connect to&lt;BR&gt;'&lt;BR&gt;' Returns:&amp;nbsp;A string matching the contents of the value or null&lt;BR&gt;'&lt;BR&gt;Public Function ReadRegistryDWORDValue(sKeyPath, sValueName, sHostName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadRegistryDWORDValue = m_oSafeRegistry.ReadDWORDValue(sKeyPath, sValueName, sHostName, lResult)&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;End Class&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Class SafeRegistry&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_oError&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_oRegistry&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_sHive&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public SUPPRESS_KEY_NOT_FOUND&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public SUPPRESS_VALUE_NOT_FOUND&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public SUPPRESS_ACCESS_DENIED&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public SUPPRESS_ALL&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_lSuppressionFlags&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private Sub Class_Initialize()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set m_oError = New Error&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sHive = "HKLM"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set m_oRegistry = New Registry&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUPPRESS_KEY_NOT_FOUND = &amp;amp;H00000001&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUPPRESS_VALUE_NOT_FOUND = &amp;amp;H00000002&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUPPRESS_ACCESS_DENIED = &amp;amp;H00000004&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUPPRESS_ALL = &amp;amp;HFFFFFFFF&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_lSuppressionFlags = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Let SuppressionFlags(ByVal lValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_lSuppressionFlags = lValue&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Get SuppressionFlags()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SuppressionFlags = m_lSuppressionFlags&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function ReadDWORDValue(ByVal sKeyPath, ByVal sValueName, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadDWORDValue = Null&lt;BR&gt;&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; On Error Resume Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadDWORDValue = m_oRegistry.ReadDWORDValue(sKeyPath, sValueName, sHostName, lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_oError.Save&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Goto 0&lt;BR&gt;&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; If m_oError.Number &amp;lt;&amp;gt; 0 Then &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; ThrowScriptErrorNoAbort GET_ERROR_READING_REGISTRY_MESSAGE(m_sHive, sKeyPath, sValueName), m_oError&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; Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&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; HandleResult m_sHive, sKeyPath, sValueName, lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function ReadStringValue(ByVal sKeyPath, ByVal sValueName, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadStringValue = Null&lt;BR&gt;&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; On Error Resume Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadStringValue = m_oRegistry.ReadStringValue(sKeyPath, sValueName, sHostName, lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_oError.Save&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Goto 0&lt;BR&gt;&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; If m_oError.Number &amp;lt;&amp;gt; 0 Then&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; ThrowScriptErrorNoAbort GET_ERROR_READING_REGISTRY_MESSAGE(m_sHive, sKeyPath, sValueName), m_oError&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; Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HandleResult m_sHive, sKeyPath, sValueName, lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function ReadMultiStringValue(ByVal sKeyPath, ByVal sValueName, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadMultiStringValue = Null&lt;BR&gt;&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; On Error Resume Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadMultiStringValue = m_oRegistry.ReadMultiStringValue(sKeyPath, sValueName, sHostName, lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_oError.Save&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Goto 0&lt;BR&gt;&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; If m_oError.Number &amp;lt;&amp;gt; 0 Then&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; ThrowScriptErrorNoAbort GET_ERROR_READING_REGISTRY_MESSAGE(m_sHive, sKeyPath, sValueName), m_oError&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; Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HandleResult m_sHive, sKeyPath, sValueName, lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function EnumKeys(ByVal sKeyPath, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnumKeys = Null&lt;BR&gt;&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; On Error Resume Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnumKeys = m_oRegistry.EnumKeys(sKeyPath, sHostName, lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_oError.Save&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Goto 0&lt;BR&gt;&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; If m_oError.Number &amp;lt;&amp;gt; 0 Then&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; ThrowScriptErrorNoAbort GET_ERROR_READING_KEY_MESSAGE(m_sHive, sKeyPath), m_oError&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; Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&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; HandleResult m_sHive, sKeyPath, "", lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private Sub HandleResult(ByVal sHive, ByVal sKeyPath, ByVal sValueName, ByVal lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select Case lResult&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; Case m_oRegistry.SUCCESS &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; Exit Sub&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; Case m_oRegistry.ERROR_ACCESS_DENIED&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; If (SuppressionFlags And SUPPRESS_ACCESS_DENIED) = 0 Then&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ThrowScriptErrorNoAbort GET_REGISTRY_ACCESS_DENIED_MESSAGE(sHive, sKeyPath, sValueName), Err&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; Else&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ScriptContext.Echo GET_REGISTRY_ACCESS_DENIED_MESSAGE(sHive, sKeyPath, sValueName)&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; End If&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; Case m_oRegistry.ERROR_VALUE_NOT_FOUND&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; If (SuppressionFlags And SUPPRESS_VALUE_NOT_FOUND) = 0 Then&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ThrowScriptErrorNoAbort GET_REGISTRY_VALUE_NOT_FOUND_MESSAGE(sHive, sKeyPath, sValueName), Err&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; Else&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ScriptContext.Echo GET_REGISTRY_VALUE_NOT_FOUND_MESSAGE(sHive, sKeyPath, sValueName)&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; End If&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; Case m_oRegistry.ERROR_KEY_NOT_FOUND&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; If (SuppressionFlags And SUPPRESS_KEY_NOT_FOUND) = 0 Then&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ThrowScriptErrorNoAbort GET_REGISTRY_KEY_NOT_FOUND_MESSAGE(sHive, sKeyPath), Err&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; Else&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ScriptContext.Echo GET_REGISTRY_KEY_NOT_FOUND_MESSAGE(sHive, sKeyPath)&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; End If&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; Case Else&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; If (SuppressionFlags And SUPPRESS_ALL) = 0 Then&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ThrowScriptErrorNoAbort GET_ERROR_READING_REGISTRY_MESSAGE(sHive, sKeyPath, sValueName), Err&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; Else&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ScriptContext.Echo GET_ERROR_READING_REGISTRY_MESSAGE(sHive, sKeyPath, sValueName)&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; End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Select&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private Function GET_REGISTRY_ACCESS_DENIED_MESSAGE(ByVal sHive, ByVal sRegKey, ByVal sRegValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Const REGISTRY_ACCESS_DENIED_MESSAGE = "Access denied while reading registry value [{Hive}\{RegKey}\{RegValue}]"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(REGISTRY_ACCESS_DENIED_MESSAGE, "{RegKey}", sRegKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(sResult, "{Hive}", sHive)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GET_REGISTRY_ACCESS_DENIED_MESSAGE = Replace(sResult, "{RegValue}", sRegValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private Function GET_REGISTRY_VALUE_NOT_FOUND_MESSAGE(ByVal sHive, ByVal sRegKey, ByVal sRegValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Const REGISTRY_VALUE_NOT_FOUND_MESSAGE = "Registry value [{Hive}\{RegKey}\{RegValue}] not found"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(REGISTRY_VALUE_NOT_FOUND_MESSAGE, "{RegKey}", sRegKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(sResult, "{Hive}", sHive)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GET_REGISTRY_VALUE_NOT_FOUND_MESSAGE = Replace(sResult, "{RegValue}", sRegValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private Function GET_ERROR_READING_REGISTRY_MESSAGE(ByVal sHive, ByVal sRegKey, ByVal sRegValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Const ERROR_READING_REGISTRY_MESSAGE = "Error while reading registry value [{Hive}\{RegKey}\{RegValue}]"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(ERROR_READING_REGISTRY_MESSAGE, "{RegKey}", sRegKey)&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; sResult = Replace(sResult, "{Hive}", sHive)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GET_ERROR_READING_REGISTRY_MESSAGE = Replace(sResult, "{RegValue}", sRegValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Function GET_REGISTRY_KEY_NOT_FOUND_MESSAGE(ByVal sHive, ByVal sRegKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Const REGISTRY_KEY_NOT_FOUND_MESSAGE = "Registry key [{Hive}\{RegKey}] not found"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(REGISTRY_KEY_NOT_FOUND_MESSAGE, "{Hive}", sHive)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GET_REGISTRY_KEY_NOT_FOUND_MESSAGE = Replace(sResult, "{RegKey}", sRegKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Function GET_ERROR_READING_KEY_MESSAGE(ByVal sHive, ByVal sRegKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Const ERROR_READING_KEY_MESSAGE = "Error while reading registry key [{Hive}\{RegKey}]"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sResult = Replace(ERROR_READING_KEY_MESSAGE, "{Hive}", sHive)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GET_ERROR_READING_KEY_MESSAGE = Replace(sResult, "{RegKey}", sRegKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;End Class&lt;/P&gt;
&lt;P&gt;Class Registry&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private HKEY_CLASSES_ROOT&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private HKEY_CURRENT_USER&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private HKEY_LOCAL_MACHINE&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private HKEY_USERS&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private HKEY_CURRENT_CONFIG&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private HKEY_DYN_DATA &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public ERROR_ACCESS_DENIED&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public ERROR_KEY_NOT_FOUND&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public ERROR_VALUE_NOT_FOUND&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public SUCCESS&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private Sub Class_Initialize()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_CLASSES_ROOT = &amp;amp;H80000000&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_CURRENT_USER = &amp;amp;H80000001 &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_LOCAL_MACHINE = &amp;amp;H80000002&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_USERS = &amp;amp;H80000003 &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_CURRENT_CONFIG = &amp;amp;H80000005&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKEY_DYN_DATA = &amp;amp;H80000006&lt;BR&gt;&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; ERROR_ACCESS_DENIED = 5&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERROR_KEY_NOT_FOUND = 2&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERROR_VALUE_NOT_FOUND = 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUCCESS = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function ReadDWORDValue(ByVal sKeyPath, ByVal sValueName, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oReg&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oReg = WMIGetObject("winmgmts://" &amp;amp; sHostName &amp;amp; "/root/default:StdRegProv")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim lValue&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lResult = oReg.GetDWORDValue(HKEY_LOCAL_MACHINE, sKeyPath, sValueName, lValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadDWORDValue = lValue&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function ReadStringValue(ByVal sKeyPath, ByVal sValueName, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oReg&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oReg = WMIGetObject("winmgmts://" &amp;amp; sHostName &amp;amp; "/root/default:StdRegProv")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sValue&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lResult = oReg.GetStringValue(HKEY_LOCAL_MACHINE, sKeyPath, sValueName, sValue)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadStringValue = sValue&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function ReadMultiStringValue(ByVal sKeyPath, ByVal sValueName, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oReg&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oReg = WMIGetObject("winmgmts://" &amp;amp; sHostName &amp;amp; "/root/default:StdRegProv")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim aValues&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lResult = oReg.GetMultiStringValue(HKEY_LOCAL_MACHINE, sKeyPath, sValueName, aValues)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadMultiStringValue = aValues&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Function EnumKeys(ByVal sKeyPath, ByVal sHostName, ByRef lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oReg&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oReg = WMIGetObject("winmgmts://" &amp;amp; sHostName &amp;amp; "/root/default:StdRegProv")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim aSubKeys&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lResult = oReg.EnumKey(HKEY_LOCAL_MACHINE, sKeyPath, aSubKeys)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnumKeys = aSubKeys&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;BR&gt;End Class&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Class Error&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_lNumber&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_sSource&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_sDescription&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_sHelpContext&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_sHelpFile&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Sub Save()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_lNumber = Err.number&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sSource = Err.Source&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sDescription = Err.Description&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sHelpContext = Err.HelpContext&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sHelpFile = Err.helpfile&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Sub Raise()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Err.Raise m_lNumber, m_sSource, m_sDescription, m_sHelpFile, m_sHelpContext&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Sub Clear()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_lNumber = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sSource = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sDescription = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sHelpContext = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_sHelpFile = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Get Number()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number = m_lNumber&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Get Source()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Source = m_sSource&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Get Description()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Description = m_sDescription&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Get HelpContext()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HelpContext = m_sHelpContext&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Property Get HelpFile()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HelpFile = m_sHelpFile&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;End Class&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Dim g_oUtil&lt;BR&gt;Set g_oUtil = New Util&lt;/P&gt;
&lt;P&gt;'==========================================================================&lt;BR&gt;' Class:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Util&lt;BR&gt;' Description:&amp;nbsp; Utility methods for logging, creating MOM alert&lt;BR&gt;'==========================================================================&lt;BR&gt;Class Util&lt;/P&gt;
&lt;P&gt;&amp;nbsp;' Used to say to LogMessage when/how to print the message.&lt;BR&gt;&amp;nbsp;Public DBG_NONE&lt;BR&gt;&amp;nbsp;Public DBG_ERROR &lt;BR&gt;&amp;nbsp;Public DBG_WARNING &lt;BR&gt;&amp;nbsp;Public DBG_TRACE&lt;BR&gt;&amp;nbsp;Public HKEY_LOCAL_MACHINE&lt;/P&gt;
&lt;P&gt;&amp;nbsp;'Internal Debug Level&lt;BR&gt;&amp;nbsp;Private m_nDebugLevel&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_oSafeRegistry&lt;BR&gt;&amp;nbsp;'---------------&lt;BR&gt;&amp;nbsp;' Methods&lt;BR&gt;&amp;nbsp;'---------------&lt;/P&gt;
&lt;P&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;' Method:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Class_Initialize&lt;BR&gt;&amp;nbsp;' Description:&amp;nbsp; This is the constructor &lt;BR&gt;&amp;nbsp;' Parameters:&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;Private Sub Class_Initialize()&lt;BR&gt;&amp;nbsp;&amp;nbsp;' Initialize Debug level constants&lt;BR&gt;&amp;nbsp;&amp;nbsp;DBG_TRACE = 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;DBG_WARNING = 2&lt;BR&gt;&amp;nbsp;&amp;nbsp;DBG_ERROR = 3&lt;BR&gt;&amp;nbsp;&amp;nbsp;DBG_NONE = 4&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;'by default only errors are logged&lt;BR&gt;&amp;nbsp;&amp;nbsp;m_nDebugLevel = DBG_ERROR&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;Set m_oSafeRegistry = New SafeRegistry&lt;BR&gt;&amp;nbsp;&amp;nbsp;m_oSafeRegistry.SuppressionFlags = (m_oSafeRegistry.SUPPRESS_KEY_NOT_FOUND Or m_oSafeRegistry.SUPPRESS_VALUE_NOT_FOUND)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;End Sub&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;' Method:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Class_Terminate&lt;BR&gt;&amp;nbsp;' Description:&amp;nbsp; This is the destructor&lt;BR&gt;&amp;nbsp;' Parameters:&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;Private Sub Class_Terminate()&lt;BR&gt;&amp;nbsp;End Sub&lt;/P&gt;
&lt;P&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;' Method:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SetDebugLevel&lt;BR&gt;&amp;nbsp;' Description:&amp;nbsp; To change the debugging output level of information &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; generated by this utility.&lt;BR&gt;&amp;nbsp;' Parameters:&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; nLevel - Level, either DBG_NONE, DBG_TRACE, &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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DBG_WARNING or DBG_ERROR&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;Public Sub SetDebugLevel(ByVal nLevel)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;m_nDebugLevel = nLevel&lt;BR&gt;&amp;nbsp;End Sub&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;' Method:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LogMessage&lt;BR&gt;&amp;nbsp;' Description:&amp;nbsp; Log a debug message to ScriptContext&lt;BR&gt;&amp;nbsp;' Parameters:&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; nLevel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Debug level for the message that we're logging. &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; strMessage&amp;nbsp; - The message to write to the trace.&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;Public Sub LogMessage( _&lt;BR&gt;&amp;nbsp;&amp;nbsp;ByVal nLevel, _&lt;BR&gt;&amp;nbsp;&amp;nbsp;ByVal strMessage _&lt;BR&gt;&amp;nbsp;&amp;nbsp;)&lt;BR&gt;&amp;nbsp;&amp;nbsp;If (nLevel &amp;gt;= m_nDebugLevel) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (nLevel = DBG_ERROR) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ScriptContext.Echo "[Error]: " &amp;amp; strMessage&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ElseIf (nLevel = DBG_WARNING) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ScriptContext.Echo "[Warning]: " &amp;amp; strMessage&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ElseIf (nLevel = DBG_TRACE) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ScriptContext.Echo "[Trace]:" &amp;amp; strMessage&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;End Sub&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;' Method:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SplitVerStr&lt;BR&gt;&amp;nbsp;' Description:&amp;nbsp; Split a version string into integers.&lt;BR&gt;&amp;nbsp;' Parameters:&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; strVer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - The version string.&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; iMajor&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - The output integer for major version.&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; iMinor&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - The output integer for minor version.&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;Function SplitVerStr(ByVal strVer, ByRef iMajor, ByRef iMinor)&lt;BR&gt;&amp;nbsp;&amp;nbsp;Dim iPos&lt;BR&gt;&amp;nbsp;&amp;nbsp;Dim strMinor&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;iPos = InStr(strVer, ".")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;if 0 = iPos then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iMajor = CInt(strVer)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iMinor = 0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;end if&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;iMajor = CInt(Left(strVer, iPos))&lt;BR&gt;&amp;nbsp;&amp;nbsp;strMinor = Right(strVer, Len(strVer)-iPos)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;iPos = InStr(strMinor, ".")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;if 0 = iPos then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iMinor = CInt(strMinor)&lt;BR&gt;&amp;nbsp;&amp;nbsp;else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iMinor = CInt(Left(strMinor, iPos))&lt;BR&gt;&amp;nbsp;&amp;nbsp;end if&lt;/P&gt;
&lt;P&gt;&amp;nbsp;End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;' Method:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadRegistryValue&lt;BR&gt;&amp;nbsp;' Description:&amp;nbsp; Used to read strings from the registry&lt;BR&gt;&amp;nbsp;' Parameters:&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; Root&amp;nbsp;&amp;nbsp;- Root of the registry (HKEY_LOCAL_MACHINE, HKEY_USERS etc. Refer to constants defined earlier)&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; strKeyPath&amp;nbsp;- Key path for the Registry key to read&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;&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; (like "SOFTWARE\Microsoft\WindowsNT\CurrentVersion")&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; strValueName - Name of the registry entry to read (like "SoftwareType")&lt;BR&gt;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;' Returns:&lt;BR&gt;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;The value of the registry key specified. "Nothing" if it fails. Callee needs to handle null value return.&lt;BR&gt;&amp;nbsp;'=============&lt;BR&gt;&amp;nbsp;Public Function ReadRegistryValue(strKeyPath, strValueName, strHostName)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim lResult&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim strValueData&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strValueData = m_oSafeRegistry.ReadStringValue(strKeyPath, strValueName, strHostName, lResult)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;If Not IsNull(strValueData) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Call LogMessage(DBG_TRACE, "Value of Registry Key: " &amp;amp; strKeyPath &amp;amp; "\" &amp;amp; strValueName &amp;amp; " = " &amp;amp; strValueData)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadRegistryValue = strValueData&lt;BR&gt;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Call LogMessage(DBG_ERROR, "Reading Registry Key: " &amp;amp; strKeyPath &amp;amp; "\" &amp;amp; strValueName &amp;amp; " Failed!" )&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReadRegistryValue = empty&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;End Function&lt;BR&gt;&amp;nbsp;&lt;BR&gt;End Class&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Function IsValidObject(ByVal oObject)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsValidObject = False&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If IsObject(oObject) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not oObject Is Nothing Then&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; IsValidObject = True&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;BR&gt;End Function&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Function WMIGetObject(sNamespace)&lt;BR&gt;'&lt;BR&gt;' WMIGetObject :: Returns the WMI object requested.&lt;BR&gt;'&lt;BR&gt;'&lt;BR&gt;&amp;nbsp;Dim oWMI&lt;/P&gt;
&lt;P&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;Set oWMI = GetObject(sNamespace)&lt;BR&gt;&amp;nbsp;If IsEmpty(oWMI) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "Unable to open WMI Namespace '" &amp;amp; sNamespace &amp;amp; "'.&amp;nbsp; Check to see if the WMI service is enabled and running, and ensure this WMI namespace exists.", Err&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;On Error Goto 0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set WMIGetObject = oWMI&lt;BR&gt;&amp;nbsp;Set oWMI = Nothing&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;Function WMIGetInstance(sNamespace, sInstance)&lt;BR&gt;'&lt;BR&gt;' WMIGetInstance :: Returns WMI Instance requested.&lt;BR&gt;'&lt;BR&gt;'&lt;BR&gt;&amp;nbsp;Dim oWMI, oInstance, nInstanceCount&lt;/P&gt;
&lt;P&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;Set oWMI = GetObject(sNamespace)&lt;BR&gt;&amp;nbsp;If IsEmpty(oWMI) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "Unable to open WMI Namespace '" &amp;amp; sNamespace &amp;amp; "'.&amp;nbsp; Check to see if the WMI service is enabled and running, and ensure this WMI namespace exists.", Err&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oInstance = oWMI.InstancesOf(sInstance)&lt;BR&gt;&amp;nbsp;If IsEmpty(oInstance) Or Err.Number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "The class name '" &amp;amp; sInstance &amp;amp; "' returned no instances.&amp;nbsp; Please check to see if this is a valid WMI class name.", Err&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;'Determine if we queried a valid WMI class - Count will return 0 or empty&lt;/P&gt;
&lt;P&gt;&amp;nbsp;nInstanceCount = oInstance.Count&lt;BR&gt;&amp;nbsp;If Err.Number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "The class name '" &amp;amp; sInstance &amp;amp; "' did not return any valid instances.&amp;nbsp; Please check to see if this is a valid WMI class name.", Err&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;On Error Goto 0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set WMIGetInstance = oInstance&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oInstance = Nothing&lt;BR&gt;&amp;nbsp;Set oWMI = Nothing&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;Function WMIExecQuery(sNamespace, sQuery)&lt;BR&gt;'&lt;BR&gt;' WMIExecQuery :: Executes the WMI query and returns the result set.&lt;BR&gt;'&lt;BR&gt;'&lt;BR&gt;&amp;nbsp;Dim oWMI, oQuery, nInstanceCount&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;Set oWMI = GetObject(sNamespace)&lt;BR&gt;&amp;nbsp;If IsEmpty(oWMI) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "Unable to open WMI Namespace '" &amp;amp; sNamespace &amp;amp; "'.&amp;nbsp; Check to see if the WMI service is enabled and running, and ensure this WMI namespace exists.", Err&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oQuery = oWMI.ExecQuery(sQuery)&lt;BR&gt;&amp;nbsp;If IsEmpty(oQuery) Or Err.Number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "The Query '" &amp;amp; sQuery &amp;amp; "' returned an invalid result set.&amp;nbsp; Please check to see if this is a valid WMI Query.", Err&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;'Determine if we queried a valid WMI class - Count will return 0 or empty&lt;BR&gt;&amp;nbsp;nInstanceCount = oQuery.Count&lt;BR&gt;&amp;nbsp;If Err.Number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "The Query '" &amp;amp; sQuery &amp;amp; "' did not return any valid instances.&amp;nbsp; Please check to see if this is a valid WMI Query.", Err&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;On Error Goto 0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set WMIExecQuery = oQuery&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oQuery = Nothing&lt;BR&gt;&amp;nbsp;Set oWMI = Nothing&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Function WMIGetInstanceNoAbort(sNamespace, sInstance)&lt;BR&gt;'&lt;BR&gt;' WMIGetInstanceNoAbort :: Returns WMI Instance requested.&lt;BR&gt;'&lt;BR&gt;'&lt;BR&gt;&amp;nbsp;Dim oWMI, oInstance, nInstanceCount&lt;/P&gt;
&lt;P&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;Set oWMI = GetObject(sNamespace)&lt;BR&gt;&amp;nbsp;If Not IsEmpty(oWMI) Then&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;Set oInstance = oWMI.InstancesOf(sInstance)&lt;BR&gt;&amp;nbsp;&amp;nbsp;If Not IsEmpty(oInstance) And Err.Number = 0 Then&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;'Determine if we queried a valid WMI class - Count will return 0 or empty&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;nInstanceCount = oInstance.Count&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If Err.Number = 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set WMIGetInstanceNoAbort = oInstance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;On Error Goto 0&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set WMIGetInstanceNoAbort = Nothing&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oInstance = Nothing&lt;BR&gt;&amp;nbsp;Set oWMI = Nothing&lt;/P&gt;
&lt;P&gt;End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Const wbemCimtypeUseDefault = 0&amp;nbsp;&amp;nbsp; 'Use Default Type CIM type - Custom&lt;BR&gt;Const wbemCimtypeSint16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&amp;nbsp;&amp;nbsp; 'Signed 16-bit integer &lt;BR&gt;Const wbemCimtypeSint32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&amp;nbsp;&amp;nbsp; 'Signed 32-bit integer &lt;BR&gt;Const wbemCimtypeReal32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 4&amp;nbsp;&amp;nbsp; '32-bit real number &lt;BR&gt;Const wbemCimtypeReal64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 5&amp;nbsp;&amp;nbsp; '64-bit real number &lt;BR&gt;Const wbemCimtypeString&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 8&amp;nbsp;&amp;nbsp; 'String &lt;BR&gt;Const wbemCimtypeBoolean&amp;nbsp;&amp;nbsp;&amp;nbsp; = 11&amp;nbsp; 'Boolean value &lt;BR&gt;Const wbemCimtypeObject&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 13&amp;nbsp; 'CIM object &lt;BR&gt;Const wbemCimtypeSint8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 16&amp;nbsp; 'Signed 8-bit integer &lt;BR&gt;Const wbemCimtypeUint8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 17&amp;nbsp; 'Unsigned 8-bit integer &lt;BR&gt;Const wbemCimtypeUint16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 18&amp;nbsp; 'Unsigned 16-bit integer &lt;BR&gt;Const wbemCimtypeUint32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 19&amp;nbsp; 'Unsigned 32-bit integer &lt;BR&gt;Const wbemCimtypeSint64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 20&amp;nbsp; 'Signed 64-bit integer&amp;nbsp; &lt;BR&gt;Const wbemCimtypeUint64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 21&amp;nbsp; 'Unsigned 64-bit integer &lt;BR&gt;Const wbemCimtypeDatetime&amp;nbsp;&amp;nbsp; = 101 'Date/time value &lt;BR&gt;Const wbemCimtypeReference&amp;nbsp; = 102 'Reference to a CIM object &lt;BR&gt;Const wbemCimtypeChar16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 103 '16-bit character &lt;/P&gt;
&lt;P&gt;Const ErrAction_None = 0&lt;BR&gt;Const ErrAction_Trace = 1&lt;BR&gt;Const ErrAction_ThrowError = 16&lt;BR&gt;Const ErrAction_Abort = 32&lt;BR&gt;Const ErrAction_ThrowErrorAndAbort = 48&lt;/P&gt;
&lt;P&gt;Function GetWMIProperty(oWmi, sPropName, nCIMType, ErrAction)&lt;BR&gt;&amp;nbsp;Dim sValue, oWmiProp&lt;/P&gt;
&lt;P&gt;&amp;nbsp;If Not IsObject(oWmi) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;If (ErrAction And ErrAction_ThrowError) = ErrAction_ThrowError Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ThrowScriptErrorNoAbort "Accessing property on invalid WMI object.", Err&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;If (ErrAction And ErrAction_Abort) = ErrAction_Abort Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ScriptContext.Quit()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;GetWMIProperty = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;Exit Function&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;Set oWmiProp = oWmi.Properties_.Item(sPropName)&lt;BR&gt;&amp;nbsp;If Err.Number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;If (ErrAction And ErrAction_ThrowError) = ErrAction_ThrowError Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ThrowScriptErrorNoAbort "An error occurred while accessing WMI property: '" &amp;amp; sPropName &amp;amp; "'.", Err&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;If (ErrAction And ErrAction_Abort) = ErrAction_Abort Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ScriptContext.Quit()&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;On Error Goto 0&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;If IsValidObject(oWmiProp) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;sValue = oWmiProp.Value&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;If IsNull(sValue) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;' If value is null, return blank to avoid any issues&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = ""&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;Else&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Select Case (oWmiProp.CIMType)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Case wbemCimtypeString, wbemCimtypeSint16, wbemCimtypeSint32, wbemCimtypeReal32, wbemCimtypeReal64, wbemCimtypeSint8, wbemCimtypeUint8, wbemCimtypeUint16, wbemCimtypeUint32, wbemCimtypeSint64, wbemCimtypeUint64:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = Trim(CStr(sValue))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Case wbemCimtypeBoolean:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;If sValue = 1 Or UCase(sValue) = "TRUE" Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = "True"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = "False"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Case wbemCimtypeDatetime:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim sTmpStrDate&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;' First attempt to convert the whole wmi date string&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sTmpStrDate = Mid(sValue, 5, 2) &amp;amp; "/" &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Mid(sValue, 7, 2) &amp;amp; "/" &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Left(sValue, 4) &amp;amp; " " &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Mid (sValue, 9, 2) &amp;amp; ":" &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Mid(sValue, 11, 2) &amp;amp; ":" &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Mid(sValue, 13, 2)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;If IsDate(sTmpStrDate) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = CDate(sTmpStrDate)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Else&lt;/P&gt;
&lt;P&gt;&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;' Second, attempt just to convert the YYYYMMDD &lt;BR&gt;&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;sTmpStrDate = Mid(sValue, 5, 2) &amp;amp; "/" &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Mid(sValue, 7, 2) &amp;amp; "/" &amp;amp; _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Left(sValue, 4)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;If IsDate(sTmpStrDate) Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = CDate(sTmpStrDate)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Else&lt;BR&gt;&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;' Nothing works - return passed in string &lt;BR&gt;&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;GetWMIProperty = sValue&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Case Else:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GetWMIProperty = ""&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End Select&lt;BR&gt;&amp;nbsp;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;Else&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;If (ErrAction And ErrAction_ThrowError) = ErrAction_ThrowError Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ThrowScriptErrorNoAbort "An error occurred while accessing WMI property: '" &amp;amp; sPropName &amp;amp; "'.", Err&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;If (ErrAction And ErrAction_Abort) = ErrAction_Abort Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ScriptContext.Quit()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;GetWMIProperty = ""&lt;/P&gt;
&lt;P&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&amp;nbsp;If (ErrAction And ErrAction_Trace) = ErrAction_Trace Then _&lt;BR&gt;&amp;nbsp;&amp;nbsp;ScriptContext.Echo "&amp;nbsp; + " &amp;amp; sPropName &amp;amp; " :: '" &amp;amp; GetWMIProperty &amp;amp; "'"&lt;BR&gt;&amp;nbsp;&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Const EVENT_TYPE_SUCCESS = 0&lt;BR&gt;Const EVENT_TYPE_ERROR = 1&lt;BR&gt;Const EVENT_TYPE_WARNING = 2&lt;BR&gt;Const EVENT_TYPE_INFORMATION = 4&lt;BR&gt;Const EVENT_TYPE_AUDITSUCCESS = 8&lt;BR&gt;Const EVENT_TYPE_AUDITFAILURE = 16&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Function ThrowScriptError(sMessage, oErr)&lt;BR&gt;'&lt;BR&gt;' ThrowScriptError :: Creates an event and sends it back to the mom server&lt;BR&gt;'&lt;BR&gt;'&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Resume Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ThrowScriptErrorNoAbort sMessage, oErr&lt;BR&gt;&amp;nbsp;ScriptContext.Quit()&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;Function ThrowScriptErrorNoAbort(sMessage, oErr)&lt;BR&gt;'&lt;BR&gt;' ThrowScriptError :: Creates an event and sends it back to the mom server&lt;BR&gt;'&lt;BR&gt;'&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim sErrDescription, sErrNumber&lt;BR&gt;&amp;nbsp;sErrDescription = oErr.Description&lt;BR&gt;&amp;nbsp;sErrNumber = oErr.Number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;On Error Resume Next&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Dim oScriptErrorEvent&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Set oScriptErrorEvent = ScriptContext.CreateEvent()&lt;BR&gt;&amp;nbsp;With oScriptErrorEvent&lt;BR&gt;&amp;nbsp;&amp;nbsp;.EventNumber = 40000&lt;BR&gt;&amp;nbsp;&amp;nbsp;.EventType = EVENT_TYPE_ERROR&lt;BR&gt;&amp;nbsp;&amp;nbsp;.Message = sMessage&lt;BR&gt;&amp;nbsp;&amp;nbsp;.SetEventParameter "Microsoft SQL Server"&lt;BR&gt;&amp;nbsp;&amp;nbsp;.SetEventParameter sMessage&lt;BR&gt;&amp;nbsp;&amp;nbsp;.SetEventParameter sErrDescription&lt;BR&gt;&amp;nbsp;&amp;nbsp;.SetEventParameter sErrNumber&lt;BR&gt;&amp;nbsp;End With&lt;BR&gt;&amp;nbsp;ScriptContext.Submit oScriptErrorEvent&lt;BR&gt;&amp;nbsp;ScriptContext.Echo "ThrowScriptError('" &amp;amp; sMessage &amp;amp; "')"&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Function MomCreateObject(sProgramId)&lt;BR&gt;'&lt;BR&gt;' MomCreateObject :: Creates an automation object.&lt;BR&gt;'&lt;BR&gt;'&lt;BR&gt;&amp;nbsp;On Error Resume Next&lt;BR&gt;&amp;nbsp;Set MomCreateObject = CreateObject(sProgramId)&lt;BR&gt;&amp;nbsp;If Err.Number &amp;lt;&amp;gt; 0 Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;ThrowScriptError "Unable to create automation object '" &amp;amp; sProgramId &amp;amp; "'", Err&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;&amp;nbsp;On Error Goto 0&lt;BR&gt;End Function&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;
&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;/P&gt;&lt;FONT face="Courier New"&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Michel&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.infosupport.com/aggbug.aspx?PostID=2276" width="1" height="1"&gt;</description><category domain="http://blogs.infosupport.com/blogs/michelk/archive/tags/MOM+2005/default.aspx">MOM 2005</category></item></channel></rss>