<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;AkAARHg7cCp7ImA9WhRUFk0.&quot;"><id>tag:blogger.com,1999:blog-15559937</id><updated>2012-01-26T15:12:25.608-05:00</updated><category term="sccm" /><category term="reports" /><category term="sms" /><category term="os" /><category term="dcm" /><category term="dp" /><category term="vm" /><category term="ds" /><category term="dell mp" /><category term="miis" /><category term="misc" /><category term="batch" /><category term="tasks" /><category term="powershell" /><category term="dns" /><category term="sql" /><category term="osd" /><category term="ad mp" /><category term="scom" /><category term="script" /><category term="opsmgr" /><category term="mom" /><category term="opalis" /><category term="configmgr" /><category term="softdist" /><category term="smug" /><title>organic fertilizer</title><subtitle type="html">[load "*",8,1] : 
notes, ramblings, contemplations, transmutations, and otherwise ... on management and directory miscellanea.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://marcusoh.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>403</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/blogspot/marcusoh" /><feedburner:info uri="blogspot/marcusoh" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>33.942751</geo:lat><geo:long>-84.317694</geo:long><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-nc-sa/2.0/" /><logo>http://creativecommons.org/images/public/somerights20.gif</logo><feedburner:emailServiceId>blogspot/marcusoh</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fblogspot%2Fmarcusoh" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fblogspot%2Fmarcusoh" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fblogspot%2Fmarcusoh" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/blogspot/marcusoh" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fblogspot%2Fmarcusoh" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fblogspot%2Fmarcusoh" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fblogspot%2Fmarcusoh" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><entry gd:etag="W/&quot;AkAARHg4eyp7ImA9WhRUFk0.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-6047825158601685084</id><published>2012-01-26T15:12:00.001-05:00</published><updated>2012-01-26T15:12:25.633-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-26T15:12:25.633-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>system center advisor released: what's it mean?</title><content type="html">&lt;p&gt;since I live in atlanta, it seems totally relevant to at least give a little blurb about a product release that went by the codename 'Atlanta'.&lt;/p&gt; &lt;p&gt;so what is advisor? it's basically a cloud service that "advises" on your server configuration. essentially you get data that's been scrubbed or normalized so that it's relevant to the alert you receive. anyway, it's designed to catch potential problems basically. it has some alerting features (email) that you can set up so that you don't have to go through the portal... though it does look kind of sharp. :)&lt;/p&gt; &lt;p&gt;if you have system center operations manager (opsmgr), you can think of this as kind of a complementary product. what advisor is not is a monitoring system. it's not real time. it doesn't handle the basic monitoring requirements that you get out of opsmgr.&lt;/p&gt; &lt;p&gt;if you want more information, check out this blog post: &lt;a href="http://blogs.technet.com/b/server-cloud/archive/2012/01/26/system-center-advisor-released.aspx"&gt;http://blogs.technet.com/b/server-cloud/archive/2012/01/26/system-center-advisor-released.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;there's also a 3-minute primer that you might find useful: &lt;a href="http://www.microsoft.com/en-us/showcase/details.aspx?uuid=32e32209-71c4-43d2-b2ae-015598bf5b7d"&gt;http://www.microsoft.com/en-us/showcase/details.aspx?uuid=32e32209-71c4-43d2-b2ae-015598bf5b7d&lt;/a&gt;&lt;/p&gt; &lt;p&gt;and lastly, you can sign up for your own 60-day trial if you want to give it a spin: &lt;a title="http://bit.ly/wK8iMn" href="http://bit.ly/wK8iMn"&gt;http://bit.ly/wK8iMn&lt;/a&gt;&lt;/p&gt; &lt;p&gt;if you have software assurance on sql server or windows server, you get the service for free.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-6047825158601685084?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PkQAZJb9_UFYP4ZmYX3E7-jMJ3s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PkQAZJb9_UFYP4ZmYX3E7-jMJ3s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PkQAZJb9_UFYP4ZmYX3E7-jMJ3s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PkQAZJb9_UFYP4ZmYX3E7-jMJ3s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=jmVhUmZKDeU:f0sarQ25sJw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=jmVhUmZKDeU:f0sarQ25sJw:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=jmVhUmZKDeU:f0sarQ25sJw:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=jmVhUmZKDeU:f0sarQ25sJw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=jmVhUmZKDeU:f0sarQ25sJw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=jmVhUmZKDeU:f0sarQ25sJw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=jmVhUmZKDeU:f0sarQ25sJw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=jmVhUmZKDeU:f0sarQ25sJw:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=jmVhUmZKDeU:f0sarQ25sJw:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/jmVhUmZKDeU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/6047825158601685084/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2012/01/system-center-advisor-released-what-it.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6047825158601685084?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6047825158601685084?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/jmVhUmZKDeU/system-center-advisor-released-what-it.html" title="system center advisor released: what&amp;#39;s it mean?" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2012/01/system-center-advisor-released-what-it.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcNSXw6fyp7ImA9WhRWEEQ.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-6005604670477674497</id><published>2011-12-28T11:34:00.001-05:00</published><updated>2011-12-28T11:34:58.217-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-28T11:34:58.217-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="scom" /><category scheme="http://www.blogger.com/atom/ns#" term="opsmgr" /><title>listing the group membership of a computer in opsmgr [part 3]</title><content type="html">&lt;p&gt;a long time ago, I posted about this stuff...&lt;/p&gt; &lt;p&gt;&lt;a href="http://marcusoh.blogspot.com/2010/01/listing-group-membership-of-computer-in.html"&gt;http://marcusoh.blogspot.com/2010/01/listing-group-membership-of-computer-in.html&lt;/a&gt;&lt;br&gt;&lt;a href="http://marcusoh.blogspot.com/2010/01/listing-group-membership-of-computer-in_06.html"&gt;http://marcusoh.blogspot.com/2010/01/listing-group-membership-of-computer-in_06.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;both of which were just works in progress... and as it turns out, completely wrong! I ran into this post this morning that simplified what I was doing down to a few lines. here it is:&lt;/p&gt; &lt;p id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;$group = Get-MonitoringObject | Where { $_.DisplayName &lt;span style="color: #cc6633"&gt;-eq&lt;/span&gt; &lt;span style="color: #006080"&gt;"YourGroupName"&lt;/span&gt;}&lt;br&gt;$MonitoringClass = Get-MonitoringClass -Name &lt;span style="color: #006080"&gt;"Microsoft.Windows.Computer"&lt;/span&gt;&lt;br&gt;$group.GetRelatedMonitoringObjects($MonitoringClass,&lt;span style="color: #006080"&gt;"Recursive"&lt;/span&gt;) | Select DisplayName&lt;/pre&gt;&lt;br&gt;source: &lt;a href="http://michielw.blogspot.com/2010/12/scom-get-nested-group-members.html"&gt;http://michielw.blogspot.com/2010/12/scom-get-nested-group-members.html&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-6005604670477674497?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/XVNLXQAl3KoZeQFgsxvFA40e-Go/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XVNLXQAl3KoZeQFgsxvFA40e-Go/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/XVNLXQAl3KoZeQFgsxvFA40e-Go/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XVNLXQAl3KoZeQFgsxvFA40e-Go/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=ytdWnM_VaMU:M7nAmFpWEWc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=ytdWnM_VaMU:M7nAmFpWEWc:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=ytdWnM_VaMU:M7nAmFpWEWc:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=ytdWnM_VaMU:M7nAmFpWEWc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=ytdWnM_VaMU:M7nAmFpWEWc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=ytdWnM_VaMU:M7nAmFpWEWc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=ytdWnM_VaMU:M7nAmFpWEWc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=ytdWnM_VaMU:M7nAmFpWEWc:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=ytdWnM_VaMU:M7nAmFpWEWc:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/ytdWnM_VaMU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/6005604670477674497/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/12/listing-group-membership-of-computer-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6005604670477674497?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6005604670477674497?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/ytdWnM_VaMU/listing-group-membership-of-computer-in.html" title="listing the group membership of a computer in opsmgr [part 3]" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/12/listing-group-membership-of-computer-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcAQXw4fip7ImA9WhRWEE4.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-2418678125858360351</id><published>2011-12-27T20:34:00.000-05:00</published><updated>2011-12-27T20:34:00.236-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-27T20:34:00.236-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>my 15 most popular posts of 2011</title><content type="html">&lt;p&gt;in the interest of full disclosure, at some point, blogger or analytics did something... but I wasn't tracking page hits for the majority of the year so it's actually only about the last four months. unfortunately, blogger stats provide limited filtering for dates. I was hoping to have some good information to post something like this. oh well. it'll have to do. :)&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2009/07/understanding-ad-op-master-is.html"&gt;understanding the “ad op master is inconsistent” alert&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2008/04/how-to-retrieve-your-ip-address-with.html"&gt;how to retrieve your ip address with powershell...&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2011/04/sccm-content-hash-fails-to-match.html"&gt;sccm: content hash fails to match&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2008/10/executing-batch-files-remotely-with.html"&gt;executing batch files remotely with psexec …&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2011/04/sccm-client-stuck-downloading-package.html"&gt;sccm: client stuck downloading package with bit .tmp files in cache directory&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2007/01/misc-netstumbler-in-vista.html"&gt;misc: netstumbler in vista...&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2010/05/outlook-2010-does-not-successfully-book.html"&gt;outlook 2010 does not successfully book a resource&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2011/08/sccm-integrating-dell-warranty-data.html"&gt;sccm: integrating dell warranty data into configmgr&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2009/02/writing-event-log-entries-with.html"&gt;writing event log entries with powershell&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2008/12/using-preloadpkgonsiteexe-to-stage.html"&gt;using preloadpkgonsite.exe to stage compressed copies to child site distribution points&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2009/10/list-domain-controllers-with-powershell.html"&gt;list domain controllers with powershell&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2008/12/using-powershell-to-replace-find-or.html"&gt;using powershell to replace “find” or “findstr”&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2010/01/how-to-synchronize-sticky-notes-in_26.html"&gt;how to synchronize sticky notes in windows 7&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2010/10/sccm-custom-data-discovery-records-ddrs.html"&gt;sccm: custom data discovery records (DDRs) using powershell&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://marcusoh.blogspot.com/2009/05/preloadpkgonsite-generates-failed-to.html"&gt;preloadpkgonsite generates failed to get specified package in database errors&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-2418678125858360351?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/tsZBzI6NTfUzPNPDM1vGhyWOgLk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tsZBzI6NTfUzPNPDM1vGhyWOgLk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/tsZBzI6NTfUzPNPDM1vGhyWOgLk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tsZBzI6NTfUzPNPDM1vGhyWOgLk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=k5ajucUFx9Y:p8f7NAExVhE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=k5ajucUFx9Y:p8f7NAExVhE:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=k5ajucUFx9Y:p8f7NAExVhE:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=k5ajucUFx9Y:p8f7NAExVhE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=k5ajucUFx9Y:p8f7NAExVhE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=k5ajucUFx9Y:p8f7NAExVhE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=k5ajucUFx9Y:p8f7NAExVhE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=k5ajucUFx9Y:p8f7NAExVhE:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=k5ajucUFx9Y:p8f7NAExVhE:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/k5ajucUFx9Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/2418678125858360351/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/12/my-15-most-popular-posts-of-2011.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/2418678125858360351?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/2418678125858360351?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/k5ajucUFx9Y/my-15-most-popular-posts-of-2011.html" title="my 15 most popular posts of 2011" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/12/my-15-most-popular-posts-of-2011.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkQFRn85eSp7ImA9WhRWEE0.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-4800251790370867291</id><published>2011-12-27T10:38:00.001-05:00</published><updated>2011-12-27T10:38:37.121-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-27T10:38:37.121-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>moving to endpoint protection</title><content type="html">&lt;p&gt;made the switch this morning to forefront endpoint protection -- or what will be known as system center endpoint protection. most of it went okay, but there were a couple of mcafee components that made the process PAINFUL! believe it or not, the antivirus component was not it.&lt;/p&gt; &lt;p&gt;the removal of the host intrusion prevention system (hips) and the mcafee agent itself were both more time-consuming than required, each with its own peculiarity. :/&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;removing hips&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;attempting to remove the hips agent may produce an error about needing to "disable self-protect mode." I am shamelessly stealing this from the site &lt;a href="http://kmit4u.blogspot.com/2011/04/how-to-disable-host-intrusion.html"&gt;kmit4u&lt;/a&gt; because the instructions are quite near perfect and don't need revising:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Click &lt;b&gt;Start&lt;/b&gt;, &lt;b&gt;Run&lt;/b&gt;, type &lt;b&gt;explorer &lt;/b&gt;and click &lt;b&gt;OK&lt;/b&gt;. &lt;/li&gt; &lt;li&gt;Navigate to: &lt;strong&gt;C:\Program Files\McAfee\Host Intrusion Prevention\&lt;/strong&gt;&lt;/li&gt; &lt;li&gt;Double-click &lt;strong&gt;McAfeeFire.exe&lt;/strong&gt;. &lt;/li&gt; &lt;li&gt;Click &lt;strong&gt;Task&lt;/strong&gt;, &lt;strong&gt;Unlock User Interface&lt;/strong&gt;. &lt;/li&gt; &lt;li&gt;Type&lt;strong&gt; &lt;/strong&gt;the unlock code, and select &lt;strong&gt;Administrator Password&lt;/strong&gt;.&lt;br&gt;&lt;strong&gt;NOTE:&lt;/strong&gt; By default, the unlock code is &lt;strong&gt;abcde12345&lt;/strong&gt;.&amp;nbsp; &lt;/li&gt; &lt;li&gt;After the user interface is unlocked, click the &lt;strong&gt;IPS Policy&lt;/strong&gt; tab.&amp;nbsp; &lt;/li&gt; &lt;li&gt;Deselect &lt;strong&gt;Enable Host IPS&lt;/strong&gt; and &lt;strong&gt;Enable Network IPS&lt;/strong&gt;. (The Firewall Policy can be disabled on its own tab.) &lt;/li&gt; &lt;li&gt;Select &lt;strong&gt;Task&lt;/strong&gt;, &lt;strong&gt;Exit&lt;/strong&gt;.&lt;br&gt;Credit: &lt;a href="http://kmit4u.blogspot.com/2011/04/how-to-disable-host-intrusion.html#ixzz1hkWt89jU"&gt;Knowledge Management IT for you: How to disable the Host Intrusion Prevention(IDS) Mcafee disable self-protect mode&lt;/a&gt;&lt;br&gt;Under Creative Commons License: &lt;a href="http://creativecommons.org/licenses/by/3.0"&gt;Attribution&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;after following those steps, i was able to remove the hips agent!&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;removing the mcafee agent&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;while attempting to remove the mcafee agent, it kept telling me that "other products are still using it." uh no. I removed all other products! here's how you force it:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;open up a cmd prompt.&lt;/li&gt; &lt;li&gt;navigate to the directory where frminst.exe is located. generally this is in the "common framework" directory of mcafee.&lt;/li&gt; &lt;li&gt;run the following: &lt;/li&gt;&lt;/ol&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;frminst.exe /forceuninstall&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;now, smile happily as you have slain the hideous beast!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-4800251790370867291?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fVGY8pcYO25AAduHthZj6fdV6bY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fVGY8pcYO25AAduHthZj6fdV6bY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fVGY8pcYO25AAduHthZj6fdV6bY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fVGY8pcYO25AAduHthZj6fdV6bY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=wInqPLvTmCo:WlJoUYqklEY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=wInqPLvTmCo:WlJoUYqklEY:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=wInqPLvTmCo:WlJoUYqklEY:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=wInqPLvTmCo:WlJoUYqklEY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=wInqPLvTmCo:WlJoUYqklEY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=wInqPLvTmCo:WlJoUYqklEY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=wInqPLvTmCo:WlJoUYqklEY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=wInqPLvTmCo:WlJoUYqklEY:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=wInqPLvTmCo:WlJoUYqklEY:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/wInqPLvTmCo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/4800251790370867291/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/12/moving-to-endpoint-protection.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4800251790370867291?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4800251790370867291?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/wInqPLvTmCo/moving-to-endpoint-protection.html" title="moving to endpoint protection" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/12/moving-to-endpoint-protection.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QDSXc5eip7ImA9WhRREEo.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-6586134457119051827</id><published>2011-11-23T15:16:00.001-05:00</published><updated>2011-11-23T15:16:18.922-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-23T15:16:18.922-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="sql" /><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="os" /><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><category scheme="http://www.blogger.com/atom/ns#" term="sms" /><category scheme="http://www.blogger.com/atom/ns#" term="configmgr" /><title>sccm: computers with names greater than 15 characters</title><content type="html">&lt;p&gt;and coincidentally, blog posts with really long titles.&lt;/p&gt; &lt;p&gt;if you run into scenarios where you find that computers with longer than 15 characters are exhibiting strange issues in an application, you can root out these computers with configmgr or AD. while the computer itself may show a longer than 15 character machine name, the records for it in AD and configmgr show a truncated value.&lt;/p&gt; &lt;p&gt;this is interesting because the computer is registered with its long name in DNS. it can "interesting" when you see a truncated name that doesn't resolve (especially where WINS is involved and handles the resolution for netbios lookup adding further confusion.)&lt;/p&gt; &lt;p&gt;funny enough, where you root out this problem exists kind of on the same plane for both AD and configmgr. it's the DNS host name that gives it away! take a look a these screenshots -- from SCCM and AD, respectively:&lt;/p&gt; &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-rxDszugVhBw/Ts1UkPgXzbI/AAAAAAAAAeM/M7dJkYhD5Xc/image%25255B2%25255D.png?imgmax=800" width="587" height="194"&gt;&lt;/p&gt; &lt;p&gt;(removed the computer names out of this screenshot)&lt;/p&gt; &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-b20p_KoDoUY/Ts1UkpePrcI/AAAAAAAAAeU/VJU2yA1gvSs/image%25255B11%25255D.png?imgmax=800" width="529" height="187"&gt;&lt;/p&gt; &lt;p&gt;so what do you do with this information, now that you know? well, let's look at ways of identifying it.&lt;/p&gt; &lt;p&gt;first of all, you can count out the characters to see how many are in the name. since dnsname and dnshostname have the same thing, we could use something like this:&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;p&gt;((Get-QADComputer myComputer).dnshostname.split(&lt;span style="color: #006080"&gt;"."&lt;/span&gt;)[0]) | Measure-object -Character&lt;/p&gt;&lt;p&gt;Characters&lt;br&gt;----------&lt;br&gt;        16&lt;/p&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;


&lt;p&gt;now we can loop that into a general search for the entire domain:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Get-QADComputer -SearchRoot &lt;span style="color: #006080"&gt;'whatev you use'&lt;/span&gt; -SizeLimit 0 | where {($_.dnshostname.split(&lt;span style="color: #006080"&gt;"."&lt;/span&gt;)[0] | Measure-Object -Character).characters &lt;span style="color: #cc6633"&gt;-gt&lt;/span&gt; 15}&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;if sql is your thing and you prefer to query configmgr, here's the sql query:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;select&lt;/span&gt; &lt;span style="color: #0000ff"&gt;distinct&lt;/span&gt; dnshostname0 &lt;br&gt;&lt;span style="color: #0000ff"&gt;from&lt;/span&gt; dbo.v_GS_NETWORK_ADAPTER_CONFIGUR&lt;br&gt;&lt;span style="color: #0000ff"&gt;where&lt;/span&gt; LEN(dnshostname0) &amp;gt; 15&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;

&lt;p&gt;hope that helps!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-6586134457119051827?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Js1ezaHpK_smmwWUxxp1FdhHUxk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Js1ezaHpK_smmwWUxxp1FdhHUxk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Js1ezaHpK_smmwWUxxp1FdhHUxk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Js1ezaHpK_smmwWUxxp1FdhHUxk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=tSrokKS5auE:bC45jqaMCxA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=tSrokKS5auE:bC45jqaMCxA:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=tSrokKS5auE:bC45jqaMCxA:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=tSrokKS5auE:bC45jqaMCxA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=tSrokKS5auE:bC45jqaMCxA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=tSrokKS5auE:bC45jqaMCxA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=tSrokKS5auE:bC45jqaMCxA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=tSrokKS5auE:bC45jqaMCxA:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=tSrokKS5auE:bC45jqaMCxA:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/tSrokKS5auE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/6586134457119051827/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/11/sccm-computers-with-names-greater-than.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6586134457119051827?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6586134457119051827?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/tSrokKS5auE/sccm-computers-with-names-greater-than.html" title="sccm: computers with names greater than 15 characters" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-rxDszugVhBw/Ts1UkPgXzbI/AAAAAAAAAeM/M7dJkYhD5Xc/s72-c/image%25255B2%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/11/sccm-computers-with-names-greater-than.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEUCR307eip7ImA9WhRSFEU.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-3262002647861161859</id><published>2011-11-16T17:24:00.001-05:00</published><updated>2011-11-16T17:24:26.302-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-16T17:24:26.302-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><category scheme="http://www.blogger.com/atom/ns#" term="configmgr" /><title>sccm: how old is my data?</title><content type="html">&lt;p&gt;here is something I wrote up not too long ago for the benefit of some of my coworkers. it's nothing new and might be what most of you know, but I wanted to post it up just in case. it's a question I'm asked often... so it seemed like something worthy of sharing.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;How old is my data?&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;&lt;i&gt;&lt;/i&gt; &lt;p&gt;Let me first summarize a few things. SCCM is generally configured to hold a set amount of data per given data type. In some cases, you may find that you have data that is older than the specified age value (90 today, 30 sometime soon). So what’s going on here? The short answer is, the data is still current. There are many things that comprise the composite object record. Let’s take my client for example. Here is a screen shot: &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-0rcdSvdZSD0/TsQ4GPCkISI/AAAAAAAAAdE/lS69vhpnCBo/image%25255B2%25255D.png?imgmax=800" width="354" height="220"&gt; &lt;p&gt;As you will notice, Agent Name, Agent Site, and Agent Time all contain numbers in brackets. The [#] is an index of the property, so to speak. For example, if I were interested in Heartbeat Discovery, I would read the values this way: &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Agent Name[0] :      Heartbeat Discovery&lt;br&gt;Agent Site[0] :      XYZ&lt;br&gt;Agent Time[0] :      10/28/2011 7:31:05 AM&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;As you can see, this discovery record for my client actually contains three distinct discoveries that continue to supply it with fresh discovery information.


&lt;p&gt;&lt;i&gt;&lt;/i&gt;&amp;nbsp; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;When will my data age out?&lt;/font&gt;&lt;/h2&gt;
&lt;p&gt;Data ages out of SCCM when all of the discoveries cease to meet the criteria. For example, in the screenshot above, if Heartbeat Discovery no longer provided discovery data, the agent time would continue to get older and older while the other two discoveries would continue to stay up to date. &lt;em&gt;As long as there are up to date discoveries for a composite record, the entire record is considered fresh.&lt;/em&gt;
&lt;p&gt;&lt;i&gt;&lt;/i&gt;&amp;nbsp; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;Why does this matter?&lt;/font&gt;&lt;/h2&gt;
&lt;p&gt;If you look at the agent names, you’ll notice three. Heartbeat Discovery is the agent itself providing discovery data once a day. As the name implies, it’s a heartbeat basically saying – I AM ALIVE! The other two discoveries are Active Directory based. Normally, you will see that old data persists because of the AD discoveries.
&lt;p&gt;As long as the computer account persists in AD, the AD discovery will pick it up and post the new agent time. As you see, the time value for AD discovery is very close to 12:00:00 AM when most of the AD discoveries are kicked off. The heartbeat data is usually started on machine startup, on the other hand and every 24 hours after that.
&lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002[4]" border="0" alt="clip_image002[4]" src="http://lh6.ggpht.com/-fp861Itk7dk/TsQ4GfsIVSI/AAAAAAAAAdM/RRmKhtzpipc/clip_image002%25255B4%25255D%25255B2%25255D.jpg?imgmax=800" width="340" height="67"&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-3262002647861161859?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DmS6wK5GWXdM92SWmXVKU8boLFA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DmS6wK5GWXdM92SWmXVKU8boLFA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DmS6wK5GWXdM92SWmXVKU8boLFA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DmS6wK5GWXdM92SWmXVKU8boLFA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=P9pbRtLgPrE:KDpxT6e3S_Y:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=P9pbRtLgPrE:KDpxT6e3S_Y:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=P9pbRtLgPrE:KDpxT6e3S_Y:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=P9pbRtLgPrE:KDpxT6e3S_Y:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=P9pbRtLgPrE:KDpxT6e3S_Y:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=P9pbRtLgPrE:KDpxT6e3S_Y:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=P9pbRtLgPrE:KDpxT6e3S_Y:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=P9pbRtLgPrE:KDpxT6e3S_Y:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=P9pbRtLgPrE:KDpxT6e3S_Y:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/P9pbRtLgPrE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/3262002647861161859/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/11/here-is-something-i-wrote-up-not-too.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3262002647861161859?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3262002647861161859?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/P9pbRtLgPrE/here-is-something-i-wrote-up-not-too.html" title="sccm: how old is my data?" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-0rcdSvdZSD0/TsQ4GPCkISI/AAAAAAAAAdE/lS69vhpnCBo/s72-c/image%25255B2%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/11/here-is-something-i-wrote-up-not-too.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0UCQXg9fyp7ImA9WhdbGUU.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-4401684228087650780</id><published>2011-10-18T18:41:00.000-05:00</published><updated>2011-10-18T18:41:00.667-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-18T18:41:00.667-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><category scheme="http://www.blogger.com/atom/ns#" term="configmgr" /><title>enable verbose logging on a sccm server</title><content type="html">&lt;p&gt;lots of posts about how to do this for clients. i found a few places where it indicated how to do this for servers. &lt;/p&gt; &lt;p&gt;(unfortunately, it wasn't on the holy grail of screen real estate for searches -- which is right before I have to scroll, ensuring i will never find it again. :] )&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;component registry path&lt;/font&gt;&lt;/h2&gt; &lt;ul&gt; &lt;li&gt;navigate to: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\COMPONENTS&lt;/li&gt; &lt;li&gt;under this path, select the component key name you're interested in such as SMS_DISCOVERY_DATA_MANAGER.&lt;/li&gt; &lt;li&gt;locate the dword value "Verbose Logging" and set the value to 1.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-b0_n66k0MhY/Tp26brBrK3I/AAAAAAAAAcA/cXeZetYkWuw/image%25255B2%25255D.png?imgmax=800" width="453" height="121"&gt;&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;&lt;/font&gt;&amp;nbsp;&lt;/h2&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;tracing registry path (turns on sql tracing)&lt;/font&gt;&lt;/h2&gt; &lt;ul&gt; &lt;li&gt;navigate to: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing&lt;/li&gt; &lt;li&gt;locate the dword value "SqlEnabled" and set the value to 1.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-4j7nB27jZck/Tp26b5lOuzI/AAAAAAAAAcI/WDq_brb3oq4/image%25255B5%25255D.png?imgmax=800" width="495" height="101"&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;under the path in step 1, select the component key name you're interested in such as SMS_DISCOVERY_DATA_MANAGER.&lt;/li&gt; &lt;li&gt;ensure the value "Enabled" is set to 1.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-jBjxEf3Pu8s/Tp26cGaCjiI/AAAAAAAAAcQ/0-tbHEGC3Uo/image%25255B8%25255D.png?imgmax=800" width="445" height="93"&gt;&lt;/p&gt; &lt;p&gt;don't forget to cycle the SMS_EXECUTIVE service.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-4401684228087650780?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/v8PHp_412YiXp0JvbHarlmBkS7E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/v8PHp_412YiXp0JvbHarlmBkS7E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/v8PHp_412YiXp0JvbHarlmBkS7E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/v8PHp_412YiXp0JvbHarlmBkS7E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=lJDWFpNQj9s:6HL7l8JDvAg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=lJDWFpNQj9s:6HL7l8JDvAg:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=lJDWFpNQj9s:6HL7l8JDvAg:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=lJDWFpNQj9s:6HL7l8JDvAg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=lJDWFpNQj9s:6HL7l8JDvAg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=lJDWFpNQj9s:6HL7l8JDvAg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=lJDWFpNQj9s:6HL7l8JDvAg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=lJDWFpNQj9s:6HL7l8JDvAg:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=lJDWFpNQj9s:6HL7l8JDvAg:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/lJDWFpNQj9s" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/4401684228087650780/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/10/enable-verbose-logging-on-sccm-server.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4401684228087650780?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4401684228087650780?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/lJDWFpNQj9s/enable-verbose-logging-on-sccm-server.html" title="enable verbose logging on a sccm server" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-b0_n66k0MhY/Tp26brBrK3I/AAAAAAAAAcA/cXeZetYkWuw/s72-c/image%25255B2%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/10/enable-verbose-logging-on-sccm-server.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYERHkzfCp7ImA9WhdUEEs.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-6086917909570720472</id><published>2011-09-26T13:01:00.001-05:00</published><updated>2011-09-26T13:01:45.784-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-26T13:01:45.784-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="os" /><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><category scheme="http://www.blogger.com/atom/ns#" term="configmgr" /><category scheme="http://www.blogger.com/atom/ns#" term="ds" /><title>how to verify a server is running r2</title><content type="html">&lt;p&gt;locating windows server 2003 running r2 is a bit of an obscure value. with windows server 2008, you can simply check the build number. unfortunately, in 2003, it's a little more hidden. here's a couple of ways of getting the information.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;using configmgr&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;in configmgr, one place the information is contained is in the view v_gs_operating_system in the name0 column:&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;select&lt;/span&gt; sys.Name0, os.Name0&lt;br&gt;&lt;span style="color: #0000ff"&gt;from&lt;/span&gt; v_r_system sys&lt;br&gt;&lt;span style="color: #0000ff"&gt;inner&lt;/span&gt; &lt;span style="color: #0000ff"&gt;join&lt;/span&gt; v_GS_OPERATING_SYSTEM os &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; os.ResourceID = sys.ResourceID&lt;br&gt;&lt;span style="color: #0000ff"&gt;where&lt;/span&gt; os.Name0 &lt;span style="color: #0000ff"&gt;like&lt;/span&gt; &lt;span style="color: #006080"&gt;'%2003%R2%'&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;order&lt;/span&gt; &lt;span style="color: #0000ff"&gt;by&lt;/span&gt; sys.Name0&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;h2&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2&gt;&lt;font style="font-weight: bold"&gt;using wmi&lt;/font&gt;&lt;/h2&gt;
&lt;p&gt;in wmi, the information is stored in win32_operatingsystem in the attribute "OtherTypeDescription" as indicated &lt;a href="http://msdn.microsoft.com/en-us/library/aa394239%28v=VS.85%29.aspx"&gt;here in this msdn article&lt;/a&gt;.&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;OtherTypeDescription&lt;br&gt;Data type: string&lt;br&gt;Access type: Read-only&lt;br&gt;Additional description for the current operating system version.&lt;br&gt;&lt;br&gt;&lt;font style="background-color: #ffff00"&gt;Windows Server 2003 R2:  Contains the string "R2".&lt;/font&gt;&lt;br&gt;Windows Server 2003, Windows XP, Windows 2000, and Windows NT 4.0:  OtherTypeDescription is null.&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;you could use a powershell command like this to check a server:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Get-WmiObject -ComputerName myComputer -Class win32_operatingsystem | fl __server, caption, othertypedescription&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;resulting in this:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;__SERVER             : myComputer&lt;br&gt;caption              : Microsoft(R) Windows(R) Server 2003 Standard x64 Edition&lt;br&gt;othertypedescription : R2&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;thanks erik and chip. :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-6086917909570720472?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-1fIpPwjYDPRpBoyojbnbPbfg2U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-1fIpPwjYDPRpBoyojbnbPbfg2U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-1fIpPwjYDPRpBoyojbnbPbfg2U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-1fIpPwjYDPRpBoyojbnbPbfg2U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=gXGG2JiCoEs:nrkwYW7JASc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=gXGG2JiCoEs:nrkwYW7JASc:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=gXGG2JiCoEs:nrkwYW7JASc:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=gXGG2JiCoEs:nrkwYW7JASc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=gXGG2JiCoEs:nrkwYW7JASc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=gXGG2JiCoEs:nrkwYW7JASc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=gXGG2JiCoEs:nrkwYW7JASc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=gXGG2JiCoEs:nrkwYW7JASc:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=gXGG2JiCoEs:nrkwYW7JASc:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/gXGG2JiCoEs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/6086917909570720472/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/09/how-to-verify-server-is-running-r2.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6086917909570720472?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6086917909570720472?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/gXGG2JiCoEs/how-to-verify-server-is-running-r2.html" title="how to verify a server is running r2" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/09/how-to-verify-server-is-running-r2.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4FSHg7eSp7ImA9WhdQFU8.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-5193337133528146594</id><published>2011-08-16T15:51:00.001-05:00</published><updated>2011-08-16T15:51:59.601-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-16T15:51:59.601-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>windows anti-virus exclusion list</title><content type="html">&lt;p&gt;if you manage anti-virus in any form, you are already familiar with &lt;a title="http://social.technet.microsoft.com/wiki/contents/articles/953.aspx" href="http://social.technet.microsoft.com/wiki/contents/articles/953.aspx"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" align="right" src="http://lh3.ggpht.com/--w3G0Kuy9VA/TkrYbnUKS1I/AAAAAAAAAZY/yBwJRdx1ZtM/image%25255B16%25255D.png?imgmax=800" width="227" height="69"&gt;&lt;/a&gt;exclusion lists. &lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/953.aspx"&gt;this wiki article&lt;/a&gt; supplies links to just about any microsoft product you can think of and all of the exclusions you may need.&lt;/p&gt; &lt;p&gt;&lt;a title="http://social.technet.microsoft.com/wiki/contents/articles/953.aspx" href="http://social.technet.microsoft.com/wiki/contents/articles/953.aspx"&gt;http://social.technet.microsoft.com/wiki/contents/articles/953.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;pro tip: if you &lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/953/rss.aspx"&gt;subscribe to the article&lt;/a&gt;, you can get updates whenever more products are added.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-5193337133528146594?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TsVltsBOW0-bjzn7SvqyzvK98tk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TsVltsBOW0-bjzn7SvqyzvK98tk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TsVltsBOW0-bjzn7SvqyzvK98tk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TsVltsBOW0-bjzn7SvqyzvK98tk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=_7MprMqg3pE:TGHE9itwy1M:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=_7MprMqg3pE:TGHE9itwy1M:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=_7MprMqg3pE:TGHE9itwy1M:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=_7MprMqg3pE:TGHE9itwy1M:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=_7MprMqg3pE:TGHE9itwy1M:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=_7MprMqg3pE:TGHE9itwy1M:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=_7MprMqg3pE:TGHE9itwy1M:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=_7MprMqg3pE:TGHE9itwy1M:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=_7MprMqg3pE:TGHE9itwy1M:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/_7MprMqg3pE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/5193337133528146594/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/08/windows-anti-virus-exclusion-list.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/5193337133528146594?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/5193337133528146594?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/_7MprMqg3pE/windows-anti-virus-exclusion-list.html" title="windows anti-virus exclusion list" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/--w3G0Kuy9VA/TkrYbnUKS1I/AAAAAAAAAZY/yBwJRdx1ZtM/s72-c/image%25255B16%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/08/windows-anti-virus-exclusion-list.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0YEQX07fCp7ImA9WhdQF0o.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-3903714108859650103</id><published>2011-08-10T08:19:00.001-05:00</published><updated>2011-08-19T13:38:20.304-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-19T13:38:20.304-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><title>sccm: integrating dell warranty data into configmgr</title><content type="html">&lt;p&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;UPDATE&lt;/strong&gt;: forgot to add the preparatory step to randomize the datescriptran values.&lt;br&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;UPDATE&lt;/strong&gt;: greg ramsey asked me to post the script so here it is. click &lt;a href="https://skydrive.live.com/?cid=a2c18f0fef4d1d36&amp;amp;sc=documents&amp;amp;uc=1&amp;amp;id=A2C18F0FEF4D1D36%21828#"&gt;HERE&lt;/a&gt;. it's called MCO_DellWarranty.zip&lt;/font&gt;&lt;/p&gt; &lt;p&gt;this is a process for joining dell warranty information to your configmgr discovery and inventory database. challenges in the past have been that dell was not very forthcoming with providing an easy to query, easy to access warranty database. often times it had to be delivered to you in a spreadsheet or scraped off a webpage which made for inconsistent data updates and constant script failures.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;history&lt;/h2&gt; &lt;p&gt;in my time as an administrator, there have been many iterations of this that i have used. the &lt;a href="http://marcusoh.blogspot.com/2006/12/sms-getting-dell-serial-numbers-to-give.html"&gt;first one was a little vbscript&lt;/a&gt; i wrote which would take a text dump i would get from dell, read in the values, and insert the records into a table. while this worked, it was most cumbersome getting dell to send me the files on a routine basis.&lt;/p&gt; &lt;p&gt;the &lt;a href="http://marcusoh.blogspot.com/2009/06/retrieving-dell-warranty-data-via.html"&gt;second one, a bit more elaborate, was a powershell script&lt;/a&gt; i wrote which would &lt;a href="http://marcusoh.blogspot.com/2006/09/misc-displaying-dell-warranty-data.html"&gt;go to a webpage with the specified serial number&lt;/a&gt; and scrape the information. this process worked relatively well, except that their webpage format changed constantly causing the script to error out more often than not.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;background&lt;/h2&gt; &lt;p&gt;hopefully this is the last iteration. this version is a play on the &lt;a href="http://myitforum.com/cs2/blogs/skeiffer/archive/2011/05/11/dell-warranty-info.aspx"&gt;version created by scott keiffer&lt;/a&gt;. he created a module which utilizes a web service that dell set up. (you didn't know there was a web service?) along with the module, scott wrote up a powershell script that retrieves warranty data and inserts it into a sql table.&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;http://xserv.dell.com/services/assetservice.asmx&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;there's two ways to get the data included in his solution. one is done client side, the other server side. my preference is the server side method, but i wanted to change things up a bit so &lt;strong&gt;that it worked in a manner that i was more comfortable&lt;/strong&gt; with. in particular, i wanted to implement it so that it would do the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;do not drop the database table on every execution 
&lt;li&gt;only create the table when it doesn't already exist 
&lt;li&gt;update records that exist and insert new ones that do not 
&lt;li&gt;update stale records&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;almost every change i had to make was inside of the sql query statements so for the most part, it would have been fairly basic for most sql dbas. i, however, am NO dba hence the effort required for me was much greater than i care to admit. :-|&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;script changes&lt;/h2&gt;
&lt;p&gt;my script alterations were minor. i think you'll agree. here's a short run down with the why:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;$tablequery (62) - this is a variable in which i'm holding a sql statement that creates the table IF the table DOES NOT already exist. this is handled in a sql if statement. (the original script dropped the table and created a new one each time.) 
&lt;li&gt;$dellquery (81) - this variable also stores a sql statement. the query looks for any system that is matches a dell profile AND does not have a warranty end date in the dellwarrantyinfo table OR has a &lt;strong&gt;datescriptran&lt;/strong&gt; value older than a randomized number. (the original script simply pulled back any system that matched a dell profile.) 
&lt;li&gt;check for null value or empty arrays (102) - this is just a slight modification to adjust to the kind of data that is pulled in from the $dellquery change. i didn't correct the error statements yet when no systems are detected for updating. i guess i'm being lazy since it works just fine. 
&lt;li&gt;update statement instead of insert (114) - i added an if statement here to handle how sql manages the record. if it doesn't exist, insert it. if it does, update it. i figure the tradeoff in not having to gather the warranty data and create a new record each time it runs (in environments with a lot of systems) is fair for having to lookup whether the record exists or not.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;preparatory step&lt;/h2&gt;
&lt;p&gt;as you can imagine, all of the datescriptran values would be identical for anything that ran during the first execution. this doesn't bode well for updating a group of systems at a time since they would all evaluate to having old warranty data at some point in the future. so... after your first execution, you will need to run the following sql statement which will randomize the date value to some degree:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;UPDATE&lt;/span&gt; DellWarrantyInfo&lt;br&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt; [DateScriptRan] = DateAdd(dd, -(ABS(CHECKSUM(NEWID())) % 180 + 23), GetDate())&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;this makes the values somewhere less than or equal to 180 and greater than or equal to 23. you can move the values around to whatever is appropriate for you.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;the script&lt;/h2&gt;
&lt;p&gt;ready to play? i cannot reiterate how IMPORTANT it is to test, test, test in a lab environment. there are too many environmental differences to run things blindly. i don't even know if it runs in my environment correctly. ;)&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&amp;lt;&lt;span style="color: #008000"&gt;#&lt;/span&gt;&lt;br&gt;DELL Warrenty Info - v1.0&lt;br&gt;Scott Keiffer, 2011 (skeiffer_A_T_cm_D_O_T_utexas_D_O_T_edu)&lt;br&gt;Marcus C. Oh, 8/10/2011 (marcus.oh_at_g_mail_dot_com)&lt;br&gt;    A few minor changes &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; the &lt;span style="color: #0000ff"&gt;script&lt;/span&gt; to work &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; update mode&lt;br&gt;&lt;br&gt;License: GPL v2 or later&lt;br&gt;&lt;br&gt;Notes:&lt;br&gt;This &lt;span style="color: #0000ff"&gt;script&lt;/span&gt; uses the get-dellwarranty &lt;span style="color: #0000ff"&gt;function&lt;/span&gt; and SQL to get and store the warranty information &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; all dell systems &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; a specified ConfigMgr site. &lt;br&gt;&lt;br&gt;Disclaimer:&lt;br&gt;I am not responsible with any problems this &lt;span style="color: #0000ff"&gt;script&lt;/span&gt; may cause you. &lt;br&gt;&lt;span style="color: #008000"&gt;#&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;param&lt;/span&gt; ([parameter(Mandatory=$true)][String]$SQLServer, [parameter(Mandatory=$true)][String]$SiteCode)&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;# SQL function, 1 connection per command, may want to break that up but too lazy.&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; Invoke-SqlQuery&lt;br&gt;{&lt;br&gt;    &lt;span style="color: #0000ff"&gt;param&lt;/span&gt;(&lt;br&gt;    [Parameter(Mandatory=$true)] [string]$ServerInstance,&lt;br&gt;    [string]$Database,&lt;br&gt;    [Parameter(Mandatory=$true)] [string]$Query,&lt;br&gt;    [Int32]$QueryTimeout=600,&lt;br&gt;    [Int32]$ConnectionTimeout=15&lt;br&gt;    )&lt;br&gt;&lt;br&gt;    try {&lt;br&gt;        $ConnectionString = &lt;span style="color: #006080"&gt;"Server=$ServerInstance;Database=$Database;Integrated Security=True;Connect Timeout=$ConnectionTimeout"&lt;/span&gt;&lt;br&gt;        $conn=new-object System.Data.SqlClient.SQLConnection&lt;br&gt;        $conn.ConnectionString=$ConnectionString&lt;br&gt;        $conn.Open()&lt;br&gt;        $cmd=new-object system.Data.SqlClient.SqlCommand($Query,$conn)&lt;br&gt;        $cmd.CommandTimeout=$QueryTimeout&lt;br&gt;        $ds=New-Object system.Data.DataSet&lt;br&gt;        $da=New-Object system.Data.SqlClient.SqlDataAdapter($cmd)&lt;br&gt;        [void]$da.fill($ds)&lt;br&gt;        Write-Output ($ds.Tables[0])&lt;br&gt;    }&lt;br&gt;    finally {&lt;br&gt;        $conn.Dispose()&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;# ---- Main ----&lt;/span&gt;&lt;br&gt;&lt;br&gt;$ConfigMgrDatabase = &lt;span style="color: #006080"&gt;"SMS_$SiteCode"&lt;/span&gt;&lt;br&gt;$warrantyDatabase = &lt;span style="color: #006080"&gt;"DellWarrantyInfo"&lt;/span&gt;&lt;br&gt;$tableName = &lt;span style="color: #006080"&gt;"DellWarrantyInfo"&lt;/span&gt;&lt;br&gt;$scriptPath=Split-Path -parent $MyInvocation.MyCommand.Definition&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;#Import warranty function&lt;/span&gt;&lt;br&gt;Import-Module &lt;span style="color: #006080"&gt;"$scriptPath\DellWarrantyInfoFunction.psm1"&lt;/span&gt;&lt;br&gt;&lt;br&gt;Write-Host &lt;span style="color: #006080"&gt;"--- Dell Warranty Info SQL population script ---"&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;# create or recreate main table&lt;/span&gt;&lt;br&gt;Write-Verbose &lt;span style="color: #006080"&gt;"Recreating main table..."&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;$TableQuery = &lt;span style="color: #006080"&gt;@"&lt;br&gt;IF &lt;br&gt;    Not Exists ( select * from sys.tables where name = 'DellWarrantyInfo' )     &lt;br&gt;BEGIN&lt;br&gt;    create table DellWarrantyInfo ( ResourceID int, ComputerName varchar(40), &lt;br&gt;    DateScriptRan datetime, DaysLeft int, DellIBU varchar(16), &lt;br&gt;    [Description] varchar(40), EndDate datetime, Provider varchar(16), &lt;br&gt;    ServiceTag varchar(16), ShipDate datetime, StartDate datetime, &lt;br&gt;    SystemType varchar(40), WarrantyExtended int); &lt;br&gt;    grant select on DellWarrantyInfo to smsschm_users,webreport_approle&lt;br&gt;END&lt;br&gt;"&lt;/span&gt;@&lt;br&gt;&lt;br&gt;Invoke-SqlQuery -ServerInstance $SQLServer -Database $ConfigMgrDatabase -Query $TableQuery&lt;br&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;(!$?) { Write-Error &lt;span style="color: #006080"&gt;"There was a problem creating or recreating the main table"&lt;/span&gt; }&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;# get a list of dell computers in the site&lt;/span&gt;&lt;br&gt;Write-Host &lt;span style="color: #006080"&gt;"Obtaining list of Dell systems..."&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;$DellQuery = &lt;span style="color: #006080"&gt;@"&lt;br&gt;SELECT DISTINCT sys.netbios_name0 as ComputerName, &lt;br&gt;    sys.ResourceID, bios.SerialNumber0 as ServiceTag&lt;br&gt;FROM v_R_System sys &lt;br&gt;    LEFT OUTER JOIN DellWarrantyInfo as dw on sys.ResourceID = dw.resourceid    &lt;br&gt;    INNER JOIN v_GS_PC_BIOS as bios on bios.ResourceID = sys.ResourceID &lt;br&gt;WHERE bios.Manufacturer0 like '%Dell%'&lt;br&gt;AND    ( dw.EndDate IS NULL&lt;br&gt;      OR dw.EndDate = '' &lt;br&gt;      OR dw.DateScriptRan &amp;lt; DateAdd(dd, -(Round((407-322) * RAND() + 322,0)), GetDate()) )&lt;br&gt;"&lt;/span&gt;@&lt;br&gt;&lt;br&gt;$dellSystems = Invoke-SqlQuery -ServerInstance $SQLServer -Database $ConfigMgrDatabase -Query $DellQuery&lt;br&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;(!$? -or !$dellSystems) { Write-Error &lt;span style="color: #006080"&gt;"There was a problem receiving the list of Dell systems."&lt;/span&gt; }&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;#progressbar variables&lt;/span&gt;&lt;br&gt;$length = $dellSystems.count / 100&lt;br&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt; ($length &lt;span style="color: #cc6633"&gt;-eq&lt;/span&gt; 0) { $length=1/100 }&lt;br&gt;$count=1&lt;br&gt;&lt;br&gt;&lt;span style="color: #008000"&gt;#if array is of length 0 the foreach clause still runs with a null value. If check to fix.&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;($dellSystems.count &lt;span style="color: #cc6633"&gt;-gt&lt;/span&gt; 0 -OR $dellSystems.IsNull(&lt;span style="color: #006080"&gt;"ServiceTag"&lt;/span&gt;) &lt;span style="color: #cc6633"&gt;-eq&lt;/span&gt; $false -OR $dellSystems &lt;span style="color: #cc6633"&gt;-ne&lt;/span&gt; $null)&lt;br&gt;{&lt;br&gt;    Write-Host &lt;span style="color: #006080"&gt;"Gathering warranty information..."&lt;/span&gt;&lt;br&gt;    &lt;span style="color: #0000ff"&gt;foreach&lt;/span&gt; ($dellSystem &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; $dellSystems)&lt;br&gt;    {&lt;br&gt;        &lt;span style="color: #008000"&gt;#draws the progressbar based on the current count / (length/100)&lt;/span&gt;&lt;br&gt;        Write-Progress &lt;span style="color: #006080"&gt;"Processing..."&lt;/span&gt; &lt;span style="color: #006080"&gt;"$($dellSystem.ComputerName)"&lt;/span&gt; -perc ([Int]$count++/$length) &lt;br&gt;        $WarrantyInfo = Get-DellWarranty $dellSystem.ServiceTag -ServiceTagInput&lt;br&gt;        &lt;span style="color: #008000"&gt;#insert info into database&lt;/span&gt;&lt;br&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; ($WarrantyInfo) {&lt;br&gt;        Write-Verbose &lt;span style="color: #006080"&gt;"Issuing update on $($dellSystem.ComputerName)..."&lt;/span&gt;&lt;br&gt;        Invoke-SqlQuery -ServerInstance $SQLServer -Database $ConfigMgrDatabase -Query &lt;span style="color: #006080"&gt;"&lt;br&gt;&lt;br&gt;        IF&lt;br&gt;            Not Exists (select ResourceID from DellWarrantyInfo &lt;br&gt;            where ResourceID = '$($dellSystem.ResourceID)')&lt;br&gt;        BEGIN&lt;br&gt;            INSERT INTO $tableName VALUES (&lt;br&gt;            '$($dellSystem.ResourceID)',&lt;br&gt;            '$($dellSystem.ComputerName)', &lt;br&gt;            '$(Get-Date)',&lt;br&gt;            '$($WarrantyInfo.DaysLeft)',&lt;br&gt;            '$($WarrantyInfo.Region)',&lt;br&gt;            '$($WarrantyInfo.Description)',&lt;br&gt;            '$($WarrantyInfo.EndDate)',&lt;br&gt;            '$($WarrantyInfo.Provider)',&lt;br&gt;            '$($WarrantyInfo.ServiceTag)',&lt;br&gt;            '$($WarrantyInfo.ShipDate)',&lt;br&gt;            '$($WarrantyInfo.StartDate)',&lt;br&gt;            '$($WarrantyInfo.SystemType)',&lt;br&gt;            '$(if($WarrantyInfo.WarrantyExtended){1}else{0})' )&lt;br&gt;&lt;br&gt;        END&lt;br&gt;        ELSE&lt;br&gt;            UPDATE $tableName&lt;br&gt;            SET [ComputerName] = '$($dellSystem.ComputerName)', &lt;br&gt;                [DateScriptRan] = '$(Get-Date)',&lt;br&gt;                [DaysLeft] = '$($WarrantyInfo.DaysLeft)',&lt;br&gt;                [DellIBU] = '$($WarrantyInfo.Region)',&lt;br&gt;                [Description] = '$($WarrantyInfo.Description)',&lt;br&gt;                [EndDate] = '$($WarrantyInfo.EndDate)',&lt;br&gt;                [Provider] = '$($WarrantyInfo.Provider)',&lt;br&gt;                [ServiceTag] = '$($WarrantyInfo.ServiceTag)',&lt;br&gt;                [ShipDate] = '$($WarrantyInfo.ShipDate)',&lt;br&gt;                [StartDate] = '$($WarrantyInfo.StartDate)',&lt;br&gt;                [SystemType] = '$($WarrantyInfo.SystemType)',&lt;br&gt;                [WarrantyExtended] = '$(if($WarrantyInfo.WarrantyExtended){1}else{0})'&lt;br&gt;            WHERE [ResourceID] = '$($dellSystem.ResourceID)'"&lt;/span&gt;&lt;br&gt;        &lt;span style="color: #0000ff"&gt;if&lt;/span&gt;(!$?) { Write-Error &lt;span style="color: #006080"&gt;"There was a problem adding $($dellSystem.ComputerName) to the database"&lt;/span&gt; }&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;Write-Host &lt;span style="color: #006080"&gt;"Script Complete."&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;the reports&lt;/h2&gt;
&lt;p&gt;thank you anonymous for pointing out that i completely forgot to include how to access the data. the script will create a database table inside of your sccm database. the reports included in the original script (noted under the background section) function exactly as indicated in scott's original post. just import them and use it.&lt;/p&gt;
&lt;p&gt;have fun!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-3903714108859650103?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lQEDfC1S-Il88C6YiBqn2H3qzpk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lQEDfC1S-Il88C6YiBqn2H3qzpk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lQEDfC1S-Il88C6YiBqn2H3qzpk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lQEDfC1S-Il88C6YiBqn2H3qzpk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=XNoY33i38oY:gTNd9juFIcc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=XNoY33i38oY:gTNd9juFIcc:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=XNoY33i38oY:gTNd9juFIcc:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=XNoY33i38oY:gTNd9juFIcc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=XNoY33i38oY:gTNd9juFIcc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=XNoY33i38oY:gTNd9juFIcc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=XNoY33i38oY:gTNd9juFIcc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=XNoY33i38oY:gTNd9juFIcc:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=XNoY33i38oY:gTNd9juFIcc:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/XNoY33i38oY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/3903714108859650103/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/08/sccm-integrating-dell-warranty-data.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3903714108859650103?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3903714108859650103?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/XNoY33i38oY/sccm-integrating-dell-warranty-data.html" title="sccm: integrating dell warranty data into configmgr" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/08/sccm-integrating-dell-warranty-data.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MDQ3g5fip7ImA9WhdSFkQ.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-2943572770839520256</id><published>2011-07-26T10:51:00.001-05:00</published><updated>2011-07-26T10:51:12.626-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-26T10:51:12.626-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="os" /><category scheme="http://www.blogger.com/atom/ns#" term="ds" /><title>ds: logon request fails when groups &gt; 1024</title><content type="html">&lt;p&gt;it's probably not logical for you to do this to yourself and thus there is not much to worry about. however, through a series of nesting groups, you can very well do this without thinking much about it. anyway, by the nature of the fact that I am posting this ... means I ran into it. :(&lt;/p&gt; &lt;p&gt;for clarity, the group limitation is actually 1015 when you factor in well-known SIDs.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;&lt;font style="font-weight: bold"&gt;the error message&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;this is what you will see when attempting to log in:&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;The system cannot log you on due to the following error: During a logon attempt, the user’s security context accumulated too many security IDs&lt;span style="color: #ff0000"&gt;.&lt;/span&gt; Please try again or consult your system administrator&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;font style="font-weight: bold"&gt;detecting the problem&lt;/font&gt;&lt;/h2&gt;
&lt;p&gt;if you want to see how many groups you (or some other user account) is a member of, use the following kinds of commands (may produce different results*):&lt;/p&gt;
&lt;p&gt;&lt;em&gt;powershell&lt;/em&gt;&lt;br&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Get-QADUser myuserid | Select-Object -ExpandProperty allmemberof | measure&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;em&gt;cmd shell&lt;/em&gt;&lt;br&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;dsquery user -samid myuserid | dsget user -memberof -expand | find /c /v &lt;span style="color: #006080"&gt;""&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;* &lt;em&gt;when I ran them side by side, I had different counts. using dsquery, it lists all security groups. using get-qaduser, it seems to list only the groups by which you don't already have membership. basically, if someone created a group and added domain users as a nested group, get-qaduser doesn't show it.&lt;/em&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;font style="font-weight: bold"&gt;more information&lt;/font&gt;&lt;/h2&gt;
&lt;p&gt;here are two great articles for this information:&lt;/p&gt;
&lt;p&gt;&lt;a title="http://support.microsoft.com/kb/906208" href="http://support.microsoft.com/kb/906208"&gt;http://support.microsoft.com/kb/906208&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a title="http://support.microsoft.com/kb/328889" href="http://support.microsoft.com/kb/328889"&gt;http://support.microsoft.com/kb/328889&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-2943572770839520256?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/X2sIgXMsPGx_J-Qk0AKJ2T4-jic/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X2sIgXMsPGx_J-Qk0AKJ2T4-jic/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/X2sIgXMsPGx_J-Qk0AKJ2T4-jic/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X2sIgXMsPGx_J-Qk0AKJ2T4-jic/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=kIJryT3XP9g:VLd0jcSlMqk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=kIJryT3XP9g:VLd0jcSlMqk:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=kIJryT3XP9g:VLd0jcSlMqk:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=kIJryT3XP9g:VLd0jcSlMqk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=kIJryT3XP9g:VLd0jcSlMqk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=kIJryT3XP9g:VLd0jcSlMqk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=kIJryT3XP9g:VLd0jcSlMqk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=kIJryT3XP9g:VLd0jcSlMqk:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=kIJryT3XP9g:VLd0jcSlMqk:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/kIJryT3XP9g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/2943572770839520256/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/07/ds-logon-request-fails-when-groups-1024.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/2943572770839520256?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/2943572770839520256?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/kIJryT3XP9g/ds-logon-request-fails-when-groups-1024.html" title="ds: logon request fails when groups &amp;gt; 1024" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/07/ds-logon-request-fails-when-groups-1024.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0UCQHY5eyp7ImA9WhZaGUo.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-3483636574223957781</id><published>2011-07-06T14:01:00.001-05:00</published><updated>2011-07-06T14:07:41.823-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-06T14:07:41.823-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><category scheme="http://www.blogger.com/atom/ns#" term="script" /><title>getting the first and last day of the month in sql</title><content type="html">&lt;p&gt;&lt;img style="display: inline; float: right" title="astronomical clock courtesy of simpologist" alt="astronomical clock courtesy of simpologist" align="right" src="http://farm1.static.flickr.com/10/16734948_73cbe09dfe_m_d.jpg" width="173" height="173"&gt;i was putting this together for a friend of mine so i thought i would post it since it seems like a pretty useful thing to have. should be self-explanatory.&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;p&gt;&lt;span style="color: #008000"&gt;-- first and last for previous month&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt; @FirstDayPrev DATETIME&lt;br&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt; @LastDayPrev DATETIME&lt;/p&gt;&lt;p&gt;&lt;span style="color: #008000"&gt;-- first and last for current month&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt; @FirstDayCurr DATETIME&lt;br&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt; @LastDayCurr DATETIME&lt;/p&gt;&lt;p&gt;&lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; @FirstDayPrev = &lt;span style="color: #0000ff"&gt;CONVERT&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;(25),DATEADD(mm, DATEDIFF(mm,0,getdate())-1, 0),101)&lt;br&gt;&lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; @LastDayPrev = &lt;span style="color: #0000ff"&gt;CONVERT&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;(25),DATEADD(mm, DATEDIFF(mm, 0,getdate())+0, -1),101)&lt;/p&gt;&lt;p&gt;&lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; @FirstDayCurr = &lt;span style="color: #0000ff"&gt;CONVERT&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;(25),DATEADD(mm, DATEDIFF(mm, 0,getdate())+0, 0),101)&lt;br&gt;&lt;span style="color: #0000ff"&gt;Set&lt;/span&gt; @LastDayCurr = &lt;span style="color: #0000ff"&gt;CONVERT&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;(25),DATEADD(mm, DATEDIFF(mm, 0,getdate())+1, -1),101)&lt;/p&gt;&lt;p&gt;&lt;span style="color: #0000ff"&gt;Select&lt;/span&gt; @FirstDayPrev, @LastDayPrev, @FirstDayCurr, @LastDayCurr&lt;/p&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-3483636574223957781?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uNEauNhnnYEYT0FdEmNHmkT5MtQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uNEauNhnnYEYT0FdEmNHmkT5MtQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uNEauNhnnYEYT0FdEmNHmkT5MtQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uNEauNhnnYEYT0FdEmNHmkT5MtQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=I8HGaPq5rXI:m1KUUxmHiJk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=I8HGaPq5rXI:m1KUUxmHiJk:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=I8HGaPq5rXI:m1KUUxmHiJk:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=I8HGaPq5rXI:m1KUUxmHiJk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=I8HGaPq5rXI:m1KUUxmHiJk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=I8HGaPq5rXI:m1KUUxmHiJk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=I8HGaPq5rXI:m1KUUxmHiJk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=I8HGaPq5rXI:m1KUUxmHiJk:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=I8HGaPq5rXI:m1KUUxmHiJk:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/I8HGaPq5rXI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/3483636574223957781/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/07/getting-first-and-last-day-of-month-in.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3483636574223957781?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3483636574223957781?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/I8HGaPq5rXI/getting-first-and-last-day-of-month-in.html" title="getting the first and last day of the month in sql" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/07/getting-first-and-last-day-of-month-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YCQ38_fyp7ImA9WhZUF0w.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-6238597150996463718</id><published>2011-06-10T08:06:00.001-05:00</published><updated>2011-06-10T08:06:02.147-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-10T08:06:02.147-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>viewing internet headers of emails in outlook 2010</title><content type="html">&lt;p&gt;this is so annoyingly obscure that I figured I'd point it out.&lt;/p&gt; &lt;p&gt;in outlook, open the message you're interested in. in the ribbon, locate the "tags" section and click the little arrow.&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-dWqDvzBK-8s/TfIWtzAxPWI/AAAAAAAAAYo/KwY6YRuCj74/image%25255B5%25255D.png?imgmax=800" width="716" height="89"&gt;&lt;/p&gt; &lt;p&gt;and there you have it...&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="SNAGHTML24013205" border="0" alt="SNAGHTML24013205" src="http://lh3.ggpht.com/-DhugwJ095qg/TfIWuVCnP7I/AAAAAAAAAYs/rM_7AoF1G0A/SNAGHTML24013205%25255B3%25255D.png?imgmax=800" width="532" height="475"&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-6238597150996463718?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rjWkssWIDuwQaVxJpbkZ3yHjsy8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rjWkssWIDuwQaVxJpbkZ3yHjsy8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rjWkssWIDuwQaVxJpbkZ3yHjsy8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rjWkssWIDuwQaVxJpbkZ3yHjsy8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=nOTXJ6MY2ps:JY1pvvoGuHg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=nOTXJ6MY2ps:JY1pvvoGuHg:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=nOTXJ6MY2ps:JY1pvvoGuHg:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=nOTXJ6MY2ps:JY1pvvoGuHg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=nOTXJ6MY2ps:JY1pvvoGuHg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=nOTXJ6MY2ps:JY1pvvoGuHg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=nOTXJ6MY2ps:JY1pvvoGuHg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=nOTXJ6MY2ps:JY1pvvoGuHg:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=nOTXJ6MY2ps:JY1pvvoGuHg:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/nOTXJ6MY2ps" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/6238597150996463718/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/06/viewing-internet-headers-of-emails-in.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6238597150996463718?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6238597150996463718?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/nOTXJ6MY2ps/viewing-internet-headers-of-emails-in.html" title="viewing internet headers of emails in outlook 2010" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-dWqDvzBK-8s/TfIWtzAxPWI/AAAAAAAAAYo/KwY6YRuCj74/s72-c/image%25255B5%25255D.png?imgmax=800" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/06/viewing-internet-headers-of-emails-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkACQH45eyp7ImA9WhZUE0U.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-4926118467835114716</id><published>2011-06-06T14:32:00.001-05:00</published><updated>2011-06-06T14:32:41.023-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-06T14:32:41.023-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="opalis" /><title>opalis: operator console installation files</title><content type="html">&lt;p&gt;with products like &lt;a href="http://www.kelverion.com/utility-for-opconsole-download/"&gt;kelverion&lt;/a&gt;, you can make short work of installing the operator console. if you have gone through this, you know what an enormous amount of time this process takes.&lt;/p&gt; &lt;p&gt;if, however, you need all of the download files, I captured them and made them &lt;a href="http://cid-a2c18f0fef4d1d36.skydrive.live.com/redir.aspx?resid=A2C18F0FEF4D1D36!139"&gt;available here on my skydrive&lt;/a&gt;. the files are located under the &lt;strong&gt;OpalisOpConsole &lt;/strong&gt;folder, split into 6 zip files. for this reason, make sure you are using an &lt;a href="http://7-zip.org/"&gt;unzipping utility&lt;/a&gt; capable of piecing the content back together. beware! it's quite large and may take some time to download in its entirety.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-4926118467835114716?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/j2iQlsZIhsmpcLsKgfttd-sXQ6M/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/j2iQlsZIhsmpcLsKgfttd-sXQ6M/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/j2iQlsZIhsmpcLsKgfttd-sXQ6M/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/j2iQlsZIhsmpcLsKgfttd-sXQ6M/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=oeTKw_Pp8d0:HtB9_SQOL8Y:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=oeTKw_Pp8d0:HtB9_SQOL8Y:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=oeTKw_Pp8d0:HtB9_SQOL8Y:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=oeTKw_Pp8d0:HtB9_SQOL8Y:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=oeTKw_Pp8d0:HtB9_SQOL8Y:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=oeTKw_Pp8d0:HtB9_SQOL8Y:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=oeTKw_Pp8d0:HtB9_SQOL8Y:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=oeTKw_Pp8d0:HtB9_SQOL8Y:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=oeTKw_Pp8d0:HtB9_SQOL8Y:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/oeTKw_Pp8d0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/4926118467835114716/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/06/opalis-operator-console-installation.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4926118467835114716?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4926118467835114716?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/oeTKw_Pp8d0/opalis-operator-console-installation.html" title="opalis: operator console installation files" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/06/opalis-operator-console-installation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUAMQXc5fSp7ImA9WhZUEE8.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-2848329284924986199</id><published>2011-06-02T09:09:00.001-05:00</published><updated>2011-06-02T09:09:40.925-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-02T09:09:40.925-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><category scheme="http://www.blogger.com/atom/ns#" term="os" /><title>open a command prompt to the directory in explorer</title><content type="html">&lt;p&gt;this is a cool trick I picked up from my coworker who picked up from a presentation. basically, you can open a command prompt to the exact folder where your explorer is pointing to. here's how.&lt;/p&gt; &lt;p&gt;navigate to the folder you're interested in.&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="SNAGHTML7263e2" border="0" alt="SNAGHTML7263e2" src="http://lh4.ggpht.com/-oeNFSK2wFuI/TeeZoesf7SI/AAAAAAAAAYY/ria4TPcS7RU/SNAGHTML7263e2%25255B7%25255D.png?imgmax=800" width="456" height="312"&gt;&lt;/p&gt; &lt;p&gt;in the address bar of explorer, type "cmd" and hit enter.&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="SNAGHTML7d4c3e" border="0" alt="SNAGHTML7d4c3e" src="http://lh6.ggpht.com/--zUMJ1UR9cQ/TeeZoqPsf8I/AAAAAAAAAYc/4YHZBl_Iuh4/SNAGHTML7d4c3e%25255B3%25255D.png?imgmax=800" width="609" height="108"&gt;&lt;/p&gt; &lt;p&gt;this will launch a command prompt directly to the folder. perfect!&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="SNAGHTML75cb4c" border="0" alt="SNAGHTML75cb4c" src="http://lh3.ggpht.com/-S5XWU2AbaXg/TeeZo074FeI/AAAAAAAAAYg/B7nfFDLJDuE/SNAGHTML75cb4c%25255B3%25255D.png?imgmax=800" width="575" height="118"&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-2848329284924986199?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WgHNdB38a8eiX6v7L7SLo3B2PD4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WgHNdB38a8eiX6v7L7SLo3B2PD4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WgHNdB38a8eiX6v7L7SLo3B2PD4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WgHNdB38a8eiX6v7L7SLo3B2PD4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=qZV6DvSsQKY:K2W7ma9OURI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=qZV6DvSsQKY:K2W7ma9OURI:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=qZV6DvSsQKY:K2W7ma9OURI:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=qZV6DvSsQKY:K2W7ma9OURI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=qZV6DvSsQKY:K2W7ma9OURI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=qZV6DvSsQKY:K2W7ma9OURI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=qZV6DvSsQKY:K2W7ma9OURI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=qZV6DvSsQKY:K2W7ma9OURI:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=qZV6DvSsQKY:K2W7ma9OURI:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/qZV6DvSsQKY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/2848329284924986199/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/06/open-command-prompt-to-directory-in.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/2848329284924986199?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/2848329284924986199?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/qZV6DvSsQKY/open-command-prompt-to-directory-in.html" title="open a command prompt to the directory in explorer" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-oeNFSK2wFuI/TeeZoesf7SI/AAAAAAAAAYY/ria4TPcS7RU/s72-c/SNAGHTML7263e2%25255B7%25255D.png?imgmax=800" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/06/open-command-prompt-to-directory-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcFSXs9cSp7ImA9WhZRGEo.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-8009315403476695286</id><published>2011-04-15T09:00:00.001-05:00</published><updated>2011-04-15T09:00:18.569-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-15T09:00:18.569-05:00</app:edited><title>atlanta smug (atlsmug) coming up 4/22/11</title><content type="html">&lt;p&gt;hi all.&lt;/p&gt; &lt;p&gt;in case you're not on the mailing list, I just wanted to let you know that we have another user group meeting coming up april 22, 2011. yes, that's good friday. no, we didn't realize it. :)&lt;/p&gt; &lt;p&gt;at any rate, if you can make it out, we'd be happy as punch to have you. if not, you can always join virtually. if you're so inspired, you can come out for part of it and join virtually for the other part. anyway, all the details and registration links are at &lt;a title="http://www.atlsmug.org/1/post/2011/04/atlanta-systems-management-user-group-4222011.html" href="http://www.atlsmug.org/1/post/2011/04/atlanta-systems-management-user-group-4222011.html"&gt;http://www.atlsmug.org/1/post/2011/04/atlanta-systems-management-user-group-4222011.html&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;here's a real quick agenda:&lt;/p&gt; &lt;table style="text-align: left; width: 100%" border="1" cellspacing="1" cellpadding="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="text-align: left; background-color: rgb(102,102,102); width: 175px; color: white; vertical-align: top; font-weight: bold"&gt;Presenters&lt;br&gt;&lt;/td&gt; &lt;td style="background-color: rgb(102,102,102); width: 366px; color: white; vertical-align: top; font-weight: bold"&gt;Agenda&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; background-color: rgb(102,102,102); width: 90px; color: white; vertical-align: top; font-weight: bold"&gt;Time Start&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; background-color: rgb(102,102,102); width: 90px; color: white; vertical-align: top; font-weight: bold"&gt;Time End&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;Breakfast&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;9:30&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;9:50&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;ATLSMUG&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;Opening&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;9:50&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;10:00&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;Dan Newton&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;v.Next Year – What You Need to Know About the Upcoming 2012 System Center Releases&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;10:05&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;11:00&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;Greg Cameron&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;Delivering and Managing the Private Cloud with System Center 2012&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;11:05&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;12:00&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; background-color: rgb(102,102,102); font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;&lt;br&gt;&lt;/td&gt; &lt;td style="background-color: rgb(102,102,102); width: 366px; color: white; vertical-align: top"&gt;Lunch Break&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; background-color: rgb(102,102,102); width: 90px; color: white; vertical-align: top"&gt;12:05&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; background-color: rgb(102,102,102); width: 90px; color: white; vertical-align: top"&gt;12:25&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;John Rush (Shavlik)&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;3rd-Party Software Patching Using SCCM and Shavlik SCUPdates&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;12:30&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;1:30&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;Duncan McAlynn&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;DCM vs ACS: An Audit Compliance Comparison&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;1:35&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;2:25&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; background-color: silver; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;&lt;br&gt;&lt;/td&gt; &lt;td style="background-color: silver; width: 366px; color: white; vertical-align: top"&gt;Break&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; background-color: silver; width: 90px; color: white; vertical-align: top"&gt;2:30&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; background-color: silver; width: 90px; color: white; vertical-align: top"&gt;2:40&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;Baelson Duque / Barry Shilmover&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;Operations Manager 2012 Overview&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;2:45&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;4:05&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="text-align: left; font-style: italic; width: 175px; color: rgb(51,102,255); vertical-align: top"&gt;ATLSMUG&lt;br&gt;&lt;/td&gt; &lt;td style="width: 366px; vertical-align: top"&gt;Closing&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;4:05&lt;br&gt;&lt;/td&gt; &lt;td style="text-align: right; width: 90px; vertical-align: top"&gt;4:15&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-8009315403476695286?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/erB_LHtwqcFWs4CrLz26fA6wy8U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/erB_LHtwqcFWs4CrLz26fA6wy8U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/erB_LHtwqcFWs4CrLz26fA6wy8U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/erB_LHtwqcFWs4CrLz26fA6wy8U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=q1o2Ygbymw4:BouHAdbcdiU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=q1o2Ygbymw4:BouHAdbcdiU:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=q1o2Ygbymw4:BouHAdbcdiU:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=q1o2Ygbymw4:BouHAdbcdiU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=q1o2Ygbymw4:BouHAdbcdiU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=q1o2Ygbymw4:BouHAdbcdiU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=q1o2Ygbymw4:BouHAdbcdiU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=q1o2Ygbymw4:BouHAdbcdiU:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=q1o2Ygbymw4:BouHAdbcdiU:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/q1o2Ygbymw4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/8009315403476695286/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/04/atlanta-smug-atlsmug-coming-up-42211.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/8009315403476695286?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/8009315403476695286?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/q1o2Ygbymw4/atlanta-smug-atlsmug-coming-up-42211.html" title="atlanta smug (atlsmug) coming up 4/22/11" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/04/atlanta-smug-atlsmug-coming-up-42211.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEARno6fyp7ImA9WhZRGEo.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-3791342185162317380</id><published>2011-04-15T08:37:00.001-05:00</published><updated>2011-04-15T08:37:27.417-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-15T08:37:27.417-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><category scheme="http://www.blogger.com/atom/ns#" term="configmgr" /><category scheme="http://www.blogger.com/atom/ns#" term="dp" /><title>sccm: client stuck downloading package with bit .tmp files in cache directory</title><content type="html">&lt;p&gt;honestly, it's very early (by my standards). my creativity is not quite awake yet hence the very bad subject name of this post. I can't really find a good error message that would capture the essence of this problem. so... I guess you'll just have to read my rambling instead.&lt;/p&gt; &lt;p&gt;let's get started. when this problem spurs up it looks as if the client is attempting to download the package but never gets anywhere with it. what's the first thing any sccm admin does? read logs, yes. one of the best ways I've found of reading logs is to start by running a search against the logs directory and dumping out anything matching the package id, advertisement id, etc to a new txt file. this is what I found.&lt;/p&gt; &lt;p&gt;in the cas.log, the client is clearly getting the policy and location of the package.&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Matching DP Location &lt;span style="color: #0000ff"&gt;found&lt;/span&gt; 0 - \\mySMSServer\SMSPKGC$\XYZ00017\&lt;br&gt;Requesting content XYZ00017.1, &lt;span style="color: #0000ff"&gt;size&lt;/span&gt;(KB) 60833, &lt;span style="color: #0000ff"&gt;under&lt;/span&gt; context S-0-0-00-1111111111-1111111111-111111111-111111 &lt;span style="color: #0000ff"&gt;with&lt;/span&gt; priority Low&lt;br&gt;Target location &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; content XYZ00017.1 &lt;span style="color: #0000ff"&gt;is&lt;/span&gt; &lt;font style="background-color: #ffff00"&gt;C:\WINDOWS\system32\CCM\Cache\XYZ00017.1.S-0-0-00-1111111111-1111111111-111111111-111111&lt;/font&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;datatransferservice.log is pretty busy too setting up directories.&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Created directory &lt;span style="color: #006080"&gt;'C:\WINDOWS\system32\CCM\Cache\XYZ00017.1.S-0-0-00-1111111111-1111111111-111111111-111111\Lang/zh-TW'&lt;/span&gt;.&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;I think that gives us enough to go on. there's stuff in execmgr.log and policyevaluator.log, but we're all familiar with those by now. instead, I started looking at the conditions about this problem. so far I knew that the client was getting the policy and beginning the process to the point that it started creating directories but never going any further. I went to the directory highlighted above and noticed that the entire directory structure was there but no actual content. instead, there were a bunch of BIT*.TMP files.&lt;/p&gt;
&lt;p&gt;I happened across &lt;a href="http://social.technet.microsoft.com/forums/en-US/configmgrswdist/thread/e3c06b14-d0b8-4b4c-9a52-7f920de06f8e/"&gt;this post on technet&lt;/a&gt; which explained quite vividly the problem at hand. I looked at the iis logs to determine if there was a transfer problem to the client. I found this in the logs (again by searching for the package id):&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;2011-04-14 15:16:28 192.168.0.2 HEAD /SMS_DP_SMSPKGC$/XYZ00017/Graphics/Gfxres.he-IL.resources - 80 - 192.168.0.3 Microsoft+BITS/6.7 &lt;font style="background-color: #ffff00"&gt;404 7&lt;/font&gt; 0 60&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;

&lt;p&gt;okay, now we're getting somewhere. what do we with that though? well, the &lt;a href="http://support.microsoft.com/kb/943891"&gt;http codes specific to iis7 are in this kb article&lt;/a&gt;. in this case, I was looking for 404.7. here's how it maps back:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;...&lt;br&gt;404.3 - MIME type restriction.&lt;br&gt;404.4 - &lt;span style="color: #0000ff"&gt;No&lt;/span&gt; handler configured.&lt;br&gt;404.5 - Denied &lt;span style="color: #0000ff"&gt;by&lt;/span&gt; request filtering configuration.&lt;br&gt;404.6 - Verb denied.&lt;br&gt;&lt;font style="background-color: #ffff00"&gt;404.7 - &lt;span style="color: #0000ff"&gt;File&lt;/span&gt; extension denied.&lt;/font&gt;&lt;br&gt;404.8 - Hidden namespace.&lt;br&gt;404.9 - &lt;span style="color: #0000ff"&gt;File&lt;/span&gt; attribute hidden.&lt;br&gt;...&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;so, it's not your usual 404 (not talking about the ATL either).&lt;/p&gt;
&lt;p&gt;as it turns out, the applicationHost.config file contains a section called &amp;lt;requestFiltering&amp;gt; that blocks certain extension types. by modifying this section of the .config file, it will allow the transfer of these file types over http -- exactly what BITS is using to transfer.&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;...&lt;br&gt;&amp;lt;requestFiltering&amp;gt;&lt;br&gt;                &amp;lt;fileExtensions allowUnlisted="&lt;span style="color: #0000ff"&gt;true&lt;/span&gt;" applyToWebDAV="&lt;span style="color: #0000ff"&gt;true&lt;/span&gt;"&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".asax" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ascx" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".master" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".skin" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".browser" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".sitemap" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".config" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".cs" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".csproj" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".vb" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".vbproj" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".webinfo" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".licx" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".resx" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &lt;font style="background-color: #ffff00"&gt;&amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".resources" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;/font&gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".mdb" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".vjsproj" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".java" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".jsl" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ldb" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".dsdgm" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ssdgm" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".lsad" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ssmap" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".cd" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".dsprototype" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".lsaprototype" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".sdm" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".sdmDocument" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".mdf" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ldf" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ad" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".dd" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".ldd" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".sd" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".adprototype" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".lddprototype" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".exclude" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".refresh" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".compiled" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".msgx" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".vsdisco" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;                    &amp;lt;&lt;span style="color: #0000ff"&gt;add&lt;/span&gt; fileExtension=".asa" allowed="&lt;span style="color: #0000ff"&gt;false&lt;/span&gt;" /&amp;gt;&lt;br&gt;...&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;in my case, it was .resources. make the change, initiate iis reset, and away you go.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-3791342185162317380?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/leAXDmE_tkkNiR83JHJ46RFx5fc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/leAXDmE_tkkNiR83JHJ46RFx5fc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/leAXDmE_tkkNiR83JHJ46RFx5fc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/leAXDmE_tkkNiR83JHJ46RFx5fc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=KxBy8r3RPus:4mcohge10E8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=KxBy8r3RPus:4mcohge10E8:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=KxBy8r3RPus:4mcohge10E8:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=KxBy8r3RPus:4mcohge10E8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=KxBy8r3RPus:4mcohge10E8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=KxBy8r3RPus:4mcohge10E8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=KxBy8r3RPus:4mcohge10E8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=KxBy8r3RPus:4mcohge10E8:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=KxBy8r3RPus:4mcohge10E8:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/KxBy8r3RPus" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/3791342185162317380/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/04/sccm-client-stuck-downloading-package.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3791342185162317380?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3791342185162317380?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/KxBy8r3RPus/sccm-client-stuck-downloading-package.html" title="sccm: client stuck downloading package with bit .tmp files in cache directory" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/04/sccm-client-stuck-downloading-package.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0UDRXY-fip7ImA9WhZREUU.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-8926957484983321391</id><published>2011-04-07T09:07:00.001-05:00</published><updated>2011-04-07T09:07:54.856-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-07T09:07:54.856-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><category scheme="http://www.blogger.com/atom/ns#" term="os" /><title>misc: offering remote assistance in windows 7</title><content type="html">&lt;p&gt;if you're looking for how to offer remote assistance in windows 7, here's a command line you can issue to do this:&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;%windir%\system32\msra.exe /offerra&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-8926957484983321391?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nYjpBpDphB7rNkN0NsxygUirFMc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nYjpBpDphB7rNkN0NsxygUirFMc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/nYjpBpDphB7rNkN0NsxygUirFMc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nYjpBpDphB7rNkN0NsxygUirFMc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=Y47xB5jK8U4:89miHL99LmY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=Y47xB5jK8U4:89miHL99LmY:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=Y47xB5jK8U4:89miHL99LmY:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=Y47xB5jK8U4:89miHL99LmY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=Y47xB5jK8U4:89miHL99LmY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=Y47xB5jK8U4:89miHL99LmY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=Y47xB5jK8U4:89miHL99LmY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=Y47xB5jK8U4:89miHL99LmY:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=Y47xB5jK8U4:89miHL99LmY:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/Y47xB5jK8U4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/8926957484983321391/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/04/misc-offering-remote-assistance-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/8926957484983321391?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/8926957484983321391?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/Y47xB5jK8U4/misc-offering-remote-assistance-in.html" title="misc: offering remote assistance in windows 7" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/04/misc-offering-remote-assistance-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEDRXszeip7ImA9WhZRGEU.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-3059625853906301775</id><published>2011-04-06T14:34:00.001-05:00</published><updated>2011-04-15T10:17:54.582-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-15T10:17:54.582-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="softdist" /><category scheme="http://www.blogger.com/atom/ns#" term="sccm" /><category scheme="http://www.blogger.com/atom/ns#" term="osd" /><category scheme="http://www.blogger.com/atom/ns#" term="configmgr" /><category scheme="http://www.blogger.com/atom/ns#" term="dp" /><title>sccm: content hash fails to match</title><content type="html">&lt;p&gt;back in 2008, I wrote up a little thing about how &lt;a href="http://marcusoh.blogspot.com/2008/01/sms-distribution-manager-fails-to-send.html"&gt;distribution manager fails to send a package to a distribution point&lt;/a&gt;. even though a lot of what I wrote that for was the failure of packages to get delivered to child sites, the result was pretty much the same. when the client tries to run the advertisement with an old package, the result was a failure because of content mismatch.&lt;/p&gt; &lt;p&gt;I went through an ordeal recently capturing these exact kinds of failures and corrected quite a number of problems with these packages. the resulting blog post is my effort to capture how these problems were resolved. if nothing else, it's a basic checklist of things you can use.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h3&gt;detection&lt;/h3&gt; &lt;h5&gt;status messages&lt;/h5&gt; &lt;p&gt;take a look at your status messages. this has to be the easiest way to determine where these problems exist. unfortunately, it requires that a client is already experiencing problems. there are client logs you can examine as well such as cas, but I wasn't even sure I was going to have enough material to blog so I didn't bother to capture the exact errors. :/ anyway, here are the specific elements:&lt;/p&gt; &lt;p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;strong&gt;type&lt;/strong&gt;: error&lt;br&gt;&lt;strong&gt;component&lt;/strong&gt;: software distribution&lt;br&gt;&lt;strong&gt;message id&lt;/strong&gt;: 10057&lt;br&gt;&lt;strong&gt;detail&lt;/strong&gt;: The program &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; advertisement &lt;span style="color: #006080"&gt;"&amp;lt;advertisement id&amp;gt;"&lt;/span&gt; has failed because download of the content &lt;span style="color: #006080"&gt;"&amp;lt;package id&amp;gt; - "&lt;/span&gt;&amp;lt;program name&amp;gt;" has failed. The download failed because the content downloaded to the client does not match the content specified &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; the content source. Possible causes: The content on the distribution point has been manually modified, or a &lt;span style="color: #0000ff"&gt;local&lt;/span&gt; administrator on the computer has modified the content &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; the computer's hash. Solution: Refresh the content on the distribution point and retry the download.&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;and one more... 
&lt;div&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;strong&gt;type&lt;/strong&gt;: error&lt;br&gt;&lt;strong&gt;component&lt;/strong&gt;: software distribution content access&lt;br&gt;&lt;strong&gt;message id&lt;/strong&gt;: 10030&lt;br&gt;&lt;strong&gt;detail&lt;/strong&gt;: Download of the content &lt;span style="color: #006080"&gt;"&amp;lt;package id&amp;gt;"&lt;/span&gt; - &lt;span style="color: #006080"&gt;"4"&lt;/span&gt; has failed. The download failed because the content downloaded to the client does not match the content specified &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; the source. Possible causes: The content on the distribution point has been manually modified, or a &lt;span style="color: #0000ff"&gt;local&lt;/span&gt; administrator on the computer has modified the content &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; the computer's hash. Solution: Refresh the content on the distribution point and retry the download.&lt;br&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;h5&gt;hashdir&lt;/h5&gt;
&lt;p&gt;ah, the elusive tool known as hashdir.exe. this tool analyzes a directory and returns the hash value. I used this to analyze the source directory and checked against a child site to determine if the hash result was properly returned. this is the usage info:&lt;/p&gt;
&lt;div&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Usage: HashDir DirectoryName HashVersion [/FileList]&lt;br&gt;Example: HashDir d:\smspkgd$\FS100003 2&lt;br&gt;HashVersion: RTM = 1 and SP1 = 2&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;I assume anyone reading this post is on configmgr 2007 sp1 or greater, in which case, you want to use the value of 2 as shown in the example. by checking the source directory against a smspkg directory, you can get a very good sense of whether or not your files are out of sync. &lt;strong&gt;if you need hashdir, click &lt;a href="http://cid-a2c18f0fef4d1d36.office.live.com/self.aspx/Blog%20Files/HashDir.exe"&gt;HERE&lt;/a&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;h5&gt;sql query&lt;/h5&gt;
&lt;p&gt;if you refer to the post I mentioned at the beginning of this one, you'll find a sql query that will (hopefully) enumerate where problems may exist. I referenced the dx21 method, but in truth, as it turns out after much later discovery, I should have credited the genius &lt;a href="http://blogs.msdn.com/b/steverac/"&gt;steve rachui&lt;/a&gt;.&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;SELECT&lt;/span&gt; * &lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt; PkgStatus &lt;span style="color: #0000ff"&gt;WHERE&lt;/span&gt; Type=1 &lt;span style="color: #0000ff"&gt;AND&lt;/span&gt; Status=1 &lt;span style="color: #0000ff"&gt;AND&lt;/span&gt; ID=&lt;span style="color: #006080"&gt;'XYZ00234'&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;correction&lt;/h3&gt;
&lt;h5&gt;hidden files&lt;/h5&gt;
&lt;p&gt;I wasn't aware that this could occur but there are enough posts that seem to indicate that hidden files will cause the hash to potentially mismatch. make sure you examine your source files to ensure they are not set with a hidden flag.&lt;/p&gt;
&lt;h5&gt;binary delta replication&lt;/h5&gt;
&lt;p&gt;sometimes this setting doesn't seem to play well with certain files. one quick remediation would be to turn this off and then update the package.&lt;/p&gt;
&lt;h5&gt;remove the pck file&lt;/h5&gt;
&lt;p&gt;at the child site, if you manually delete the pck file, the child site will have no choice but to bring down the pck file at the parent site. it's okay if you have ONE child site but loses its fun factor when you multiply it by a number of systems. &lt;strong&gt;&lt;font color="#ff0000"&gt;for this reason, I do not recommend this&lt;/font&gt;&lt;/strong&gt;... but alas it works.&lt;/p&gt;
&lt;h5&gt;modify pkgstatus and sourceversion in pkgstatus table&lt;/h5&gt;
&lt;p&gt;I mentioned that earlier post a couple of times. there's a sql query in there that will update the required fields for a package server. don't bother trying to set the value against a lot of different servers at once because it will fail. :) I don't know how I know this. I just do. trust me. so what do you do? well, I wrote this sql query that I kind of borrowed the guts out of from a post about opalis. it's a while loop that will go through a list of servers. it's kind of cool.&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;declare&lt;/span&gt; @str_objname sysname,&lt;br&gt;        @str_execsql nvarchar(256),&lt;br&gt;        @str_packageid nvarchar(10)&lt;br&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @str_packageid = &lt;span style="color: #006080"&gt;'&amp;lt;package id here&amp;gt;'&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;declare&lt;/span&gt; cur_SCCMDPs &lt;span style="color: #0000ff"&gt;cursor&lt;/span&gt; &lt;span style="color: #0000ff"&gt;for&lt;/span&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;SELECT&lt;/span&gt; PkgServer &lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt; PkgStatus &lt;span style="color: #0000ff"&gt;WHERE&lt;/span&gt; ID=&lt;span style="color: #006080"&gt;''&lt;/span&gt;+@str_packageid+&lt;span style="color: #006080"&gt;''&lt;/span&gt; &lt;span style="color: #0000ff"&gt;AND&lt;/span&gt; TYPE=1&lt;br&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;open&lt;/span&gt; cur_sccmdps&lt;br&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;fetch&lt;/span&gt; cur_sccmdps &lt;span style="color: #0000ff"&gt;into&lt;/span&gt; @str_objname&lt;br&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;while&lt;/span&gt; &lt;span style="color: #cc6633"&gt;@@FETCH_STATUS&lt;/span&gt; = 0&lt;br&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br&gt;    &lt;span style="color: #0000ff"&gt;set&lt;/span&gt; @str_execsql = &lt;span style="color: #006080"&gt;'WAITFOR DELAY '&lt;/span&gt;&lt;span style="color: #006080"&gt;'00:00:02'&lt;/span&gt;&lt;span style="color: #006080"&gt;' update PkgStatus set Status=2, SourceVersion=0 where ID= '&lt;/span&gt;&lt;span style="color: #006080"&gt;''&lt;/span&gt;+@str_packageid+&lt;span style="color: #006080"&gt;''&lt;/span&gt;&lt;span style="color: #006080"&gt;' and Type=1 and PkgServer = '&lt;/span&gt;&lt;span style="color: #006080"&gt;''&lt;/span&gt;+@str_objname+&lt;span style="color: #006080"&gt;''&lt;/span&gt;&lt;span style="color: #006080"&gt;''&lt;/span&gt;&lt;br&gt;    &lt;span style="color: #0000ff"&gt;print&lt;/span&gt; @str_execsql&lt;br&gt;    &lt;span style="color: #0000ff"&gt;exec&lt;/span&gt; sp_executesql @&lt;span style="color: #0000ff"&gt;statement&lt;/span&gt; = @str_execsql&lt;br&gt;    &lt;span style="color: #0000ff"&gt;fetch&lt;/span&gt; cur_sccmdps &lt;span style="color: #0000ff"&gt;into&lt;/span&gt; @str_objname&lt;br&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color: #0000ff"&gt;deallocate&lt;/span&gt; cur_sccmdps&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;there's a wait delay on it so that while it's updating the records for each row, it'll have a chance to process it. I don't know if it's required but seemed like a good idea.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;notes&lt;/h3&gt;
&lt;p&gt;it's critical to understand when to &lt;strong&gt;update&lt;/strong&gt; versus &lt;strong&gt;refresh&lt;/strong&gt; a package. if you &lt;em&gt;make source file changes&lt;/em&gt;, you should be &lt;em&gt;updating the package&lt;/em&gt; as refreshing will only refresh the contents to distribution points from the existing compressed files (.pck). refreshing is really only useful when you need to "repair" a distribution point. you'll notice that only updating will increment the package source version. more details are in this &lt;a href="http://technet.microsoft.com/en-us/library/bb892806.aspx"&gt;technet article&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;another import thing to understand is what happens when you &lt;em&gt;change a package from using compressed copy to source folder&lt;/em&gt; or vice versa. while the distribution points at the parent site will update, the child sites will not. this will most certainly cause a hash mismatch problem. any change like this requires that you update the distribution points. it's detailed in this &lt;a href="http://technet.microsoft.com/en-us/library/cc180810.aspx"&gt;technet article&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;finally, if you are interested in what sccm is telling the world is the hash of the source, you can run this sql query to return the results of a package:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;select&lt;/span&gt; PkgID, Name, Hash, NewHash &lt;span style="color: #0000ff"&gt;from&lt;/span&gt; SMSPackages &lt;span style="color: #0000ff"&gt;where&lt;/span&gt; PkgID = &lt;span style="color: #006080"&gt;'&amp;lt;packageid&amp;gt;'&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;don't forget to TEST, TEST, TEST. what works for me may not work for you.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-3059625853906301775?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_-LecQq4z1x49UR13pjkEEylOw8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_-LecQq4z1x49UR13pjkEEylOw8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_-LecQq4z1x49UR13pjkEEylOw8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_-LecQq4z1x49UR13pjkEEylOw8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=CsPImIp0gfE:ehfkFOskCQc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=CsPImIp0gfE:ehfkFOskCQc:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=CsPImIp0gfE:ehfkFOskCQc:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=CsPImIp0gfE:ehfkFOskCQc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=CsPImIp0gfE:ehfkFOskCQc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=CsPImIp0gfE:ehfkFOskCQc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=CsPImIp0gfE:ehfkFOskCQc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=CsPImIp0gfE:ehfkFOskCQc:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=CsPImIp0gfE:ehfkFOskCQc:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/CsPImIp0gfE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/3059625853906301775/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/04/sccm-content-hash-fails-to-match.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3059625853906301775?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/3059625853906301775?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/CsPImIp0gfE/sccm-content-hash-fails-to-match.html" title="sccm: content hash fails to match" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/04/sccm-content-hash-fails-to-match.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D08CRH8zfSp7ImA9Wx9UEko.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-7037841249520285608</id><published>2011-02-09T13:24:00.001-05:00</published><updated>2011-02-09T13:24:25.185-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-09T13:24:25.185-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>how to use dropbox to synchronize windows 7 sticky notes</title><content type="html">&lt;p&gt;you may remember awhile back, I wrote up some s&lt;a href="http://marcusoh.blogspot.com/2010/01/how-to-synchronize-sticky-notes-in_26.html"&gt;teps on how to use windows live mesh to achieve sticky notes synchronization&lt;/a&gt;. live mesh, sync, and now mesh again, was a great product to use for this purpose because you could point to the folder and tell it to sync it. unfortunately, I didn't find it very reliable and by the comments I read, neither did a lot of my readers.&lt;/p&gt; &lt;p&gt;&lt;img style="margin: ; display: inline; float: left" align="left" src="http://img.digsby.com/tmpl/logo.png" width="68" height="73"&gt;this morning, I got quite frustrated by a couple of things going on. first of all, no sync! second, &lt;a href="www.digsby.com"&gt;digsby&lt;/a&gt;! sticky notes and &lt;a href="www.digsby.com"&gt;digsby&lt;/a&gt; are two things I've come to rely on. there's some talk about a protocol change (or using old protocols or something like that) I read that pointed to &lt;a href="www.digsby.com"&gt;digsby&lt;/a&gt;'s msn having connection problems while using windows live mesh. while live mesh was running, msn would drop off. according to their blog, it's a known issue and will be revised in a future release.&lt;/p&gt; &lt;p&gt;anyway, so here I am. I decided to get rid of mesh in favor &lt;img style="border-bottom: medium none; border-left: medium none; margin: ; padding-left: ; padding-right: ; display: inline; float: right; border-top: medium none; border-right: medium none; padding-top: " align="right" src="https://www.dropbox.com/static/15134/images/logo.png" width="144" height="44"&gt;of something I've been using awhile and have come to love: &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt;. the challenge with dropbox was that I had to find a way to synchronize the content (yeah that's easy I know) without having the content only in the dropbox folder.&lt;/p&gt; &lt;p&gt;the first thing I thought of doing was writing a script to copy the dropbox content on sync detection. this seemed like OVERKILL when I found &lt;a href="http://forums.dropbox.com/topic.php?id=18802"&gt;someone else's brilliant solution&lt;/a&gt;: ntfs junctions.&lt;/p&gt; &lt;h3&gt;&amp;nbsp;&lt;/h3&gt; &lt;h3&gt;configuring &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; and junctions&lt;/h3&gt; &lt;p&gt;this is a rundown of the steps involved, which is pretty dang easy. so let's get started...&lt;/p&gt; &lt;ul&gt; &lt;li&gt;close your sticky notes application. make sure it's closed. if it's still running, you'll see the StikyNot.exe process running.&lt;/li&gt; &lt;li&gt;create a new directory called "sticky notes" somewhere in your &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; folder. I just put mine in the root for ease.&lt;/li&gt; &lt;li&gt;navigate to the "sticky notes" directory on your computer, where you'll find a file called &lt;strong&gt;StickyNotes.snt&lt;/strong&gt;. (the directory path is &lt;strong&gt;c:\users\&amp;lt;userid&amp;gt;\appdata\roaming\microsoft\sticky notes&lt;/strong&gt;)&lt;/li&gt; &lt;li&gt;copy the &lt;strong&gt;StickyNotes.snt&lt;/strong&gt; file to the &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; folder you created.&lt;/li&gt; &lt;li&gt;now get rid of the &lt;em&gt;original&lt;/em&gt; "sticky notes" directory.&lt;/li&gt; &lt;li&gt;from a cmd prompt, type the following to create your junction:&lt;/li&gt;&lt;/ul&gt; &lt;blockquote&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;mklink /J &lt;span style="color: #006080"&gt;"%APPDATA%\Microsoft\Sticky Notes"&lt;/span&gt; &lt;span style="color: #006080"&gt;"&amp;lt;Full Dropbox Path&amp;gt;\Sticky Notes"&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;once you open up sticky notes again, it'll be pointing to the file in your &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; folder courtesy of the junction you just created. :)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;if you open the path to the original stick notes directory, you'll notice there's a shortcut icon on the folder to indicate it's a junction. if you open up the folder, you'll find yourself in your &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; folder.&lt;/p&gt;
&lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_QUcVXWX86jg/TVLb1pjKuYI/AAAAAAAAAYU/xmozr_NXjoI/image%5B2%5D.png?imgmax=800" width="472" height="92"&gt;&lt;/p&gt;
&lt;p&gt;okay, now you're syncing sticky notes to &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt;... but what about another computer?&amp;nbsp; simple.&amp;nbsp; just run through the same steps above, except this time, don't worry about copying your stickynotes.snt file since it already exists in &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;notes&lt;/h3&gt;
&lt;p&gt;there's one caveat I should mention. the synchronization can't take place while sticky notes is running. you'll want to close your sticky notes application every now and then so that &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; has a chance to sync your changes.&lt;/p&gt;
&lt;p&gt;this applies to computers receiving the files from &lt;a href="www.dropbox.com"&gt;dropbox&lt;/a&gt; as well. as long as sticky notes is running, it won't be able to sync the contents.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-7037841249520285608?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ag9YpXkKdwFUU45n7ve6hkFNuyI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ag9YpXkKdwFUU45n7ve6hkFNuyI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ag9YpXkKdwFUU45n7ve6hkFNuyI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ag9YpXkKdwFUU45n7ve6hkFNuyI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=NlulNdOC9iY:YpRB5JJBL_A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=NlulNdOC9iY:YpRB5JJBL_A:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=NlulNdOC9iY:YpRB5JJBL_A:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=NlulNdOC9iY:YpRB5JJBL_A:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=NlulNdOC9iY:YpRB5JJBL_A:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=NlulNdOC9iY:YpRB5JJBL_A:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=NlulNdOC9iY:YpRB5JJBL_A:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=NlulNdOC9iY:YpRB5JJBL_A:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=NlulNdOC9iY:YpRB5JJBL_A:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/NlulNdOC9iY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/7037841249520285608/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/02/how-to-use-dropbox-to-synchronize.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/7037841249520285608?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/7037841249520285608?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/NlulNdOC9iY/how-to-use-dropbox-to-synchronize.html" title="how to use dropbox to synchronize windows 7 sticky notes" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/_QUcVXWX86jg/TVLb1pjKuYI/AAAAAAAAAYU/xmozr_NXjoI/s72-c/image%5B2%5D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/02/how-to-use-dropbox-to-synchronize.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIGQXg9fip7ImA9Wx9XFEw.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-4290794355184899159</id><published>2011-01-07T11:25:00.001-05:00</published><updated>2011-01-07T11:25:20.666-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-07T11:25:20.666-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><title>powershell: naming functions and cmdlets</title><content type="html">&lt;p&gt;creating stuff in powershell and are curious about how to name it?&amp;nbsp; you already know the verb-noun format, but what are the right verbs to use?&lt;/p&gt; &lt;p&gt;use the &lt;a href="http://technet.microsoft.com/en-us/library/ee407453.aspx"&gt;get-verb cmdlet&lt;/a&gt;!&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;Verb                            Group&lt;br&gt;----                            -----&lt;br&gt;Add                             Common&lt;br&gt;Clear                           Common&lt;br&gt;Close                           Common&lt;br&gt;Copy                            Common&lt;br&gt;Enter                           Common&lt;br&gt;Exit                            Common&lt;br&gt;Find                            Common&lt;br&gt;Format                          Common&lt;br&gt;Get                             Common&lt;br&gt;Hide                            Common&lt;br&gt;Join                            Common&lt;br&gt;Lock                            Common&lt;br&gt;Move                            Common&lt;br&gt;New                             Common&lt;br&gt;Open                            Common&lt;br&gt;Pop                             Common&lt;br&gt;Push                            Common&lt;br&gt;Redo                            Common&lt;br&gt;Remove                          Common&lt;br&gt;Rename                          Common&lt;br&gt;Reset                           Common&lt;br&gt;Search                          Common&lt;br&gt;Select                          Common&lt;br&gt;Set                             Common&lt;br&gt;Show                            Common&lt;br&gt;Skip                            Common&lt;br&gt;Split                           Common&lt;br&gt;Step                            Common&lt;br&gt;Switch                          Common&lt;br&gt;Undo                            Common&lt;br&gt;Unlock                          Common&lt;br&gt;Watch                           Common&lt;br&gt;Backup                          Data&lt;br&gt;Checkpoint                      Data&lt;br&gt;Compare                         Data&lt;br&gt;Compress                        Data&lt;br&gt;Convert                         Data&lt;br&gt;ConvertFrom                     Data&lt;br&gt;ConvertTo                       Data&lt;br&gt;Dismount                        Data&lt;br&gt;Edit                            Data&lt;br&gt;Expand                          Data&lt;br&gt;Export                          Data&lt;br&gt;Group                           Data&lt;br&gt;Import                          Data&lt;br&gt;Initialize                      Data&lt;br&gt;Limit                           Data&lt;br&gt;Merge                           Data&lt;br&gt;Mount                           Data&lt;br&gt;Out                             Data&lt;br&gt;Publish                         Data&lt;br&gt;Restore                         Data&lt;br&gt;Save                            Data&lt;br&gt;Sync                            Data&lt;br&gt;Unpublish                       Data&lt;br&gt;Update                          Data&lt;br&gt;Approve                         Lifecycle&lt;br&gt;Assert                          Lifecycle&lt;br&gt;Complete                        Lifecycle&lt;br&gt;Confirm                         Lifecycle&lt;br&gt;Deny                            Lifecycle&lt;br&gt;Disable                         Lifecycle&lt;br&gt;Enable                          Lifecycle&lt;br&gt;Install                         Lifecycle&lt;br&gt;Invoke                          Lifecycle&lt;br&gt;Register                        Lifecycle&lt;br&gt;Request                         Lifecycle&lt;br&gt;Restart                         Lifecycle&lt;br&gt;Resume                          Lifecycle&lt;br&gt;Start                           Lifecycle&lt;br&gt;Stop                            Lifecycle&lt;br&gt;Submit                          Lifecycle&lt;br&gt;Suspend                         Lifecycle&lt;br&gt;Uninstall                       Lifecycle&lt;br&gt;Unregister                      Lifecycle&lt;br&gt;Wait                            Lifecycle&lt;br&gt;Debug                           Diagnostic&lt;br&gt;Measure                         Diagnostic&lt;br&gt;Ping                            Diagnostic&lt;br&gt;Repair                          Diagnostic&lt;br&gt;Resolve                         Diagnostic&lt;br&gt;Test                            Diagnostic&lt;br&gt;Trace                           Diagnostic&lt;br&gt;Connect                         Communications&lt;br&gt;Disconnect                      Communications&lt;br&gt;Read                            Communications&lt;br&gt;Receive                         Communications&lt;br&gt;Send                            Communications&lt;br&gt;Write                           Communications&lt;br&gt;Block                           Security&lt;br&gt;Grant                           Security&lt;br&gt;Protect                         Security&lt;br&gt;Revoke                          Security&lt;br&gt;Unblock                         Security&lt;br&gt;Unprotect                       Security&lt;br&gt;Use                             Other&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-4290794355184899159?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Wa8Txcyk1qge8lnoL3gnG89ofW8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Wa8Txcyk1qge8lnoL3gnG89ofW8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Wa8Txcyk1qge8lnoL3gnG89ofW8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Wa8Txcyk1qge8lnoL3gnG89ofW8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=90N8JeLJBfg:yz0HdLyWPtE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=90N8JeLJBfg:yz0HdLyWPtE:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=90N8JeLJBfg:yz0HdLyWPtE:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=90N8JeLJBfg:yz0HdLyWPtE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=90N8JeLJBfg:yz0HdLyWPtE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=90N8JeLJBfg:yz0HdLyWPtE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=90N8JeLJBfg:yz0HdLyWPtE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=90N8JeLJBfg:yz0HdLyWPtE:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=90N8JeLJBfg:yz0HdLyWPtE:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/90N8JeLJBfg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/4290794355184899159/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/01/powershell-naming-functions-and-cmdlets.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4290794355184899159?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4290794355184899159?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/90N8JeLJBfg/powershell-naming-functions-and-cmdlets.html" title="powershell: naming functions and cmdlets" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/01/powershell-naming-functions-and-cmdlets.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcFRno-cSp7ImA9Wx9XE0k.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-6363512400283946937</id><published>2011-01-05T18:21:00.001-05:00</published><updated>2011-01-06T13:53:37.459-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-06T13:53:37.459-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="opalis" /><title>opalis: guidance on troubleshooting failed workflows</title><content type="html">&lt;p&gt;as you move into deeper integration stories with opalis, it’s probable that you’re going to run into situations where the expected outcome isn’t quite as you dreamed.&lt;/p&gt; &lt;p&gt;now why is this?&amp;nbsp; it’s usually because as you write the process, it isn’t completely determined what you’ll need.&amp;nbsp; this manifests itself often for me (anyway) as security related problems.&amp;nbsp; the most common reason this occurs is that you are designing as your own account and running your workflows as the opalis action service account.&lt;/p&gt; &lt;p&gt;so, if you would, allow me to offer a little guidance on this.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;repeat to yourself: i am not the opalis action account.&lt;/strong&gt;&amp;nbsp; this has a profound effect in separating you from your delusion that the universe does not want you to succeed today.&amp;nbsp; the point really is to &lt;em&gt;remember that that testing console runs as the user launching the opalis client.&amp;nbsp; &lt;/em&gt;here's a &lt;a href="http://twitter.com/pzerger/status/22871315706810369"&gt;demonstration&lt;/a&gt; by pete.  &lt;li&gt;&lt;strong&gt;review your audit history.&amp;nbsp; &lt;/strong&gt;it's object specific but sometimes you can glean problems occurring by viewing the audit history such as access denied errors when using the AD object.&lt;/li&gt;&lt;/ul&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="SNAGHTML251cf4cc[4]" border="0" alt="SNAGHTML251cf4cc[4]" src="http://lh6.ggpht.com/_QUcVXWX86jg/TSYPsEzvn1I/AAAAAAAAAYM/nUIvLbj9Aj4/SNAGHTML251cf4cc%5B4%5D%5B3%5D.png?imgmax=800" width="415" height="342"&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;check the system logs.&lt;/strong&gt;&amp;nbsp; while the logs can be quite noisy, it can provide a lot of value if the object problems are being logged.&amp;nbsp; how do you know if they are?&amp;nbsp; check!&amp;nbsp; &lt;a href="http://marcusoh.blogspot.com/2010/07/opalis-log-files-and-locations.html"&gt;this post&lt;/a&gt; has the log locations.&amp;nbsp; the policymodule*.log files are the ones to read. &lt;li&gt;&lt;strong&gt;minimize confusion by documentation.&lt;/strong&gt;&amp;nbsp; document the permissions required for the action server with passionate fervor!&amp;nbsp; (duh)&amp;nbsp; i can't even begin to explain how many times i was changing things in the wrong place.  &lt;li&gt;&lt;strong&gt;measure once, cut twice or measure twice, cut once – just measure.&lt;/strong&gt;&amp;nbsp; go back and assess the various places where a credential conflict might cause problems.&amp;nbsp; generally, when connections are defined, you define the credentials as well to connect to those environments.&amp;nbsp; while these may execute as the defined account (connections to opsmgr for example), &lt;em&gt;other objects that were not defined will execute as you (in the testing console) and as the opalis action service account (in running policies).&lt;/em&gt;  &lt;li&gt;&lt;strong&gt;put on your running shoes.&lt;/strong&gt;&amp;nbsp; if you’re working with nested workflows, &lt;em&gt;chase your log histories&lt;/em&gt;!&amp;nbsp; review the log histories of all your workflows.&amp;nbsp; while not as valuable as being able to run them in the testing console, it still pulls back some data that can be useful.  &lt;li&gt;&lt;strong&gt;execute each workflow individually if required.&lt;/strong&gt;&amp;nbsp; sometimes log history isn't enough.&amp;nbsp; it can be useful to separate the workflows and run them through the testing console.&amp;nbsp; remember your identity crisis.&amp;nbsp; you're running these tests as YOU, not the action server.  &lt;li&gt;&lt;strong&gt;append line object is your friend.&lt;/strong&gt;&amp;nbsp; back when we scripted in that archaic language known as vbscript, there was this concept of echoing.&amp;nbsp; you chiseled commands like &lt;strong&gt;wscript.echo "i am so cool"&lt;/strong&gt; into a rock wall and inside of your cmd shell, out it would come (and coincidentally, inside the cmd shell is also where you're cool).&amp;nbsp; this is akin to using echo statements to capture places that you are in your script.&amp;nbsp; write to log.&amp;nbsp; log often.&amp;nbsp; &lt;em&gt;log is your copilot&lt;/em&gt;.  &lt;li&gt;&lt;strong&gt;be something you’re not.&lt;/strong&gt;&amp;nbsp; try running the opalis client as the action account. this presents its own challenges though as you will be required to grant the action account access to your policies.  &lt;li&gt;&lt;strong&gt;violate all security principles.&lt;/strong&gt;&amp;nbsp; where at all possible, just put the action account into the domain administrators and rid yourself of all the pesky permissions issues.&amp;nbsp; &lt;strong&gt;&lt;font color="#ff0000"&gt;I AM JOKING!&amp;nbsp; do not ever do this.&lt;/font&gt;&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;for real world context, i wish to say that i ran into every one of these things.&amp;nbsp; and probably twice.&amp;nbsp; (except the last one.&amp;nbsp; thought about it.&amp;nbsp; a lot.&amp;nbsp; not dumb enough to do it though).&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-6363512400283946937?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1Zr8CGa0W--KPZecPs48IBtmK8k/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1Zr8CGa0W--KPZecPs48IBtmK8k/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1Zr8CGa0W--KPZecPs48IBtmK8k/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1Zr8CGa0W--KPZecPs48IBtmK8k/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=5u6JTxfofTM:RjX66vAZVYg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=5u6JTxfofTM:RjX66vAZVYg:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=5u6JTxfofTM:RjX66vAZVYg:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=5u6JTxfofTM:RjX66vAZVYg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=5u6JTxfofTM:RjX66vAZVYg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=5u6JTxfofTM:RjX66vAZVYg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=5u6JTxfofTM:RjX66vAZVYg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=5u6JTxfofTM:RjX66vAZVYg:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=5u6JTxfofTM:RjX66vAZVYg:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/5u6JTxfofTM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/6363512400283946937/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2011/01/opalis-guidance-on-troubleshooting.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6363512400283946937?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/6363512400283946937?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/5u6JTxfofTM/opalis-guidance-on-troubleshooting.html" title="opalis: guidance on troubleshooting failed workflows" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/_QUcVXWX86jg/TSYPsEzvn1I/AAAAAAAAAYM/nUIvLbj9Aj4/s72-c/SNAGHTML251cf4cc%5B4%5D%5B3%5D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2011/01/opalis-guidance-on-troubleshooting.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04GRXk9eyp7ImA9Wx9RFE8.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-5352758402443758623</id><published>2010-12-14T16:30:00.000-05:00</published><updated>2010-12-15T10:12:04.763-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-15T10:12:04.763-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="opalis" /><title>opalis: working around limitations with workflow objects and link operators</title><content type="html">&lt;p&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;UPDATE:&lt;/font&gt;&lt;/strong&gt; &lt;a href="http://www.systemcentercentral.com/pzerger"&gt;pete zerger&lt;/a&gt; was kind enough to point out that sometimes i don't make sense, and i missed a very obvious point in the documentation.&amp;nbsp; since the post itself is still useful, i didn't just scrap it.&amp;nbsp; :)&amp;nbsp; instead, i added an addendum.&lt;/p&gt; &lt;p&gt;if you've been working with opalis long enough, you &lt;strike&gt;might&lt;/strike&gt; will find that there are moments when hacks are required to get you from one point to the next point.&amp;nbsp; i've been experimenting a lot with nested workflows.&amp;nbsp; it's like evolving from inline scripting to scripting with functions and/or subs.&lt;/p&gt; &lt;p&gt;i discovered that when using &lt;strong&gt;trigger policy&lt;/strong&gt; to run a nested workflow, a bizarre thing happens.&amp;nbsp; even if the nested workflow executes with an error, the status returned by the calling trigger policy object is "success".&amp;nbsp; it didn't make sense at first until i realized that by all accounts, the trigger policy &lt;strong&gt;did&lt;/strong&gt; execute successfully.&lt;/p&gt; &lt;p&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_QUcVXWX86jg/TQeQ9D1iNOI/AAAAAAAAAXs/lBEl7xyDkVM/image%5B8%5D.png?imgmax=800" width="313" height="132"&gt;&amp;nbsp;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_QUcVXWX86jg/TQeQ9WTRJSI/AAAAAAAAAXw/vpxeQ_gYmoE/image%5B11%5D.png?imgmax=800" width="253" height="128"&gt;&lt;/p&gt; &lt;p align="left"&gt;well, there's a problem with this.&amp;nbsp; if it comes back as success, &lt;em&gt;even though something failed&lt;/em&gt;, the policy will continue on down the path unless you tell it otherwise.&amp;nbsp; enough of that.&amp;nbsp; let's talk specifics about my scenario.&lt;/p&gt; &lt;p&gt;the workflow i created was designed to do one thing: usher alerts from opsmgr into tickets in remedy.&amp;nbsp; since remedy is divided into many different operating queues, i had to consider how to create tickets into the correct queues.&amp;nbsp; i decided to try it based on computer group membership.&lt;/p&gt; &lt;p&gt;in order to get the group membership, i had to query the opsmgr database.&amp;nbsp; i decided to push that into a nested workflow so that it could be reused in other workflows at some later point.&amp;nbsp; the information retrieved from the nested workflow would be the basis of information fed to a text file.&amp;nbsp; the master workflow could reference the text file to search through for cross checking names.&lt;/p&gt; &lt;p&gt;now what would happen if the database failed to query, and the associated text file never filled with any data?&amp;nbsp; if you're cross checking the alerts against an empty text file, chances are you will never have a match and as such no tickets generated.&lt;/p&gt; &lt;p&gt;but if opalis is returning a success on the nested workflow, how do you know the query is failing?&amp;nbsp; that seems simple.&amp;nbsp; if the published data returned from the nested workflow is empty, then obviously the query failed.&amp;nbsp; &lt;em&gt;too bad the link operators don't have any filters for stuff like "is empty" or "is not empty".&lt;/em&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_QUcVXWX86jg/TQeQ91tZtYI/AAAAAAAAAX0/WIyY6fQwW7o/image%5B14%5D.png?imgmax=800" width="316" height="174"&gt;&lt;/p&gt; &lt;p&gt;all isn't lost though.&amp;nbsp; to get the effect that we want, we simply have to know what to look for.&amp;nbsp; going to the nested workflow, we can use the query database object status as our criteria to branch appropriately.&amp;nbsp; if successful, the publish policy data object writes the expected server list.&amp;nbsp; if it runs into a warning or failure, we publish static text to a different publish policy data object in the form of "FAILED".&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_QUcVXWX86jg/TQeQ-brnU1I/AAAAAAAAAX4/vUNRJuBgRbk/image%5B20%5D.png?imgmax=800" width="529" height="134"&gt;&lt;/p&gt; &lt;p&gt;back in the master workflow, we can now use the link operator to cull out anything that tries to come through with "FAILED".&amp;nbsp; if it matches the include filter, the policy processing stops.&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_QUcVXWX86jg/TQeQ_Pky71I/AAAAAAAAAX8/lbqW-_WhU3w/image%5B23%5D.png?imgmax=800" width="481" height="191"&gt;&lt;/p&gt; &lt;p align="left"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="left"&gt;addendum:&lt;/p&gt; &lt;p align="left"&gt;keep in mind that link operators do not have an "AND" operation.&amp;nbsp; instead the filters are evaluated as "OR" expressions.&amp;nbsp; however, the include/exclude tabs are separate so mixing and matching is a possibility, assuming you have the right content coming through.&amp;nbsp; &lt;/p&gt; &lt;p align="left"&gt;in the opalis client user guide, the trigger policy object section has a table that states this description for the child policy status: &lt;em&gt;the status that was returned by the child policy.&amp;nbsp; &lt;/em&gt;it's important to clarify that the default behavior of a link operator coming from the trigger policy object is to set the filter to look for anything coming from trigger policy itself to "success".&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_QUcVXWX86jg/TQjawEEVV6I/AAAAAAAAAYA/b58RinvzAOM/image%5B5%5D.png?imgmax=800" width="327" height="92"&gt;&lt;/p&gt; &lt;p align="left"&gt;if you're looking for the status coming from the child policy, you should change the link operator filter to look for something like this:&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_QUcVXWX86jg/TQjawVRdchI/AAAAAAAAAYE/1YMzTy28JIs/image%5B8%5D.png?imgmax=800" width="440" height="93"&gt;&lt;/p&gt; &lt;div class="blogger-post-footer"&gt; &lt;hr&gt; &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-5352758402443758623?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4ypyQn1UtAb4KWy4DMmicO--zrA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4ypyQn1UtAb4KWy4DMmicO--zrA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4ypyQn1UtAb4KWy4DMmicO--zrA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4ypyQn1UtAb4KWy4DMmicO--zrA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=8rANFa3eU14:mLQrSgLwNHA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=8rANFa3eU14:mLQrSgLwNHA:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=8rANFa3eU14:mLQrSgLwNHA:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=8rANFa3eU14:mLQrSgLwNHA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=8rANFa3eU14:mLQrSgLwNHA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=8rANFa3eU14:mLQrSgLwNHA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=8rANFa3eU14:mLQrSgLwNHA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=8rANFa3eU14:mLQrSgLwNHA:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=8rANFa3eU14:mLQrSgLwNHA:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/8rANFa3eU14" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/5352758402443758623/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2010/12/opalis-working-around-limitations-with.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/5352758402443758623?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/5352758402443758623?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/8rANFa3eU14/opalis-working-around-limitations-with.html" title="opalis: working around limitations with workflow objects and link operators" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/_QUcVXWX86jg/TQeQ9D1iNOI/AAAAAAAAAXs/lBEl7xyDkVM/s72-c/image%5B8%5D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2010/12/opalis-working-around-limitations-with.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUAFRX45cCp7ImA9Wx9SGEw.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-4354298547769350910</id><published>2010-12-08T05:08:00.000-05:00</published><updated>2010-12-08T08:08:34.028-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-08T08:08:34.028-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="opalis" /><title>opalis: multiple policy instances running in the operator console</title><content type="html">&lt;p&gt;here is an interesting and rather complex problem i experienced with opalis.&amp;nbsp; honestly, this thing has probably been going on since i built the environment.&amp;nbsp; however, i have only begun working with nested workflows which really helped flush it out.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h3&gt;summary&lt;/h3&gt; &lt;p&gt;essentially, when a master workflow launches a sub workflow, the policy spins in the background and never does anything.&amp;nbsp; another indication of the problem is that the summary of policies indicate a high number of running instances.&amp;nbsp; lastly, the problem appears to be environmental since only one opalis instance has the problem.&amp;nbsp; &lt;/p&gt; &lt;p&gt;here is a view of the operator console with this problem.&lt;/p&gt; &lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_QUcVXWX86jg/TP69jfwI1VI/AAAAAAAAAXc/DAub_IsksBM/image%5B5%5D.png?imgmax=800" width="588" height="159"&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;h3&gt;troubleshooting&lt;/h3&gt; &lt;p&gt;the first thing i prefer to do in scenarios like these is to try to recreate the problem.&amp;nbsp; that wasn't difficult on the server having the problem.&amp;nbsp; the operator console shows a high number of instances, sub-workflows hang indefinitely, etc.&amp;nbsp; when i tried it in a different environment, replicating the same master/sub nested test, it worked fine.&amp;nbsp; i decided it must be my policy and exported the test version into my broken opalis instance, ran it, and got the same result -- it hung.&lt;/p&gt; &lt;p&gt;i decided to look down another path into the running instances count to see if that was part of the problem.&amp;nbsp; i began by restarting the opalis service, hoping instances that were trapped somewhere would free themselves and disappear.&amp;nbsp; not a chance!&amp;nbsp; next, i started looking through the process list and &lt;em&gt;found &lt;strong&gt;policymodule.exe&lt;/strong&gt; which appears to be the running process that a policy resides in&lt;/em&gt;.&amp;nbsp; i figured with that many policy instances running, &lt;em&gt;surely&lt;/em&gt;, i was &lt;a href="http://support.microsoft.com/kb/2102398"&gt;way over the concurrent policy instance maximum&lt;/a&gt;.&amp;nbsp; unfortunately, i only found two of these processes which matched up to the two &lt;em&gt;running&lt;/em&gt; policies as seen in the screenshot above.&amp;nbsp; &lt;/p&gt; &lt;p&gt;since that looked fine, i went back to sifting the logs (yeah, i mistakenly dismissed it the first time around).i found this statement in the logs (full snip below)[3] which had me scratching my head:&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;2010-12-07 15:12:38 [1640] 1 Opalis Event: Frequent DB errors&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;that information wasn't very telling but eventually a little further down in the logs, i found this error:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;Param&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;The EXECUTE permission was denied on the object 'sp_UnpublishPolicyRequest', database 'Opalis', schema 'dbo'&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;/Param&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;apparently, i had the wrong set of permissions.&amp;nbsp; &lt;em&gt;according to the administrator guide, the action server requires "part of database users group on the datastore computer"&lt;/em&gt;.&amp;nbsp; going by this guidance, the action server service account was granted db_datareader and db_datawriter.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;this made perfect sense.&amp;nbsp; all of my other environments were ones i set up simply to test.&amp;nbsp; with this broken one, it was set up as a dev environment utilizing best practices such as using databases from people who know how to run them (not me).&amp;nbsp; adding to that, using the minimal level of rights required is followed.&amp;nbsp; by the log output, you can see i missed one of those such rights, however.&amp;nbsp; i did not grant the "execute" permissions that the account required.&lt;/p&gt;
&lt;p&gt;this seems to speak to the root of the problem but in my research found that it did not correct the running instances count that appears in the operator console.&amp;nbsp; looking through the database views, i found dbo.policies_view (which details a lot more than what you see in the operator console, by the way).&amp;nbsp; i opened this view and found "runningpolicyinstances" column which contained the exact counts i saw in the operator console:&lt;/p&gt;
&lt;p align="center"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_QUcVXWX86jg/TP-DUClpjeI/AAAAAAAAAXo/nDD8oqVtya4/image%5B2%5D.png?imgmax=800" width="440" height="113"&gt;&lt;/p&gt;
&lt;p align="left"&gt;the design of the dbo.policies_view indicated very clearly how this column was being constructed.&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;(&lt;span style="color: #0000ff"&gt;SELECT&lt;/span&gt; &lt;span style="color: #0000ff"&gt;COUNT&lt;/span&gt;(*) &lt;span style="color: #0000ff"&gt;AS&lt;/span&gt; Expr1 &lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt; dbo.POLICYINSTANCES &lt;span style="color: #0000ff"&gt;WHERE&lt;/span&gt; (dbo.POLICIES.UniqueID = PolicyID) &lt;span style="color: #0000ff"&gt;AND&lt;/span&gt; (TimeEnded &lt;span style="color: #0000ff"&gt;IS&lt;/span&gt; &lt;span style="color: #0000ff"&gt;NULL&lt;/span&gt;))&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;so basically, if the timeended value in the dbo.policyinstances table is null, it counts them up and displays it here.&amp;nbsp; sure enough, the table contained a high number of rows with null values.&amp;nbsp; i searched through all of the stored procedures to try to locate an entry that indicated inserting values into policyinstances but in almost every case, data was drawn from the table and rarely written to.&amp;nbsp; to add to this problem, log purging doesn't delete entries where the timeended value is null.&amp;nbsp; i suspect this is because it believes the policies haven't finished executing yet.&amp;nbsp; thus, these counts would have never gone away on their end.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;resolution&lt;/h3&gt;
&lt;h5&gt;:: database ::&lt;/h5&gt;
&lt;p&gt;the problem with the database permissions can be fixed in one of two ways: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;grant the account db_owner rights&lt;/li&gt;
&lt;li&gt;grant the account execute rights on all stored procedures [1]&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;once either one of these is done, the error in the opalisactionservice logs stop generating.&amp;nbsp; i would be cautious with this.&amp;nbsp; first, granting db_owner is probably granting rights beyond what the account actually needs.&amp;nbsp; second, if you choose to just grant rights to the stored procedures, it may not be the entire set of rights required.&amp;nbsp; my testing has been limited so far, and thus i may find in doing so that i run into other issues [2].&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h5&gt;:: operator console ::&lt;/h5&gt;
&lt;p&gt;correcting the summary count will require some changes to the policyinstances table.&amp;nbsp; &lt;font color="#ff0000"&gt;obviously going in and messing around with tables is not going to be supported by microsoft so proceed at your own risk&lt;/font&gt;.&amp;nbsp; my environment is a testing environment so it makes sense for me.&amp;nbsp; you may want to call microsoft support.&lt;/p&gt;
&lt;p&gt;to begin, i shutdown all running policies so that any timeended date stamps would write in as necessary (allowing me to avoid unnecessarily changing data that didn't need modification).&amp;nbsp; afterwards, i ran the following sql query to set the timeended value to the current timestamp.&lt;/p&gt;
&lt;div&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;update&lt;/span&gt; dbo.policyinstances &lt;br&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt; [timeended] = getdate()&lt;br&gt;&lt;span style="color: #0000ff"&gt;where&lt;/span&gt; timeended &lt;span style="color: #0000ff"&gt;is&lt;/span&gt; null&lt;/pre&gt;&lt;/div&gt;
&lt;div&gt;&lt;br&gt;this simple query adds the current datetime to the timeended field where the value is null.&amp;nbsp; as shown in the screenshot below, the instance summary now displays the correct count.&lt;/div&gt;
&lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_QUcVXWX86jg/TP6-98IeeTI/AAAAAAAAAXk/k6lFPgp8W-0/image%5B11%5D.png?imgmax=800" width="598" height="129"&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;addendum&lt;/h3&gt;
&lt;p&gt;[1] if you're interested in the sql query to provide execute permissions for the action server service account, here it is.&amp;nbsp; many thanks to patrick for whipping this up!&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;declare&lt;/span&gt; @str_objname sysname,&lt;br&gt;        @str_execsql nvarchar(256)&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;span style="color: #0000ff"&gt;declare&lt;/span&gt; cur_spname &lt;span style="color: #0000ff"&gt;cursor&lt;/span&gt; &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; &lt;br&gt;&lt;span style="color: #0000ff"&gt;select&lt;/span&gt; name &lt;span style="color: #0000ff"&gt;from&lt;/span&gt; sys.procedures&lt;br&gt;&amp;nbsp;&lt;br&gt;--&lt;span style="color: #0000ff"&gt;select&lt;/span&gt; schema_name(schema_id), name &lt;span style="color: #0000ff"&gt;from&lt;/span&gt; sys.procedures&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;span style="color: #0000ff"&gt;open&lt;/span&gt; cur_spname &lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;span style="color: #0000ff"&gt;fetch&lt;/span&gt; cur_spname &lt;span style="color: #0000ff"&gt;into&lt;/span&gt; @str_objname&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;span style="color: #0000ff"&gt;while&lt;/span&gt; &lt;span style="color: #cc6633"&gt;@@fetch_status&lt;/span&gt; = 0&lt;br&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt; &lt;br&gt;    &lt;span style="color: #0000ff"&gt;set&lt;/span&gt; @str_execsql = &lt;span style="color: #006080"&gt;'grant execute on '&lt;/span&gt;+@str_objname+&lt;span style="color: #006080"&gt;' to [myServiceAccount];'&lt;/span&gt;&lt;br&gt;    &lt;span style="color: #0000ff"&gt;print&lt;/span&gt; @str_execsql &lt;br&gt;    &lt;span style="color: #0000ff"&gt;exec&lt;/span&gt; sp_executesql @&lt;span style="color: #0000ff"&gt;statement&lt;/span&gt; = @str_execsql&lt;br&gt;    &lt;span style="color: #0000ff"&gt;fetch&lt;/span&gt; cur_spname &lt;span style="color: #0000ff"&gt;into&lt;/span&gt; @str_objname&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;span style="color: #0000ff"&gt;deallocate&lt;/span&gt; cur_spname&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;here is what the query ended up executing:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_insertevent &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_GetLogEntriesForDelete_FilterByEntries &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_GetLogEntriesForDelete_FilterByDays &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_GetLogEntriesForDelete_FilterByEntriesAndDays &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_CustomLogCleanup &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_PublishPolicy &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_UnpublishPolicyRequest &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_UnpublishPolicy &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_DeleteTreeData &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_FindTreeInsertionPoint &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_InsertTreeData &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_MoveTreeBranch &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_StopAllRequestsForPolicy &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;br&gt;&lt;span style="color: #0000ff"&gt;grant&lt;/span&gt; &lt;span style="color: #0000ff"&gt;execute&lt;/span&gt; &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; sp_StopAllRequests &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; [myServiceAccount];&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;


&lt;p&gt;[2] if you want, you can follow this forum post. looking for the complete list of database rights required by the action server service account: &lt;a title="http://social.technet.microsoft.com/Forums/en-US/opalisv5v6/thread/faf9c8a0-a1b2-4442-8391-1ff738826f28" href="http://social.technet.microsoft.com/Forums/en-US/opalisv5v6/thread/faf9c8a0-a1b2-4442-8391-1ff738826f28"&gt;http://social.technet.microsoft.com/Forums/en-US/opalisv5v6/thread/faf9c8a0-a1b2-4442-8391-1ff738826f28&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;[3] here's the full log snippet:&lt;/p&gt;
&lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;font style="background-color: #ffff00"&gt;2010-12-07 15:12:38 [1640] 1 Opalis Event: Frequent DB errors&lt;br&gt;&lt;/font&gt;&lt;br&gt;2010-12-07 15:12:38 [1640] 1 &lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt; caught &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; void __cdecl OpalisEventDeliveryStrategyComposite::sendAndTraceExceptions(const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; OpalisEventDeliveryStrategy &amp;amp;,const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; OpalisEvent &amp;amp;,const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; std::basic_string&amp;lt;unsigned short,struct std::char_traits&amp;lt;unsigned short&amp;gt;,&lt;span style="color: #0000ff"&gt;class&lt;/span&gt; std::allocator&amp;lt;unsigned short&amp;gt; &amp;gt; &amp;amp;)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\OpalisEventDelivery\OpalisEventDeliveryStrategyComposite.cpp(83):&lt;br&gt;&amp;lt;&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&amp;lt;Type&amp;gt;Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;lt;/Type&amp;gt;&lt;br&gt;&amp;lt;Location&amp;gt;&lt;br&gt;void __cdecl OpalisEventDeliveryStrategyComposite::sendAndTraceExceptions(const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; OpalisEventDeliveryStrategy &amp;amp;,const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; OpalisEvent &amp;amp;,const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; std::basic_string&amp;lt;unsigned short,struct std::char_traits&amp;lt;unsigned short&amp;gt;,&lt;span style="color: #0000ff"&gt;class&lt;/span&gt; std::allocator&amp;lt;unsigned short&amp;gt; &amp;gt; &amp;amp;)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\OpalisEventDelivery\OpalisEventDeliveryStrategyComposite.cpp(80)&lt;br&gt;&amp;lt;/Location&amp;gt;&lt;br&gt;&amp;lt;MsgCode&amp;gt;Cannot deliver Opalis Event&amp;lt;/MsgCode&amp;gt;&lt;br&gt;&amp;lt;Params&amp;gt;&lt;br&gt;&amp;lt;Param&amp;gt;EW&amp;lt;/Param&amp;gt;&lt;br&gt;&amp;lt;/Params&amp;gt;&lt;br&gt;&amp;lt;Prev&amp;gt;&amp;lt;&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&amp;lt;Type&amp;gt;Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;lt;/Type&amp;gt;&lt;br&gt;&amp;lt;Location&amp;gt;&lt;br&gt;void __cdecl StorageCallExecutor::throwChained(const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt; &amp;amp;)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\OpalisActionService2\StorageCallExecutor.cpp(47)&lt;br&gt;&amp;lt;/Location&amp;gt;&lt;br&gt;&amp;lt;MsgCode&amp;gt;SCE: ActionServerStorage &lt;span style="color: #0000ff"&gt;call&lt;/span&gt; failed&amp;lt;/MsgCode&amp;gt;&lt;br&gt;&amp;lt;Prev&amp;gt;&amp;lt;&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&amp;lt;Type&amp;gt;Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;lt;/Type&amp;gt;&lt;br&gt;&amp;lt;Location&amp;gt;&lt;br&gt;long __stdcall CODBDataStore::ReportEventW(struct tagVARIANT)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\DBDataStore\ODBDataStore.cpp(6002)&lt;br&gt;&amp;lt;/Location&amp;gt;&lt;br&gt;&amp;lt;MsgCode&amp;gt;_com_error&amp;lt;/MsgCode&amp;gt;&lt;br&gt;&amp;lt;Params&amp;gt;&lt;br&gt;&amp;lt;Param&amp;gt;&lt;span style="color: #0000ff"&gt;Unknown&lt;/span&gt; error 0x800A0CC1&amp;lt;/Param&amp;gt;&lt;br&gt;&amp;lt;Param&amp;gt;Item cannot be &lt;span style="color: #0000ff"&gt;found&lt;/span&gt; &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; the collection &lt;span style="color: #0000ff"&gt;corresponding&lt;/span&gt; &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; the requested name &lt;span style="color: #0000ff"&gt;or&lt;/span&gt; ordinal.&amp;lt;/Param&amp;gt;&lt;br&gt;&amp;lt;Param&amp;gt;-2146825023&amp;lt;/Param&amp;gt;&lt;br&gt;&amp;lt;/Params&amp;gt;&lt;br&gt;&amp;lt;/&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&amp;lt;/Prev&amp;gt;&lt;br&gt;&amp;lt;/&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&amp;lt;/Prev&amp;gt;&lt;br&gt;&amp;lt;/&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&lt;br&gt;2010-12-07 15:12:38 [1640] 1 &lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt; caught &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; void __thiscall StorageCallExecutor::onStorageException(&lt;span style="color: #0000ff"&gt;class&lt;/span&gt; Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt; &amp;amp;,bool)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\OpalisActionService2\StorageCallExecutor.cpp(120):&lt;br&gt;&amp;lt;&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&amp;lt;Type&amp;gt;Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;lt;/Type&amp;gt;&lt;br&gt;&amp;lt;Location&amp;gt;&lt;br&gt;void __thiscall PublishedPoliciesManager::removePolicyRequest(const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; _bstr_t &amp;amp;,const __int64 &amp;amp;)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\DBDataStore\PublishedPoliciesManager.cpp(850)&lt;br&gt;&amp;lt;/Location&amp;gt;&lt;br&gt;&amp;lt;MsgCode&amp;gt;Cannot unpublish policy&amp;lt;/MsgCode&amp;gt;&lt;br&gt;&amp;lt;Prev&amp;gt;&amp;lt;&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&amp;lt;Type&amp;gt;Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;lt;/Type&amp;gt;&lt;br&gt;&amp;lt;Location&amp;gt;&lt;br&gt;void __thiscall PublishedPoliciesManager::removePolicyRequest(const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; _bstr_t &amp;amp;,const __int64 &amp;amp;)&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\DBDataStore\PublishedPoliciesManager.cpp(838)&lt;br&gt;&amp;lt;/Location&amp;gt;&lt;br&gt;&amp;lt;MsgCode&amp;gt;&lt;span style="color: #0000ff"&gt;No&lt;/span&gt; more attempts&amp;lt;/MsgCode&amp;gt;&lt;br&gt;&amp;lt;Prev&amp;gt;&amp;lt;&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;br&gt;&amp;lt;Type&amp;gt;Opalis::&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;lt;/Type&amp;gt;&lt;br&gt;&amp;lt;Location&amp;gt;&lt;br&gt;void __thiscall DBAccessor::&lt;span style="color: #0000ff"&gt;execute&lt;/span&gt;(const &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; std::basic_string&amp;lt;unsigned short,struct std::char_traits&amp;lt;unsigned short&amp;gt;,&lt;span style="color: #0000ff"&gt;class&lt;/span&gt; std::allocator&amp;lt;unsigned short&amp;gt; &amp;gt; &amp;amp;) const&lt;br&gt;C:\AutomatedBuild\IS5.Platform\Branches\6.2_Sanitized\Platform\DBDataStore\DBAccessor.cpp(37)&lt;br&gt;&amp;lt;/Location&amp;gt;&lt;br&gt;&amp;lt;MsgCode&amp;gt;_com_error&amp;lt;/MsgCode&amp;gt;&lt;br&gt;&amp;lt;Params&amp;gt;&lt;br&gt;&amp;lt;Param&amp;gt;IDispatch error #3081&amp;lt;/Param&amp;gt;&lt;br&gt;&lt;font style="background-color: #ffff00"&gt;&amp;lt;Param&amp;gt;The &lt;span style="color: #0000ff"&gt;EXECUTE&lt;/span&gt; permission was denied &lt;span style="color: #0000ff"&gt;on&lt;/span&gt; the &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; &lt;span style="color: #006080"&gt;'sp_UnpublishPolicyRequest'&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;database&lt;/span&gt; &lt;span style="color: #006080"&gt;'Opalis'&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;schema&lt;/span&gt; &lt;span style="color: #006080"&gt;'dbo'&lt;/span&gt;.&amp;lt;/Param&amp;gt;&lt;br&gt;&lt;/font&gt;&amp;lt;Param&amp;gt;-2147217911&amp;lt;/Param&amp;gt;&lt;br&gt;&amp;lt;/Params&amp;gt;&lt;br&gt;&amp;lt;/&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&amp;lt;/Prev&amp;gt;&lt;br&gt;&amp;lt;/&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&amp;lt;/Prev&amp;gt;&lt;br&gt;&amp;lt;/&lt;span style="color: #0000ff"&gt;Exception&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-4354298547769350910?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/XzOqeZtDc1S4hCYdWwU2nCKPFXU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XzOqeZtDc1S4hCYdWwU2nCKPFXU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/XzOqeZtDc1S4hCYdWwU2nCKPFXU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XzOqeZtDc1S4hCYdWwU2nCKPFXU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=0YZujCvCJOo:lm4VKVuC-_E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=0YZujCvCJOo:lm4VKVuC-_E:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=0YZujCvCJOo:lm4VKVuC-_E:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=0YZujCvCJOo:lm4VKVuC-_E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=0YZujCvCJOo:lm4VKVuC-_E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=0YZujCvCJOo:lm4VKVuC-_E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=0YZujCvCJOo:lm4VKVuC-_E:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=0YZujCvCJOo:lm4VKVuC-_E:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=0YZujCvCJOo:lm4VKVuC-_E:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/0YZujCvCJOo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/4354298547769350910/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2010/12/opalis-multiple-policy-instances.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4354298547769350910?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/4354298547769350910?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/0YZujCvCJOo/opalis-multiple-policy-instances.html" title="opalis: multiple policy instances running in the operator console" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/_QUcVXWX86jg/TP69jfwI1VI/AAAAAAAAAXc/DAub_IsksBM/s72-c/image%5B5%5D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2010/12/opalis-multiple-policy-instances.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIEQX06eSp7ImA9Wx9SF0s.&quot;"><id>tag:blogger.com,1999:blog-15559937.post-844017954131374950</id><published>2010-12-07T19:35:00.000-05:00</published><updated>2010-12-07T19:35:00.311-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-07T19:35:00.311-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="powershell" /><category scheme="http://www.blogger.com/atom/ns#" term="ds" /><title>powershell: using convertfrom-csv</title><content type="html">&lt;p&gt;a friend of mine pointed out this really cool cmdlet called convertfrom-csv today.&amp;nbsp; using it, you can immediately create a PSCustomObject.&amp;nbsp; pretty cool!&amp;nbsp; as a practical example, you can dump out repadmin and use the object to work with data any way you see fit.&lt;/p&gt; &lt;div id="codeSnippetWrapper"&gt;&lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;p&gt;[96] {D:\temp} &lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #cc6633"&gt;$&lt;/span&gt;foo = convertfrom-csv @(repadmin /showrepl &lt;span style="color: #cc6633"&gt;*&lt;/span&gt; /csv)&lt;br&gt;[96] {D:\temp} &lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #cc6633"&gt;$&lt;/span&gt;foo | gm&lt;/p&gt;&lt;p&gt;  TypeName: System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;Management&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;Automation&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;PSCustomObject&lt;br&gt;&lt;br&gt;Name                MemberType   Definition&lt;br&gt;----                ----------   ----------&lt;br&gt;Equals              Method       bool Equals(System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;Object obj)&lt;br&gt;GetHashCode         Method       int GetHashCode()&lt;br&gt;GetType             Method       type GetType()&lt;br&gt;ToString            Method       string ToString()&lt;br&gt;Destination DC      NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Destination DC=myDC&lt;br&gt;Destination DC Site NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Destination DC Site=mySite&lt;br&gt;Last Failure Status NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Last Failure Status=0&lt;br&gt;Last Failure Time   NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Last Failure Time=0&lt;br&gt;Last Success Time   NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Last Success Time=2010-12-07 14:21:39&lt;br&gt;Naming Context      NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Naming Context=DC=myDomain,DC=com&lt;br&gt;Number of Failures  NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Number of Failures=0&lt;br&gt;showrepl_COLUMNS    NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String showrepl_COLUMNS=showrepl_INFO&lt;br&gt;Source DC           NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Source DC=myDC2&lt;br&gt;Source DC Site      NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Source DC Site=mySite&lt;br&gt;Transport Type      NoteProperty System&lt;span style="color: #ff0000"&gt;.&lt;/span&gt;String Transport Type=RPC&lt;/p&gt;&lt;/pre&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;hr /&gt;&lt;a href="http://marcusoh.blogspot.com"&gt;marcusoh.blogspot.com&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15559937-844017954131374950?l=marcusoh.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/iV2OjVzv9XOZ0pwmWpKP47mx_OI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iV2OjVzv9XOZ0pwmWpKP47mx_OI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/iV2OjVzv9XOZ0pwmWpKP47mx_OI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iV2OjVzv9XOZ0pwmWpKP47mx_OI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=QtKsv_ew1wQ:GcAaNUFzHOg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=QtKsv_ew1wQ:GcAaNUFzHOg:4cEx4HpKnUU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=QtKsv_ew1wQ:GcAaNUFzHOg:4cEx4HpKnUU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=QtKsv_ew1wQ:GcAaNUFzHOg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=QtKsv_ew1wQ:GcAaNUFzHOg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=QtKsv_ew1wQ:GcAaNUFzHOg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=QtKsv_ew1wQ:GcAaNUFzHOg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/blogspot/marcusoh?a=QtKsv_ew1wQ:GcAaNUFzHOg:oMyvP2lN8is"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/marcusoh?i=QtKsv_ew1wQ:GcAaNUFzHOg:oMyvP2lN8is" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/marcusoh/~4/QtKsv_ew1wQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://marcusoh.blogspot.com/feeds/844017954131374950/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://marcusoh.blogspot.com/2010/12/powershell-using-convertfrom-csv.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/844017954131374950?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/15559937/posts/default/844017954131374950?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/marcusoh/~3/QtKsv_ew1wQ/powershell-using-convertfrom-csv.html" title="powershell: using convertfrom-csv" /><author><name>marcus oh</name><uri>https://profiles.google.com/113338954314639106092</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-q7UakU0XPGw/AAAAAAAAAAI/AAAAAAAAAag/Ho3cJ_I6zAQ/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://marcusoh.blogspot.com/2010/12/powershell-using-convertfrom-csv.html</feedburner:origLink></entry></feed>

