<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jephens Tech.</title>
	<atom:link href="http://www.jephens.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jephens.com</link>
	<description>Keeping Computers Happy Since 1997</description>
	<lastBuildDate>Tue, 22 Nov 2011 04:33:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>SBS 2003 to 2011, Post Mortem</title>
		<link>http://www.jephens.com/2011/11/22/sbs-2003-to-2011-post-mortem/</link>
		<comments>http://www.jephens.com/2011/11/22/sbs-2003-to-2011-post-mortem/#comments</comments>
		<pubDate>Tue, 22 Nov 2011 04:33:16 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[clean install]]></category>
		<category><![CDATA[defeat]]></category>
		<category><![CDATA[punting]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=438</guid>
		<description><![CDATA[There's been good response to my earlier post (really, July?!?) about upgrading a client's server from SBS 2003 to SBS 2011 -- people want to know how the story ended.  So, forgive me for taking so long to finish up.  So, this will be short of details since I didn't take notes and am relying on [...]]]></description>
			<content:encoded><![CDATA[<p>There's been good response to my earlier post (really, July?!?) about upgrading a <a href="http://www.jephens.com/2011/07/29/upgrading-sbs-2003-to-sbs-2011/">client's server from SBS 2003 to SBS 2011</a> -- people want to know how the story ended.  So, forgive me for taking so long to finish up.  So, this will be short of details since I didn't take notes and am relying on memory.</p>
<p><a href="http://www.urbandictionary.com/define.php?term=tl%3Bdr">TL;DR</a> - Did a clean install. Recreated users, shares and printers.  Export mailboxes to PSTs.  Copied data over.  Reimported mailboxes. Got on with my life.</p>
<p>For the second run at upgrading the server, I had a few new tools at my disposal.</p>
<p>First, was a virtual copy of their server.  Since their server was already virtualized, I just stopped VMWare, made a copy of the VM and took it back to my office.  I loaded it up on a little Vostro 200 I had laying around (the server was amazingly peppy, all things considered) and then figured I'd do 99% of the migration off-site and then drop the box in and copy what was left of the data and mailboxes over.</p>
<p>I made the smart move and took GHOST images of the new box at every juncture, so I could "easily" roll back.  (Granted, the roll back takes 15 minutes, but it's waaaaay better than having to sit thru the unpacking of files every time something goes wrong.)</p>
<p>I will say it took an inordinate amount of time to get the right drivers to get the Dell T310 work with Sysinternals' ERD Commander 5.0 (Microsoft version; not the pre-buyout version with Firefox in it...) but it was worth it.</p>
<p>Let's say I rolled back more than a few times.  Learning a little more each time; or sometimes just doing everything identically, but having it work the second time around.</p>
<p>This guide came in handy: <a href="http://blog.mpecsinc.ca/2009/06/sbs-2003-to-sbs-2008-migration-guide.html">http://blog.mpecsinc.ca/2009/06/sbs-2003-to-sbs-2008-migration-guide.html</a></p>
<p>After doing this dance for a couple days, it got to a point where I was fed up with the roadblocks and things not working right (like migrated uses not showing up in the users applet).  From an email I sent to my partner at midnight the night before we were supposed to be on site, where I make the call to punt:</p>
<blockquote><p>"OK, I've had it. Every time I think I got it, there's some fucking error somewhere. I assume its in the old box somewhere -- a remnant of the P2V or something. So, fuck the migration. Their environment isn't so hard that we can't just do a clean install from scratch, remake the 10 users and the 4 shares and just be done.  Can you come down tomorrow since we're going to have join the machines to a new domain? I think the biggest challenge is going to be exporting/importing [the owner's] 8GB PST. I'll have all the users set up and the groups and most of the data copied over, so it'll just be joining the computers to the new domain and importing the mail."</p></blockquote>
<p>From there, it was a dream -- everything worked just fine.  We had one machine exporting people's PST files for later import.</p>
<p><strong>(WARNING: You lose Single Instance Storage when you do it this way, so your Exchange store will be bigger than it was due to duplication of attachments, etc. This may not be right for you.  YMMV.)</strong></p>
<p>At about 1:30 AM we were ready to move the new server into the copy room where it was going to stay.  The server asked to apply 59 updates, and like idiots, we let it, and that's where it all went to shit.</p>
<p>The reboot happened and then nothing but "Applying Updates, Stage 3 of 3..."</p>
<p>After an hour of staring at that screen, I sent my partner home.  No sense have two of us stuck in <a href="http://www.urbandictionary.com/define.php?term=Graybar%20Land">graybar land</a>.</p>
<p>After two hours, I started Googling solutions to the problem.  Eventually I was able to start the server and get to safe mode where I could edit some XML files and cross my fingers and wait more.</p>
<p>After another hour, I just left.  It was almost 4 in the morning by that point, so I got a room at a nearby motel (to save myself the 65 minute each way commute to the client office) and crashed hoping to get back onsite before everyone showed up at 8.</p>
<p>As I wrote in my post-mortem email to Brian at 11:20 AM:</p>
<blockquote><p>Subject: What a fucking mess</p>
<p>Everything works and nothing works,</p>
<p>Ended up staying at the local Days Inn and crossed my fingers that the thing would roll back while I slept, and when I came back at 8:15, we were at CTRL+ALT+DEL so it seems to be OK,m tho it lists all 59 updates as pending. There's a possibility they'll never take. (Fun!)</p>
<p>"Where are my contacts!?!" (nickname) - bring them over and all the nicknames for the internal people are all wrong, so the mail bounces.  NK2Edit to the rescue.</p>
<p>Scanner set up.</p>
<p>Abacus' DRM is driving me up a fucking wall.</p>
<p>Some documents that people were working on last night never made it over -- feels like there wasn't a sync done, and since we generally deleted the offline files from the workstations to eliminate the error we were getting at logoff sync... DOH. Happily, it seems they were able to recreate them with little effort, so it was an inconvenince, but not a show-stopper.</p></blockquote>
<p>People don't like to use their address books, I find -- they really REALLY rely on their NK2 files -- so when doing any sort of migration, don't overlook them.  <a href="http://www.nirsoft.net/utils/outlook_nk2_edit.html">NK2Edit</a> is the greatest tool in the world.</p>
<p>I hate DRM.  I think it only hurts legitimate users, pirates get past it with little effort, so it only serves to create issues for paid users at the worst possible times -- like when people need to use their time and billing systems and the support center isn't open for another hour or two...</p>
<p>The document sync issue wasn't something we thought was an issue -- we made sure offline files were all sync'd up, but users reported some documents didn't copy over, and I'm not sure what else to attribute it to.</p>
<p>In the time since we did this, the 59 updates did in fact take and the server didn't fall apart or fail.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/11/22/sbs-2003-to-2011-post-mortem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sometimes it&#8217;s quicker to upgrade&#8230;</title>
		<link>http://www.jephens.com/2011/11/20/sometimes-its-quicker-to-upgrade/</link>
		<comments>http://www.jephens.com/2011/11/20/sometimes-its-quicker-to-upgrade/#comments</comments>
		<pubDate>Sun, 20 Nov 2011 19:50:34 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[windows update]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=434</guid>
		<description><![CDATA[Visited a client today who was complaining of computer sluggishness among other issues, so I check the Microsoft Security Essentials and it says it's a few days out of date, but a manual attempt at updating failed with an error.  So, of course, I worry about infection getting in the way of doing updates, but [...]]]></description>
			<content:encoded><![CDATA[<p>Visited a client today who was complaining of computer sluggishness among other issues, so I check the Microsoft Security Essentials and it says it's a few days out of date, but a manual attempt at updating failed with an error.  So, of course, I worry about infection getting in the way of doing updates, but it occurs to me he's still on MSSE 1.x and I upgrade him to 2.x and all is well, he can take updates again.  Yay.</p>
<p>Then I see the Windows Update shield, and I open it up much to my horror:</p>
<p><a href="http://www.jephens.com/wp-content/uploads/2011/11/118updates.gif"><img class="alignnone size-full wp-image-435" title="118updates" src="http://www.jephens.com/wp-content/uploads/2011/11/118updates.gif" alt="" width="561" height="401" /></a></p>
<p><em><span style="text-decoration: underline;"><strong>118 UPDATES?!?</strong></span></em></p>
<p>So, at 2:05 PM, I clicked "AGREE" on a licensing agreement, and off we go...</p>
<p>I have a thread going over on Facebook...</p>
<p>JK (me): Shall we take bets as to how long this will take to run?</p>
<p>AF: I'll take the over on 5 reboots.</p>
<p>JS:  i am guess it will take 6 hours total. 5 hours and 45 minutes of annoying pop ups. 15 minutes of actual updating</p>
<p>JK: 2:10 - 2 security updates done... 0 reboots.</p>
<p>JK: ‎2:16 - 10 down, 0 reboots</p>
<p>JC: Don't forget Genuine Advantage.</p>
<p>JK: That's always last, isn't it?</p>
<p>JK: 2:36 19 down... 0 reboots.  (Net Framework installs take the longest.)</p>
<p>JK: 2:46 Update 22. Net Framework 1.1 SP1; see you in an hour. <img src='http://www.jephens.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/11/20/sometimes-its-quicker-to-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upgrading SBS 2003 to SBS 2011</title>
		<link>http://www.jephens.com/2011/07/29/upgrading-sbs-2003-to-sbs-2011/</link>
		<comments>http://www.jephens.com/2011/07/29/upgrading-sbs-2003-to-sbs-2011/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 23:38:26 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[migration]]></category>
		<category><![CDATA[sbs 2003]]></category>
		<category><![CDATA[sbs 2011]]></category>
		<category><![CDATA[sweating]]></category>
		<category><![CDATA[waiting]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=404</guid>
		<description><![CDATA[So, we're at a client's and we have to do a migration from SBS 2003 to SBS 2011. We're relying on Microsoft's instructions to get us through the night. It's 7:31 pm on a Friday night.  The air conditioning in the office has been turned off, so it's a bit sultry.  I prepped the source [...]]]></description>
			<content:encoded><![CDATA[<p>So, we're at a client's and we have to do a migration from SBS 2003 to SBS 2011.</p>
<p>We're relying on <a href="http://www.microsoft.com/download/en/details.aspx?id=14570">Microsoft's instructions</a> to get us through the night.</p>
<p><strong>It's 7:31 pm on a Friday night.</strong>  The air conditioning in the office has been turned off, so it's a bit sultry.  I prepped the source server last night -- just made sure its service packs and patches were up to date.  Now that I'm on site, I'm ready to make my answer file.</p>
<p>To do so, we need to install some tools from the SBS 2011 install media (which happily Dell included).</p>
<p>Sadly, the pre-requsites to using the tool don't run on Windows XP, and this is an XP shop.</p>
<p>Great.</p>
<p>However, I've got two Dell Inspiron 560s ready to be dropped down and they have Windows 7 on them, so let me unbox one and get it powered up so I can get the server migration started.</p>
<p>(I had planned on installing the workstations when the data was migrating... looks like I get a jump on it...)</p>
<p>I'll be back once I'm unboxed...</p>
<p><strong> 7:56</strong> - Machine unboxed, Facebook notified of liveblogging, OOBE completed, waiting for my desktop customizations and personal settings to be applied. Backup of source server in progress.</p>
<p><strong>8:22</strong> - Machine joined to domain, Migration Assistant installed and waiting for backup to finish...</p>
<p><strong>8:31</strong> - Backup can take 7 hours.  Uh-oh.  Wait!  The server is running in a VM!  There was a hardware failure which precipated this migration so we brought the old box back up in a VM.  (Pretty slick apart from a couple licewnsing activation gotchas.  "DRM -- Screwing the honest since 1998.") So, I can just take a snapshot and roll back if anything goes horribly wrong! Score! Back on schedule!</p>
<p><strong>8:37</strong> - Migration Assistant found some issues...</p>
<p><strong>9:08</strong> - Issues persist.  Odd ones  that aren't true - the remote registry service IS running, but the migration assistant refuses to believe it...</p>
<p><strong>9:51</strong> - Ran some more hotfixes on the server after <a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=5334">SBS BPA </a>suggested it.</p>
<p><strong>10:16</strong> - Re-read some documentation.  Last night, I read that (what I thought was) the migration assistant needed to be run on a workstation, not the server.  That does not seem to the case.  I've spent the last hour chasing down ghosts.</p>
<p><strong>10:20</strong> - Running the MA on the SBS server worked right out of the box.  FML.  Wasted all this time due to my stupid brain.  Stupid, stupid brain.</p>
<p><strong>LESSON 1: Run the Migration Tool ON THE SOURCE SERVER.</strong></p>
<p><strong>10:42</strong> - Answer file created, copied to USB key, USB key in destination server and the install is now running on the destination server.  Right out of the box, the new Dell server runs thru its little preinstall and then dumps you at a screen that says "Basic or Migration Install?"  I choose Migration, it reads the answer file like magic, and we're off to the races.</p>
<p>I created the answer file to not be unattended. I like clicking NEXT when I do my server installs - just to make sure everything is right one last time before committing.  Good thing too, since I misspelled the domain name on the credentials section of the answer file...</p>
<p>Now we wait what may be 30 minutes for Windows to expand its installation files...</p>
<p><strong>10:53</strong> - Server just rebooted itself...</p>
<p><strong>10:54</strong> - Seemed to apply some updates, back to waiting for expanding files... and in the time it took me to type this, it started rebooting again... and we wait some more...</p>
<p><strong>11:02</strong> - Finally, motion!  The bar on the screen started moving across.  I guess all the updates are done... more waiting...</p>
<p><strong>11:03</strong> - I guess it connected to the domain because a printer mapping came up and failed due to an incompatible driver... more waiting...</p>
<p><strong>11:31</strong> - 80% of the way thru the bar.  "Up to 30 minutes," indeed!"  Luckily, the new workstations (before decrapifying) have the WildTangent games on them.  They're usually the first things to go, but right now, I'm glad they're here...</p>
<p><strong>11:43</strong> - 90% of the way thru... when does the 6 hour "migrating data from old server" start?</p>
<p><strong>11:44</strong> - No sooner than I type that, then Explorer starts putting up its "Customizing Browser Customizations..." dialog, and the SBS Setup program quits with an error.  Swell.  (Looks at logs... might it have something to do with time synchronization?!?)</p>
<p><strong>12:12</strong> - Fantastic.  The source server got hung up (a backup started: <strong>LESSON TWO - STOP TASK SCHEDULER</strong>) and the clock stopped advancing, which caused Kerberos errors, and then the only way to recover is <strong>TO START OVER</strong>.  So, rebooted both servers, booted off the DVD on the destination server, reformatted the partitions and am now sitting thru the whole thing again.  Sloppy... but this is why we flat-rate server installs... my mistakes are my own and come out of my end, not the client's.</p>
<p><strong>12:41</strong> - We're back at where we were at 10:42.  Lost almost 2 hours ot the minute.  Dang.  Worst part, is I don't have a key to the building, so I'm trapped here.  Can't even go out for a bite and come back...</p>
<p><strong>1:08</strong> - Server install fails with "JoinDomain_DCPROMO Failed..." - turns out the initial failed install got as far as seizing all the roles from the other server and was already in the domain.  So, instead of trying to reverse everything I did, I just reverted to the snapshot from 8:31.</p>
<p><strong>1:22</strong> - Snapshot still had the anti-virus installed and didn't have the migration assistant run, so we're waiting for the post-AV, pre-MA reboot.  *sigh* I'll be pretty good at this when I finally get it done... tho I am ECSTATIC that the server is a VM and all it took was the snapshot to roll it back.  I don't know what I would have done (likely a clean install, then a manual migration of mail and a visit to all workstations to rejoin them to the domain) if I didn't have that capability...</p>
<p>4:19 - Been a while.  Had to give two it more tries.  Both failures.  This last time, I logged in to the domain once as the new user they want you to create to act as the migration account, and maybe that was the charm, because now -- seven hours after we started -- I can proceed to STEP FOUR of the 19 Step Migration document...</p>
<p>8:34 AM - Looked good for a while, then it didn't.  The Migration Wizard on 2011 isn't as automated as one might hope, and in my bleary eyed state, I made some missteps and by the end, nothing seemed right, so I punted.  Old server restored from snapshot and I will take another run at this soon, once I catch up on some sleep and more reading in the migration guide.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/07/29/upgrading-sbs-2003-to-sbs-2011/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Upgrading SQL Server 2008 R2 from Evaluation to Licensed</title>
		<link>http://www.jephens.com/2011/05/30/upgrading-sql-server-2008-r2-from-evaluation-to-licensed/</link>
		<comments>http://www.jephens.com/2011/05/30/upgrading-sql-server-2008-r2-from-evaluation-to-licensed/#comments</comments>
		<pubDate>Mon, 30 May 2011 14:37:12 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[evaluation]]></category>
		<category><![CDATA[installation]]></category>
		<category><![CDATA[sql server]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=398</guid>
		<description><![CDATA[As a Microsoft partner, we have access to software resources to help us do our jobs while getting ourselves familiar with the MS family of products. We had an in-house project that needed SQL Server, so we installed SQL Server 2008 R2 Enterprise in Evaluation mode, since we didn't have the product key handy. Install [...]]]></description>
			<content:encoded><![CDATA[<p>As a Microsoft partner, we have access to software resources to help us do our jobs while getting ourselves familiar with the MS family of products.</p>
<p>We had an in-house project that needed SQL Server, so we installed SQL Server 2008 R2 Enterprise in Evaluation mode, since we didn't have the product key handy.</p>
<p>Install went fine, server works great, everyone is happy.</p>
<p>170 or so days go by and we run an SSIS package and notice the warning "<strong>Evaluation Version, will expire in 8 days</strong>"  Wha?  Do a quick <em>Select @@Version</em> and sure enough, we're still running the evaluation version... in a production environment.  (Facepalm!)</p>
<p>Searching around for how to turn my eval version into a licensed version (we finally got around to requesting the key from MS) showed all sorts of solutions, none of them seemed to really fit the bill.</p>
<p>Some people admonished "You're using Eval software in a  production environment!?? Serves you right!  Uninstall/reinstall!" others required odd registry hacks to make the setup program run -- it all seemed so complex for what should be a pretty simple process.</p>
<p>Lo and behold, buried at the <a href="http://sqlblog.com/blogs/jonathan_kehayias/archive/2009/02/20/sql-server-2008-evaluation-edition-expiration-woes.aspx">very end of the comments attached to one of these complex blog posts</a>, was the simplest of solutions from a chap named Waleed Al-Qudah:</p>
<blockquote><p>"Go to Microsoft SQL Server Configuration Tools, and navigate to SQL Server installation Center then click the Maintinance link and choose Edition Upgrade."</p></blockquote>
<p>Two minutes later, we were all legal.</p>
<p>The SQL Server Installation Center is a fairly complicated looking piece of software, and I never noticed that tab nor that option.  Needless to say, I spent a few more minutes looking through it. <img src='http://www.jephens.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/05/30/upgrading-sql-server-2008-r2-from-evaluation-to-licensed/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>When FIXMAPI.EXE Doesn&#8217;t Work&#8230;</title>
		<link>http://www.jephens.com/2011/03/23/when-fixmapi-exe-doesnt-work/</link>
		<comments>http://www.jephens.com/2011/03/23/when-fixmapi-exe-doesnt-work/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 19:54:24 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[mapi]]></category>
		<category><![CDATA[outlook]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=392</guid>
		<description><![CDATA[Quick tip: Sometimes running FIXMAPI.EXE doesn't solve the "Cannot start Microsoft Office Outlook MAPI32.DLL is corrupt or the wrong version. This could have been caused by installing other messaging software. Please reinstall Outlook" error. If it doesn't work for you, try renaming the MSMAPI32.DLL file to something like MSMAPI32.OLD and then restart Outlook.  Office's file [...]]]></description>
			<content:encoded><![CDATA[<p>Quick tip: Sometimes running FIXMAPI.EXE doesn't solve the "<em>Cannot start Microsoft Office Outlook MAPI32.DLL is corrupt or the wrong version. This could have been caused by installing other messaging software. Please reinstall Outlook</em>" error. If it doesn't work for you, try renaming the MSMAPI32.DLL file to something like MSMAPI32.OLD and then restart Outlook.  Office's file protection should then copy the correct DLL into place and all would be right in the world.  It's then safe to delete the .OLD version of the file.</p>
<p>For English based systems, the MSMAPI32.DLL file is living in  %programfiles%\Common Files\system\MSMAPI\1033 folder.  Other locales  will be in a numbered folder other than 1033.</p>
<p>We ran up against this when a client got a computer with a 60 Day Trial of Office 2007 on it, but installed their corporate version of Office 2003 over it.  Uninstalling Office 2007 presented the error.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/03/23/when-fixmapi-exe-doesnt-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exchange 2003 Meeting Requests v. Exchange 2007</title>
		<link>http://www.jephens.com/2011/03/09/exchange-2003-meeting-requests-v-exchange-2007/</link>
		<comments>http://www.jephens.com/2011/03/09/exchange-2003-meeting-requests-v-exchange-2007/#comments</comments>
		<pubDate>Wed, 09 Mar 2011 09:01:07 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[calendar]]></category>
		<category><![CDATA[exchange]]></category>
		<category><![CDATA[troubleshooting]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=378</guid>
		<description><![CDATA[I've been working with a client who has been reporting emails that haven't been going through to some recipients.  He was getting frustrated because he couldn't reliably send to personal or professional contacts. He sent: More failures. This was to our accountant and my fiancée. It took two days to receive this failure notice. I [...]]]></description>
			<content:encoded><![CDATA[<p>I've been working with a client who has been reporting emails that haven't been going through to some recipients.  He was getting frustrated because he couldn't <strong>reliably</strong> send to personal or professional contacts.</p>
<p>He sent:</p>
<p style="padding-left: 30px;"><em>More failures. This was to our accountant and my fiancée. It took two days to receive this failure notice. I will forward the originals.  Have you figured out what is going on or how to fix this?</em></p>
<p>I replied:</p>
<p style="padding-left: 30px;">The NDR comes back in 48 hours because the mail server attempts to connect to the other server for 2 days.</p>
<p style="padding-left: 30px;">Email was never designed to be 100% timely, it was designed to deliver mail come hell or high water; so if there’s a problem with the server you’re trying to send to, our server tries and tries again, hoping the problem is fixed within 48 hours.  If it is not, our server stops trying, rejects the message and lets you know.</p>
<p style="padding-left: 30px;">4.4.7 errors usually indicate some issue with the recipient’s server (from: <a href="http://support.microsoft.com/kb/284204" target="_blank">http://support.microsoft.com/kb/284204</a>):</p>
<p style="padding-left: 30px;"><strong>Numeric Code:</strong> 4.4.7</p>
<p style="padding-left: 30px;"><strong>Possible Cause:</strong> The message in the queue has expired. The sending server tried to relay or deliver the message, but the action was not completed before the message expiration time occurred. This NDR may also indicate that a message header limit has been reached on a remote server or that some other protocol timeout occurred during communication with the remote server.</p>
<p style="padding-left: 30px;"><strong>Troubleshooting:</strong> This code typically indicates an issue on the receiving server. Verify the validity of the recipient address, and verify that the receiving server is configured to receive messages correctly. You may have to reduce the number of recipients in the header of the message for the host that you are receiving this NDR from. If you resend the message, it is placed in the queue again. If the receiving server is on line, the message is delivered.</p>
<p>Problem was, I didn't see where the recipient’s server was rejecting any emails in the logs; nor could I see why the message was getting hung up.</p>
<p>So, using mails to sent to his fiancee on 2/24 as a test, I found that all mails sent to her were successfully delivered EXCEPT the calendar invites / meeting requests.  So, I had to question why  that was.  Obviously, sending to that mail server wasn't the issue; the user was not blacklisted or anything, but something was getting hung up.</p>
<p>The SMTP logs didn't show anything out of the ordinary, so I figured the items were never even making it into the queue.  Using Message Tracking, we were able to verify that it never hit the queue.  It got stuck in "Message Routed and Queued For Remote Delivery"</p>
<p><a href="http://www.jephens.com/wp-content/uploads/2011/03/invites1.png"></a><a href="http://www.jephens.com/wp-content/uploads/2011/03/invites1.png"><img class="alignnone size-full wp-image-381" title="Message Tracking - Calendar Invites" src="http://www.jephens.com/wp-content/uploads/2011/03/invites1.png" alt="" width="475" height="418" /></a></p>
<p>And then two days later, the NDR was generated.</p>
<p>So, further investigation made me ask this question:  <em><strong>Are the people bouncing messages using Exchange 2007?</strong></em> I couldn't tell from one of the servers (custom SMTP banner) if it was even running Exchange, but the other said "220+domain.local+Microsoft+ESMTP+MAIL+Service+Version:+2.0 0 0 71 0 47 SMTP."</p>
<p>What made me ask this question was this <a href="http://support.microsoft.com/kb/938650">note from Microsoft</a> we turned up after some research:</p>
<p style="padding-left: 30px;"><em>Consider the following scenario. A Microsoft Exchange Server 2003 organization and a Microsoft Exchange Server 2007 organization exchange communications by using SMTP. An Exchange 2003 user organizes a meeting and then sends <strong>a meeting request</strong> to an Exchange 2007 user. Additionally, the Exchange 2007 user accepts the meeting request. Then, the meeting organizer uses Microsoft Office Outlook to send a meeting update message or a meeting cancellation message to the Exchange 2007 user.</em></p>
<p style="padding-left: 30px;"><em>In this scenario, the meeting update message or the meeting cancellation message is not delivered to the Exchange 2007 user. Instead, the meeting update message or the meeting cancellation <strong>message goes into the SMTP retry queue</strong>. If an administrator tries to open the message in the Exchange System Manager console, the administrator may receive the following error message: […]</em></p>
<p style="padding-left: 30px;"><em>After some time, the sender of the meeting update may receive the following NDR:</em></p>
<p style="padding-left: 30px;"><em>Your message did not reach some or all of the intended recipients.</em><br />
<em> Subject: test message</em><br />
<em> Sent: 8/20/2008 11:44 AM</em><br />
<em> The following recipient(s) could not be reached: user@domain.com on 8/20/2008 11:34 PM</em><br />
<em> Could not deliver the message in the time limit specified. Please retry or contact your administrator. &lt;server.domain.com <strong>#4.4.7</strong>&gt;</em></p>
<p>So, it looked promising -- the article mentioned both calendar invites and error 4.4.7 along with the message getting stuck in the queue, but the initial scenario is not quite correct (it seems to assume the Exchange 2007 recipient got the request and accepted it; something that’s not happening here).</p>
<p>The Microsoft article mentioned a hotfix, which we downloaded and applied.</p>
<p>After the hotfix was applied, I sent a test calendar entry to the client and his fiancee (whose address which was giving us a hard time) and lo and behold, the invite went through:</p>
<p><a href="http://www.jephens.com/wp-content/uploads/2011/03/invites2.png"><img class="alignnone size-full wp-image-380" title="Message Tracking - Successful Send" src="http://www.jephens.com/wp-content/uploads/2011/03/invites2.png" alt="" width="475" height="365" /></a></p>
<p>(In playing with the Message Tracker, I noticed the time was being reported an hour fast.  Turns out, there's a <a href="http://support.microsoft.com/kb/933902">hotfix for that</a>, too.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/03/09/exchange-2003-meeting-requests-v-exchange-2007/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>I&#8217;m Afraid I Can&#8217;t Do That, Dave: When Firewall Upgrades Go Wrong</title>
		<link>http://www.jephens.com/2011/02/25/im-afraid-i-cant-do-that-dave-when-firewall-upgrades-go-wrong/</link>
		<comments>http://www.jephens.com/2011/02/25/im-afraid-i-cant-do-that-dave-when-firewall-upgrades-go-wrong/#comments</comments>
		<pubDate>Fri, 25 Feb 2011 17:59:42 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[upgrading]]></category>
		<category><![CDATA[zone alarm]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=373</guid>
		<description><![CDATA[A client called this morning saying "I clicked on a security alert and now I can't get on the internet..."  Of course, my spideysense said "Ah!  Classic Malware!" However, when I got on-site, there was no malware on the machine.  A quick glance over the Autoruns turned up nothing out of the ordinary, MalwareBytes turned [...]]]></description>
			<content:encoded><![CDATA[<p>A client called this morning saying "I clicked on a security alert and now I can't get on the internet..."  Of course, my spideysense said "Ah!  Classic Malware!"</p>
<p>However, when I got on-site, there was no malware on the machine. </p>
<p>A quick glance over the Autoruns turned up nothing out of the ordinary, MalwareBytes turned up nothing, doing a <em>netsh winsock reset</em> did nothing to improve the situation... not feeling like standard malware... was this thing rootkitted?</p>
<p>But then I noticed there was an odd entry in his start menu called "ZoneAlarm!12dc_532f!erased" which had a broken link to a "ZoneAlarm Security Tutorial"</p>
<p>The client does use ZoneAlarm, and prior issues with his machine had been traced back to ZA -- most notably when a Microsoft DNS patch befuddled the firewall, forcing it to block all DNS traffic -- so I didn't rule ZA out of the equation.</p>
<p>Searching all the files on his machine which were created in the past 24 hours, turned up a file in c:\windows\internet logs called fwpktlog.txt (<strong>F</strong>ire<strong>W</strong>all <strong>P</strong>ac<strong>K</strong>e<strong>T</strong> <strong>LOG</strong> anyone?  <em>And why are we still limiting ourselves to 8.3 naming?  Does anything other than our own laziness still rely on that?</em>)</p>
<p>In this file was a whole bunch of lines denying packets from the local machine to Internet addresses.  I could still access machines on the local network, but nothing outside.</p>
<p>What created that packet filter file?</p>
<p>I looked in the services list and there was nothing for ZoneAlarm in there, but there <strong><em>was</em></strong> a entry for ForceField (ZA's browser security program) and it was running.  Stopping the service and setting it to disabled did nothing.</p>
<p><em>Open the pod bay doors, Hal! <br />
I'm afraid I can't do that, Dave.</em></p>
<p>Also, among the recently created files, I found an installer_02251175403.log file, also in the c:\windows\internet logs folder.  Opening it up, it pointed me to a temp folder it had created: C:\DOCUME~1\Steve\LOCALS~1\Temp\02251175403 within which was a bunch of files including an executable called cpes_clean.exe which is listed as "Check Point Endpoint Security Cleaner" from "Check Point Software Technologies LTD" in the file properties.</p>
<p>Going for broke, I ran the program.</p>
<p>It ate up some CPU according to Task Manager, but didn't show any sort of UI until it popped up a box asking to reboot.</p>
<p>Rebooted the machine, and lo and behold, we could access sites out on the internet.</p>
<p>Pop over to ZoneAlarm's and download the latest build, and 145MB and 15 minutes later (DSL!!!) and the download is corrupt.</p>
<p>Another 15 minute download, and ZA is happily reinstalling itself.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/02/25/im-afraid-i-cant-do-that-dave-when-firewall-upgrades-go-wrong/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The C: Drive on My SBS 2003 Box Keeps Running Out of Space</title>
		<link>http://www.jephens.com/2011/01/25/the-c-drive-on-my-sbs-2003-box-keeps-running-out-of-space/</link>
		<comments>http://www.jephens.com/2011/01/25/the-c-drive-on-my-sbs-2003-box-keeps-running-out-of-space/#comments</comments>
		<pubDate>Tue, 25 Jan 2011 17:32:10 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[disk space]]></category>
		<category><![CDATA[sbs]]></category>
		<category><![CDATA[sbs 2003]]></category>
		<category><![CDATA[small business server]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=367</guid>
		<description><![CDATA[For a while, Dell was shipping their Small Business Servers with a 12GB System partition.  While that may have seemed like a lot of space at one time, it's not amymore, and we're seeing clients' servers getting stressed out as they're pushing the limits of the partition size. Upon setting up the server, moving the [...]]]></description>
			<content:encoded><![CDATA[<p>For a while, Dell was shipping their Small Business Servers with a 12GB System partition.  While that may have seemed like a lot of space at one time, it's not amymore, and we're seeing clients' servers getting stressed out as they're pushing the limits of the partition size.</p>
<p>Upon setting up the server, moving the USERS share was always the first order of business.  Even when 12GB seemed roomy, it was obvious 15 users was going to eat their way through the share space in nothing flat, and a move to the data partition was in order.</p>
<p>The Health &amp; Monitoring server was another space hog, with its database growing out of control until it expanded, like a gas, to fill all available space.  So, a quick reinitialization of the database clears up some space...</p>
<p>But a lot of these things are quick fixes, but there's a lot of them... so it was very nice of Microsoft to bundle all of them into a single document: <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=A1D0AF69-1287-4225-BD8B-59C89F44984B&amp;displaylang=en">Moving Data Folders for Windows Small Business Server 2003</a></p>
<p>The 600k Word Document is a tremendous little cookbook! It covers just about everything:</p>
<ul>
<li>Step 1: Complete and Verify a Full Backup</li>
<li>Step 2: Notify Users that Resources will be Unavailable</li>
<li>Step 3: Move the Users Shared Folders</li>
<li>Step 4: Move the SharePoint Databases</li>
<li>Step 5: Move the Monitoring Database</li>
<li>Step 6: Move Exchange Databases and Log Files</li>
<li>Step 7: Move the Sent Faxes Folder</li>
<li>Step 8: Move the ClientApps Shared Folder</li>
</ul>
<p>Thanks, SBS Team!</p>
<p>Related Links 18</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2011/01/25/the-c-drive-on-my-sbs-2003-box-keeps-running-out-of-space/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Connecting to SQL Server 2008 via TCP/IP on Windows 2008</title>
		<link>http://www.jephens.com/2010/12/19/connecting-to-sql-server-2008-via-tcpip-on-windows-2008/</link>
		<comments>http://www.jephens.com/2010/12/19/connecting-to-sql-server-2008-via-tcpip-on-windows-2008/#comments</comments>
		<pubDate>Mon, 20 Dec 2010 02:55:16 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[sql server]]></category>
		<category><![CDATA[sql server 2008]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=360</guid>
		<description><![CDATA[Recently installed SQL Server 2008 on a Windows 2008 box and was happily adminsitering it from the console of the local server.  When I fired up SSMS (SQL Server Management Studio) from my development machine, it wouldn't connect. I turned the firewall off  and still couldn't connect. Turns out TCP/IP isn't turned on by default.  [...]]]></description>
			<content:encoded><![CDATA[<p>Recently installed SQL Server 2008 on a Windows 2008 box and was happily adminsitering it from the console of the local server.  When I fired up SSMS (SQL Server Management Studio) from my development machine, it wouldn't connect.</p>
<p>I turned the firewall off  and still couldn't connect.</p>
<p>Turns out TCP/IP isn't turned on by default.  Maybe I knew that at one time, but this time it totally slipped  my mind.</p>
<p>To turn it on, go into SQL Server Configuration Manager, expand "SQL Server Network Configuration" and change "Disabled" to "Enabled" by right-clicking on "TCP/IP" and suddenly, I could connect from my development machine.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2010/12/19/connecting-to-sql-server-2008-via-tcpip-on-windows-2008/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Back Up Microsoft Virtual Server Images&#8230;</title>
		<link>http://www.jephens.com/2010/06/30/back-up-microsoft-virtual-server-images/</link>
		<comments>http://www.jephens.com/2010/06/30/back-up-microsoft-virtual-server-images/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 20:52:51 +0000</pubDate>
		<dc:creator>Jeff Knapp</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Open File]]></category>
		<category><![CDATA[shadow Copy]]></category>
		<category><![CDATA[virtual Server]]></category>
		<category><![CDATA[vss]]></category>

		<guid isPermaLink="false">http://www.jephens.com/?p=229</guid>
		<description><![CDATA[This article first appeared at the now-closed Win32Scripting site. Since I find it useful, and my bookmark no longer works, I have been unable to reach its author, Jeff Trumbull, so I hope he doesn't mind that I've archived it. Author: Jeff Trumbull Description: Backup files that make a Microsoft virtual server with only about [...]]]></description>
			<content:encoded><![CDATA[<p>This article first appeared at the now-closed <a href="http://cwashington.netreach.net/" target="_blank">Win32Scripting</a> site. Since I find it useful, and my bookmark no longer works, I have been unable to reach its author, Jeff Trumbull, so I hope he doesn't mind that I've archived it.</p>
<p><strong>Author</strong>: Jeff Trumbull</p>
<p><strong>Description</strong>:<br />
Backup files that make a Microsoft virtual server with only about 1 minute of down time. Suspends the virtual server, takes a shadow copy , starts the virtual server then copies virtual server files. This could be used to copy any open files. Requires vshadow.exe from vss sdk.</p>
<p><strong>Script</strong>:</p>
<div class="dean_ch" style="white-space: wrap;"><span class="kw1">On</span> <span class="kw1">Error</span> <span class="kw1">Resume</span> <span class="kw1">Next</span></p>
<p><span class="kw1">Set</span> objShell = <span class="kw1">CreateObject</span> <span class="br0">&#40;</span><span class="st0">&quot;WScript.Shell&quot;</span><span class="br0">&#41;</span><br />
<span class="kw1">set</span> objFSO=<span class="kw1">CreateObject</span><span class="br0">&#40;</span><span class="st0">&quot;Scripting.FileSystemObject&quot;</span><span class="br0">&#41;</span><br />
<span class="kw1">Set</span> virtualServer = <span class="kw1">CreateObject</span><span class="br0">&#40;</span><span class="st0">&quot;VirtualServer.Application&quot;</span><span class="br0">&#41;</span><br />
DestBackupDir = <span class="st0">&quot;your backup path&quot;</span><br />
sExCmd = <span class="st0">&quot;CreateVSS.cmd&quot;</span><br />
<span class="kw1">Set</span> oFileSys = <span class="kw1">CreateObject</span><span class="br0">&#40;</span><span class="st0">&quot;Scripting.FileSystemObject&quot;</span><span class="br0">&#41;</span><br />
<span class="kw1">if</span> oFileSys.<span class="me1">FileExists</span><span class="br0">&#40;</span>sExCmd<span class="br0">&#41;</span> <span class="kw1">then</span> oFileSys.<span class="me1">DeleteFile</span><span class="br0">&#40;</span>sExCmd<span class="br0">&#41;</span><br />
<span class="kw1">set</span> oExCmd = oFileSys.<span class="me1">CreateTextFile</span><span class="br0">&#40;</span>sExCmd, CopyOverwrite<span class="br0">&#41;</span></p>
<p><span class="kw1">For</span> each objVM in virtualServer.<span class="me1">VirtualMachines</span><br />
&nbsp; &nbsp; &nbsp;<span class="co1">'See if vm machine is running. If so then do backup</span><br />
&nbsp; &nbsp; &nbsp;<span class="kw1">If</span> objVM.<span class="me1">State</span> = <span class="nu0">5</span> <span class="kw1">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">'Save state the virtual machine</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">set</span> saveTask = objVM.<span class="me1">Save</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">'Loop waiting for task completion - and display status</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="kw1">not</span> saveTask.<span class="me1">isComplete</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; WScript.<span class="me1">Sleep</span> <span class="nu0">1000</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">wend</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="co1">'Copy .VMC and .VSV files</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;MyArray = <span class="kw1">Split</span><span class="br0">&#40;</span>objVM.<span class="me1">File</span>,<span class="st0">&quot;\&quot;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Filename = MyArray<span class="br0">&#40;</span><span class="kw1">Ubound</span><span class="br0">&#40;</span>MyArray<span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;objFSO.<span class="me1">CopyFile</span> objVM.<span class="me1">File</span>,DestBackupDir &amp;amp; Filename<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;MyArray = <span class="kw1">Split</span><span class="br0">&#40;</span>objVM.<span class="me1">SavedStateFilePath</span>,<span class="st0">&quot;\&quot;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Filename = MyArray<span class="br0">&#40;</span><span class="kw1">Ubound</span><span class="br0">&#40;</span>MyArray<span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;objFSO.<span class="me1">CopyFile</span> objVM.<span class="me1">SavedStateFilePath</span>,DestBackupDir &amp;amp; Filename<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">End</span> <span class="kw1">If</span><br />
<span class="kw1">Next</span><br />
<span class="kw1">Set</span> objVM = <span class="kw1">Nothing</span></p>
<p><span class="co1">' Create Shadow copy of VM drive</span><br />
oExCmd.<span class="me1">WriteLine</span> <span class="st0">&quot;vshadow.exe -script=setvar1.cmd -p d:&quot;</span><br />
oExCmd.<span class="me1">WriteLine</span> <span class="st0">&quot;call setvar1.cmd&quot;</span><br />
oExCmd.<span class="me1">WriteLine</span> <span class="st0">&quot;vshadow.exe -el=%SHADOW_ID_1%,x:&quot;</span><br />
oExCmd.<span class="kw1">Close</span><br />
Result = objShell.<span class="me1">run</span><span class="br0">&#40;</span>sExCmd,vbMinimized, <span class="kw1">TRUE</span><span class="br0">&#41;</span></p>
<p><span class="co1">' Start VM machine up from saved state</span><br />
<span class="kw1">For</span> each objVM in virtualServer.<span class="me1">VirtualMachines</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">'See if vm machine is Saved. If so then resume</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">If</span> objVM.<span class="me1">State</span> = <span class="nu0">2</span> <span class="kw1">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="co1">'Start virtual machine</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;objVM.<span class="me1">Startup</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">End</span> <span class="kw1">If</span><br />
<span class="kw1">Next</span></p>
<p><span class="kw1">Set</span> objVM = <span class="kw1">Nothing</span><br />
WScript.<span class="me1">Sleep</span> <span class="nu0">10000</span></p>
<p><span class="kw1">If</span> Result = <span class="nu0">0</span> <span class="kw1">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="co1">'Loop through all vm machines</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">For</span> each objVM in virtualServer.<span class="me1">VirtualMachines</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">'See if vm machine is running. If so copy shadow backup of vm disk drives</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">If</span> objVM.<span class="me1">State</span> = <span class="nu0">5</span> <span class="kw1">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">'Copy virtual hard disks and undo disks</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">For</span> each vhd in objVM.<span class="me1">HardDiskConnections</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;MyArray = <span class="kw1">Split</span><span class="br0">&#40;</span>vhd.<span class="me1">undoHardDisk</span>.<span class="me1">file</span>,<span class="st0">&quot;\&quot;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Filename = MyArray<span class="br0">&#40;</span><span class="kw1">Ubound</span><span class="br0">&#40;</span>MyArray<span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SourceName = <span class="st0">&quot;x&quot;</span> &amp;amp; <span class="kw1">Right</span><span class="br0">&#40;</span>vhd.<span class="me1">undoHardDisk</span>.<span class="me1">file</span>,<span class="kw1">Len</span><span class="br0">&#40;</span>vhd.<span class="me1">undoHardDisk</span>.<span class="me1">file</span><span class="br0">&#41;</span><span class="nu0">-1</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;wscript.<span class="me1">echo</span> vhd.<span class="me1">undoHardDisk</span>.<span class="me1">file</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;wscript.<span class="me1">echo</span> SourceName<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;objFSO.<span class="me1">CopyFile</span> SourceName,DestBackupDir &amp;amp; Filename<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;MyArray = <span class="kw1">Split</span><span class="br0">&#40;</span>vhd.<span class="me1">HardDisk</span>.<span class="me1">file</span>,<span class="st0">&quot;\&quot;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Filename = MyArray<span class="br0">&#40;</span><span class="kw1">Ubound</span><span class="br0">&#40;</span>MyArray<span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SourceName = <span class="st0">&quot;x&quot;</span> &amp;amp; <span class="kw1">Right</span><span class="br0">&#40;</span>vhd.<span class="me1">HardDisk</span>.<span class="me1">file</span>,<span class="kw1">Len</span><span class="br0">&#40;</span>vhd.<span class="me1">HardDisk</span>.<span class="me1">file</span><span class="br0">&#41;</span><span class="nu0">-1</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;objFSO.<span class="me1">CopyFile</span> SourceName,DestBackupDir &amp;amp; Filename<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">Next</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">End</span> <span class="kw1">If</span><br />
&nbsp; &nbsp; &nbsp; <span class="kw1">Next</span><br />
<span class="kw1">End</span> <span class="kw1">If</span></p>
<p><span class="co1">' Shutdown all shadow copy instances</span><br />
<span class="kw1">if</span> oFileSys.<span class="me1">FileExists</span><span class="br0">&#40;</span>sExCmd<span class="br0">&#41;</span> <span class="kw1">then</span> oFileSys.<span class="me1">DeleteFile</span><span class="br0">&#40;</span>sExCmd<span class="br0">&#41;</span><br />
<span class="kw1">set</span> oExCmd = oFileSys.<span class="me1">CreateTextFile</span><span class="br0">&#40;</span>sExCmd, CopyOverwrite<span class="br0">&#41;</span><br />
oExCmd.<span class="me1">WriteLine</span> <span class="st0">&quot;Echo y | vshadow.exe -da&quot;</span><br />
oExCmd.<span class="kw1">Close</span><br />
Result = objShell.<span class="me1">run</span><span class="br0">&#40;</span>sExCmd,vbMinimized, <span class="kw1">TRUE</span><span class="br0">&#41;</span></p>
<p><span class="co1">'Script ends</span><br />
wscript.<span class="me1">echo</span> <span class="st0">&quot;done&quot;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://www.jephens.com/2010/06/30/back-up-microsoft-virtual-server-images/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

