Can’t Create File – Outlook Error, and a the Fix

 

I have been seeing this message on and off with attachments for some time now in outlook:
Can’t Create file: VoiceMessage.wav. Right-Click the folder you want to create the file in, and then click properties on the shortcut menu to check your permissions for the folder

In my case the person having the problem was trying to bring up Word Document located in an Exchange shared public folder. It looked like a duplicate file problem but a file search did not show up any duplicates. I even told it to search through hidden files and folders. So I went to the Internet and found the solution you can read by following the link below. Lo and behold we had a 100 copies in the OutlookSecureTempFolder. You can find the folder location by looking in:

HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Security

Can’t Create File – Outlook Error, and a the Fix

Fixing store.exe process is allocating more memory than usual

Sometimes I forget how I fixed problems in the past and this error is an example. In my case the fix was simple. I followed the instructions in http://support.microsoft.com/kb/867628 and increased the threshold from 104857600 to 704857600. I made an educated guess at this value.

Tips, Tricks, and Advice from the SQL Server Query Processing Team : Understanding SQL Server Fast_Forward Server Cursors

Here’s a big thank you to Marc for this post on Fast_Forward Cursors. I happened to be debugging a performance problem with a SQL2000 stored procedure today. We have a stored procedure we use to release back orders and it was timing out. When I looked at the execution plan, SQL was using the date index rather than our order status/date index with the query.  Since SQL was using the date index, it had to read every order to determine the order status. When I added the FAST_FORWARD parameter to the CURSOR, it used the order status index with the query and the I/O cost dropped from 1119 down to .228.

Tips, Tricks, and Advice from the SQL Server Query Processing Team : Understanding SQL Server Fast_Forward Server Cursors

Windows Vista cannot obtain an IP address from certain routers or from certain non-Microsoft DHCP servers

 

Consider the following scenario:

  • You connect a Windows Vista-based computer to a network.
  • A router or other device that is configured as a Dynamic Host Configuration Protocol (DHCP) server is configured on the network.
  • The router or the other device does not support the DHCP BROADCAST flag.

In this scenario, Windows Vista cannot obtain an IP address.

Consider the following scenario:

  • You just bought your son a new Toshiba tablet with Vista Business pre-installed on it. You want to make sure that when the tablet goes off to school it has all critical patches applied.
  • You are using pfSense as a DHCP server.
  • The XP, Linux, and Windows 7 computers are able to connect to the network and get an IP address.

You would have thought DHCP problems were solved twenty years ago but here is the solution.

Windows Vista cannot obtain an IP address from certain routers or from certain non-Microsoft DHCP servers

Notes on a SBS Disaster Recovery

On the last Friday of June I came into the office and found myself confronted with one of the more unique disaster recovery scenarios I have ever encountered. The primary symptom was that no one could get to their email. The cable modem and the router attached to it looked like they were turned off. Turning the power on got the lights to blink for only a few seconds before they went off. Our Small Business Server server appeared to be working but the lights on the LAN adapters in the back were off. Even when we inserted a known good LAN connection the lights would not come on. I rebooted the server and it stopped seeing the disk drive array. It was about that time I noticed the aroma of burnt insulation. Ah! The smell of burnt insulation in the morning! The cable modem, router, and server were fried. During the night the RoadRunner cable serving us must have been hit by lightning.

It is not surprising that we were not prepared for this disaster recovery scenario. Here are my notes on how we recovered our original server and migrated it to a new server.

  1. Probably one of the more interesting aspects of this disaster recovery story was that I took half of a mirrored drive pair and used it to create a Virtual Server of the SBS server. Since our development server(HP DL380) is similar to the server(HP DL360) that got fried, I was able to put the mirrored drive into the development server chassis. Everything on the drive looked good except for Exchange partition. The Exchange partition was missing. The lightning strike occurred during our backups, so our backups were not complete. We were looking at losing Thursday’s email. Since the development server had sufficient processing power and disk space, I decided to see if we could bring up the Small Business Server as a Virtual Machine. Using a virtualized server could allow our office to be fully operational  while we worked on getting a new server delivered. It looked like a fast way to recover the Active Directory and the office email. So I gave VMware vCenter Converter a try and I was amazed that the Small Business Server came up with only minor errors. The Exchange software complained that it could not find the Exchange partition and the HP diagnostic software complained about the hardware. Other than those problems the active directory, print queues, and the fax server were all operational.
  2. The good news was that I had a virtual server running. The bad news was having problems recovering Exchange. The backup located on an external USB drive was restoring with errors. The first time I tried to restore Exchange I got a file corruption problem. This probably was due to USB problems with virtual servers. The next morning I decided to try something different. I downloaded some partition recovery software off of the Internet and to my surprise it found the partition on the mirrored drive. Using the EASEUS Data Recovery Wizard, I was able to recover the Exchange partition. The database had some integrity problems but it looked promising. So I followed this article, Using the Exchange tools ISINTEG and ESEUTIL to Ensure the Health of your Information Store, to repair the Exchange database. My final trick to getting Exchange to mount was to delete the Exchange log files. A little bit more than 24 hours after the lightning strike, our Small Business Server was operational and we had not lost any emails.
  3. About a week later we had a “new” server delivered. Actually it was an old server we got off of eBay but it was identical to the server that had failed. Although it was tempting to leave the SBS server in virtualized form, we opted to install the server natively using the SBS Migration procedure. In this case both our SourceDC server and the MigrationDC server were virtualized servers.The first time I tried the SBSMigration procedure I failed. It took me awhile to figure out why but the SYSVOL share was not getting created on the MigrationDC. I traced the problem back to a communication configuration problem. The DNS parameter on the LAN adapter configuration for the SourceDC was pointing at the office router rather than itself. Although normal communications with the server appeared to be working fine, the active directory communications with the backup domain controller was not working. The domain controller could not find itself. ;(  After I changed the DNS parameter the domain communications and file replications worked correctly. As Jeff Middleton reminded me, a good indication that the backup Domain Controller is working properly occurs when the SYSVOL share is created on the MigrationDC sever.
  4. My next mistake was installing the Exchange database to a new drive letter. Exchange is very finicky about this. I had to “repair” Exchange to get it to recognize the database at the new location. It was after I had started the repair operation that I figured out how long the repair was going to take. I ended up running the repair overnight. In hindsight we would have been up and running much earlier if I restored it to its original drive letter location and moved it to a new drive letter at a later time.
  5. My final mistake was made when I upgraded the NewDC to Windows 2003 SP2 before completing the SBS installation. I had to uninstall SP2 and install SP1 before I complete the SBS installation.

Adventures with iRedMail – Part II

In the first installment of Adventures with iRedMail I got it to send emails but I left the MS Exchange integration for another day. Since then I have updated my DNS zone with the DKIM information, set up local DNS information, decided on naming standards, and reconfigured Postfix several times before I got it right.

Updating the DNS with DKIM information

This task was relatively easy. I copied the DKIM information in the iRedMail.tips into a trouble ticket with my web provider. About 24 hours later it was ready to test. I sent an emails to my Yahoo account, sa-test@sendmail.net, and autorespond+dkim@dk.elandsys.com. Although the email from dk.elandsys.com was the first to respond, it said it did not work. When I checked my Yahoo account the headers said the email was signed correctly with DKIM. Ironically the return email from sendmail.net ended up in my Junk Mail folder. It said that everything worked correctly. For one more test I created a Gmail account and sent an email to it, too. It said the email was signed correctly.

Local DNS, naming standards, and more Postfix problems

The next challenge was to configure Postfix to accept both local email addresses and email addresses for the exchange server under the same domain. I used PostFixAdmin to create Aliases that pointed to the Exchange server emails(e. g. myemail@mybusiness.com points to myemail@mybusiness.local). PostFix complained about the DNS records for my Exchange server so I added mybusiness.local as a relay_domain and set up a psuedo DNS so that PostFix can find the IP address for my Exchange server. In my case I decided to let my pfSense firewall act as a local DNS server to serve up the local IP addresses. At this point I can email to everyone from a local iRedMail account but I cannot get replies until I set up iRedMail as the SMTP gateway and the Exchange server as a relay domain.

PostFix domain checks get me again!

It took me a long time to figure this out. When I changed the firewall to redirect SMTP traffic to the PostFix gateway I could not get any mail. I thought I had messed up the firewall settings so I kept trying different settings. I was pretty limited with my testing tools. If I could Telnet into port 25 I could see what is happening but I could not make the connection work as long as I was located on this side of the firewall. Fortunately I found a solution on the Internet. The dnsqueries.com site provides a page, http://www.dnsqueries.com/en/smtp_test_check.php, that allows me to check my local SMTP connection using their server.  Within minutes I figured out that my email server did not like my sender’s domain. In fact it did not like anyone’s domain. This was the same type of problem I had with the Postfix recipient domain check, so I removed the sender domain check and the emails starting flowing.

What have I achieved?

  • I have a gateway that checks all incoming mail for spam and viruses. Postini offers a similar service for about $1 per user per month. We use MXLogic at work.
  • I have an alternate email server that allows me to send email that passes the SPF and DKIM checks. One of the reasons I investigated iRedMail was to use it for sending out a newsletter at work. Like many Internet retailers we get a chunk of our business as a result of our biweekly newsletter. In our case DKIM is another piece of the puzzle to improve our sender reputation. Since both Yahoo and Gmail require DKIM signing in order to set up feedback loops, DKIM is probably essential if you have ambitions of having a pristine email list. For those folks looking at ways to cut the umbilical cord to Microsoft this is one of several low cost, low maintenance migration alternatives to a local Exchange server.

Adventures with iRedMail

I read this article on HowtoForge and decided to give it a try. I was not as successful as the author.

iRedMail: Full-Featured Mail Server With LDAP, Postfix, RoundCube, Dovecot, ClamAV, DKIM, SPF On CentOS 5.x Debian (Lenny) 5.0.1

iRedMail is a shell script that lets you quickly deploy a full-featured mail solution in less than 2 minutes on CentOS 5.x and Debian (Lenny) 5.0.1 (it supports both i386 and x86_64).

iRedMail: Build A Full-Featured Mail Server With LDAP, Postfix, RoundCube, Dovecot, ClamAV,SpamAssassin, DKIM, SPF On CentOS 5.x | HowtoForge – Linux Howtos and Tutorials

My first try was to use the script to update a Centos 5.3 workstation installation. It went smoothly until I tried to update look at the keys used by DKIM. I ran into trouble with the LDAP option. OpenLDAP would not install do to a missing file. So I took the Mysql option. That was when I found a series or problems. Most of the problems were minor. My initial mail userid used Chinese. Since I was particularly interested in DKIM I was disappointed to find out that Amavisd was running at a version that did not support DKIM. I quickly realized that this was taking too much time and a better solution was to install a virtual machine using the iRedOS. This is a Centos 5 installation with all of the prerequisites already installed.

Creating a virtual machine mail server went pretty smoothly. The only problem I found with the installation was that I was unable to send mail. I quickly realized that I needed to install Webmin so I could perform normal system maintenance and troubleshoot. After I installed Webmin I found my problem. Postfix thought Yahoo was an unknown domain. Although I am not familiar with intricacies of Postfix I found that if I removed the configuration parameter “reject_unknown_recipient_domain” I could send emails successfully. This is a not a fix but it will work for me until I figure out the problem between the DNS and Postfix.

My next trick is to set up the mail server as a mail relay to my Exchange server. Technically this could be a first step in migrating off of Exchange to a non-Microsoft cloud computing environment. There are a lot of good things to be said about Exchange but there are even more good things to say about cloud-based email. Making the transition to a low cost, highly dependable, feature rich email environment with the least amount of pain is the challenge for both the Microsoft and open source communities.

Getting McAfee to work behind an ISA 2004 Firewall

It has been a long time since I actively worked with Microsoft’s ISA Firewall so it took me some time to fix this problem. Buy.com periodically offers a 3 computer version of McAfee at a very cheap price. Since I am somewhat ambivalent about the merits of one virus checking software over another, I bought a copy to replace a TrendMicro version up for renewal. The installation did not flag any errors or warnings so it took about a week before I noticed that the patterns had not updated. Yesterday I decided to fix the problem and write down for posterity how I accomplished it.

Unlike many firewalls Microsoft’s firewall typically restricts anonymous access. This typically is not a problem for most applications that run on Windows computers since the users are logged into the Active Domain. Occasionally there are applications that fail to connect to the internet despite the user being logged into the domain. Most of the time you need to open some non-standard ports to fix the problem. In this case McAfee is using standard HTTP and HTTPS ports and still failing to connect.

The solution is to create an anonymous access rule to the McAfee update site and to configure the client to not use the ISA Firewall client for these sites. One way to accomplish this  is to configure Internet explorer(Tools-Internet Options-Connections-Lan settings-Advanced) to not use the proxy. This is the way I got McAfee to update. Another way is to configure the properties for the internal network in ISA to use direct access for these sites. You can configure a GPO, too.

Welcome to Windows 7

Last weekend I took the plunge and installed Windows 7 RC. The hardest part was freeing up some disk space and partitioning the hard drive. After a few defrag runs I was ready to partition. Dual booting is the way to go. There are no special tricks. Just let Windows 7 install in the unpartitioned space. The installation was pretty uneventful. My laptop is about three years old, it has 2 GB of ram, and it passed the Windows 7 compatibility check. The installation found drivers for everything although it had to get the Ricoh drivers off of the Internet.

The part I was most interested in was what would I install first. The first four programs were were the virus checking software, FeedDemon, Windows Live Writer, and Flash. I chose a trial version of AVG available at http://free.avg.com/download-avg-anti-virus-free-edition. I like AVG but it triggers a PC issue message in Windows 7. I guess AVG and Windows have a few things to work out. It did not take to long after running FeedDemon that I ran into a web page requiring Flash. When I decided to write a post about my Windows 7 experience I installed Windows Live Writer. To setup Windows Live Writer I needed KeePass since that is where I store my passwords.

To transfer files from Window XP into Windows 7 I am using two methods. With the first method I created a shared folder at the root of the Windows 7 drive and copied files into the folder using XP. I could not browse the XP version of the “My Documents” folder using Window 7  and was not into the “take ownership” thing. The second method uses Dropbox.

So far my experience has been very positive. The interface is nice and the computer seems as fast as it was under XP. I think Microsoft has a winner if they price it right. The interface of Linux and the Mac are nice, too!

In and Out of Bluetooth Hell

This all started out when I noticed that I had left my Blackberry USB cable at work. Since the Blackberry USB is pretty unique I would have to go find my Blackberry charger to charge my phone. That got me to thinking that this might be a good time to setup my WiFi and Bluetooth connections. Setting up the WiFi connection was simple and uneventful. Now I have faster web browsing on my phone while I am in my house. Setting up the Bluetooth connection was not that easy.

Shortly after I purchased my laptop three years ago I decided to add a bluetooth card. My thought at the time was to use a bluetooth headset for VoIP phone calls. The VoIP project did not work out so I turned off  the bluetooth card. What I remember of that work was that I had to install the Toshiba bluetooth stack to make the bluetooth connection work. I do not remember ever getting the Microsoft bluetooth software to pair up with the bluetooth device.

So I go into the Toshiba software and turn on the bluetooth card. Within about five minutes I have my Blackberry 8900 paired up with my laptop. Everything looks so slick! I have visions of a tethered laptop. One last test remains. I cranked up the Desktop Manager and started the bluetooth configuration. Lo and behold, the Desktop manager cannot find a bluetooth device! I’ve got a paired device. What do you mean you cannot see it?

After some research I find out that those fine folks at RIM only work with the Microsoft bluetooth stack. Well that sucks! So I removed the Toshiba stack and rebooted. After it finishes rebooting, I try to pair up. The Microsoft software cannot find any bluetooth device. I seem to remember being in this position once before.

After a little more research I find this post, BostonPocketPC – Remove Toshiba Bluetooth Drivers and Install Microsoft Bluetooth Stack. Although I do not use the Vista operating system, the author implied that there were new bluetooth drivers from Microsoft and the easiest way to install them was to install a recent version of Intellipoint. I installed Intellipoint and nothing changed. The drivers still had a 2-001 date. It looks like I am still using the old drivers. So I deleted the existing bluetooth device configuration in the Device Manager, turned off my WiFi and bluetooth(Fn F2), and rebooted. When XP rebooted it found the bluetooth card and installed the new drivers. Although my phone could not be found using the normal bluetooth(PAN) search, it was found using the control panel version. My Blackberry 8900 is evidently an “other” bluetooth device. Within a few minutes I was paired up and synchronizing my contacts. I am still a little miffed that I cannot manage my media files but it works for basic synchronization. I suspect that is on the ToDo list for the developers at RIM. Wow, that took a lot longer than I expected!

Correction 4/26/09

This morning I checked the bluetooth synchronization again and the Microsoft stack does not pair up. I guess I am going back to the Toshiba stack. At least it works as a modem!

Picks and Pans

PrtScr

PrtScr about - Windows Internet ExplorerI was just about to pan PrtScr until shortly after I installed it I wanted to add a copy of an embedded Flash animated graphic. Foolish me! My first choice was to make a PDF of the web page. It turned out to be a terrible choice.  The original chart had subtle shades of red. The PDF had one big blob of red. Score one for PrtScr. Selecting a rectangular area was a bit of a challenge on my laptop. I had to press on the Ctrl Key and the left mouse button while marking the area. I wish I could remap the PrtScr keys. Snag_It appears to be the favorite but it costs money.

Quotepad

quotepad I thought I would have an immediate use for Quotepad. It looks promsing. I use Cut-and-Paste often at work but I have not used QuotePad yet beyond the initial trial. Keeping Clipboard history is a favorite requested feature for a lot of users and there are a lot of competitors in this area.

uSbuntu

I found uSbuntu on HowtoForge and it looked promising, too. A bootable Ubuntu that could also work under Windows. Too bad I was not able to get it to boot under Windows. It kept complaining about memory problems. Portable VirtualBox looked promising at first because it is so slim compared to VMServer. Too bad I never got it to boot completely.

 

Portable Ubuntu

I found Portable Ubuntu on Lifehacker. Portable Ubuntu installed with a minimum of problems. It was easy to install and in my limited testing, it worked without a fuss. My biggest problem is that I really don’t have a real use for Ubuntu. One of the areas Linux excels in is network testing. Backtrack3 is my favorite in this area but I have to reboot. So as an extra test I decided to install a Nmap variant called knamp. It installed and it worked. Not bad!

Top free tools for Windows server administration

Every so often you find a tool you have never heard of.  This week the tool that caught my attention was  Performance Analysis of Logs (PAL). It was recommended by Bruce Mackenzie-Low in a newsletter from SearchWindowsServer.com and it looks it will be helpful with the “art” of performance analysis. I played with it a little bit using the IIS and SQL templates. It seemed to provide some helpful insight into potential performance issues. My aim is to analyze our web server for IIS and database bottlenecks.

pfSense 1.2.2 Upgrade

Last year I finally got around to installing pfSense 1.2 and some packages. Last week I decided to upgrade to the latest release. I chose to use the command line version of the upgrade process and it worked great at updating the base package. The upgrade documentation is a little fuzzy about updating the packages. When I logged into the administrative panel the firewall started to upgrade the packages. That kind of worked but most of the packages I checked were not working after the upgrade. I tried to manually update or uninstall SNORT but it ignored me. So I rebooted the firewall.

As the firewall came up the second time, it upgraded SNORT. After logging into the administrative panel again, I saw that NMAP worked. Okay, that’s a step forward. Next I tried NTOP but the screen would not come up. Thinking it might have forgotten the configuration settings, I configured NTOP. It worked. Next I installed Open-VM-Tools since I run my firewall as virtual machine. Finally I tried SNORT. I could configure it but it still had problems downloading rules. This was the problem I had previously under 1.2 so I uninstalled SNORT. Everything seems to be working so it is probably safe to forget it for a couple more months.

Portable Ubuntu Runs Ubuntu Inside Windows [Downloads]

I gave the Portable Ubuntu program a run today. I manually extracted the files using 7Zip since the executable had an error when it extracted the files. Then it took about three runs before my firewall, Comodo, and I agreed on the executables to unblock. I did get Portable Ubuntu to burp and stick my PC with a task using 50% of the CPU. Restarting Portable Ubuntu fixed that problem. Other than the burp, the performance was adequate. The biggest problem is I am not sure what I would use it for. A Portable BackTrack 3 might be more interesting since it has Linux applications I am interested in using occasionally.

Windows only: Free application Portable Ubuntu for Windows runs an entire Linux operating system as a Windows application. As if that weren’t cool enough, it’s portable, so you can carry it on your…

Portable Ubuntu Runs Ubuntu Inside Windows [Downloads]
Kevin Purdy
Fri, 03 Apr 2009 22:00:00 GMT

IE8 Compatibility Problem Solved!

I fixed the IE8 Compatibility Problem I talked about previously. The login screen was missing some of the most basic HTML tags. I have seen several early ASP files that ignored the basic HTML tags and page structure. Since the page worked with the current browsers there was no need to fix it even though it had HTML validation errors. I am not sure which missing tag caused the problem but adding the <html>, <head>, and <body> tags fixed the problem.  😉

Script all data of a table – SQLServerCentral

I made a couple of minor changes to the provided script and I got Script all data of a table – SQLServerCentral to work with SQL 2000. I like the idea of creating scripts to transfer/update/re-create tables. I have been using Excel to create scripts to update shipping costs for some time. Nice work Florian!

Downloads: DropboxPortable Syncs Files to Your Thumb Drive

Windows only: Free application DropboxPortable makes the popular file-syncing application thumb-drive friendly, so you can access your synced bucket from your thumb drive no matter what computer you’re using.

Downloads: DropboxPortable Syncs Files to Your Thumb Drive

I finally gave this program a test run and I was pleased with the results. Recently I split up my KeePass password database into three databases, work, charity work, and personal. I kept a copy of the files on a USB dongle so I could deal with the occasional emergency at work or at home.  I used SyncToy to keep the files  synchronized but I have screwed up on more than one occasion and updated the passwords in two locations without synchronizing first. DropBox has the potential to eliminate that problem. I am slightly uncomfortable with storing a strongly encrypted password file in the cloud but I am pretty sure there are much easier ways of getting my passwords than cracking this encryption scheme.

IE8 Compatibility Problem

I have been pretty busy this year with a move to a new warehouse so I did not get around to checking IE8 out until last week. So I installed the released version of IE8 for a quick checkout. It is scheduled to go on automatic updates in late April. The first screen I tried failed. All I got was a blank screen. No error messages at all! We use this screen to login to the administrative side of our web site. It is a classic ASP page with HTML validation issues that was written long before I got here. I tried to quickly fix the HTML validation errors but ASP barfed up some cryptic error codes with the HTML fixes I tried. So I am leaving this nugget for next week while I work on the issues my boss is most concerned about. Since I am old, I have a few rules about computer programming maintenance that keeps management happy with me.

  • Rule #1 – Don’t fix things that are not broken.
  • Rule #2 – Don’t fix things that they do not ask you to fix.

Until last week both of these rules applied.

My New Cell Phone is a Blackberry 8900

blackberry8900A week ago my old cell phone, Blackberry 7100 died. It would no longer boot. Although I was interested in the iPhone and Android the biggest features I use other than the phone features are the email and web browsing. After using the 7100 for several years the feature I yearned for than anything else was a full keyboard. It is really painful to reply to email and surf the web without a full keyboard. The keyboard issue dropped the iPhone out of the mix. Of the phones with a full keyboard, the Blackberry 8900 was the safer choice for a Blackberry user. Due to contract complications that the store could not resolve, I had to order my phone directly from T-Mobile. So I put my SIM chip in an old Nokia I had forgotten to recycle and ran as a regular cell phone for a week. Last Friday I finally received the phone and synchronized it with Outlook. That was good timing since I had to make an unscheduled out of town trip on Saturday. My father died. He had been in the hospital for over a year battling MRSA. He won that battle with MRSA but he lost the war. This week the rest of his organs started failing.  By the time I got on the road the diagnosis was that he would not see another sun rise. The hospital had given him a sedative to make him more comfortable. He died before I got there. When I got to my parents house my nephew was still trying to hack into my mom’s wireless router. She had recently gotten broadband access and did not remember anyone giving her the passphrase. I quickly read my email to make sure that nothing bad was happening and then got back to the real meaning of the trip.

Recovering from registry 51 error

For the last couple of months I have been trying to fix an old ThinkPad that failed on us. It was a low priority item but we were pretty sure we would need it fixed eventually. In an unfortunate sequence of events the battery ran down, the LCD failed, and the disk/registry got corrupted. Under most circumstances we would buy a new laptop and re-install the necessary programs. In this case we pretty sure there were some custom programs on the laptop we would need in the future. I had a backup of the data but I did not have a plan for re-installing the custom programs. Frankly none of us knew what programs we needed to save.

With the beginning of the new year I was informed that one of the custom programs that existed only on the laptop was a custom interface to QuickBooks and a SQL database. It was used in reconciling annual inventory and we needed to reconcile the inventory for tax purposes. The Boss had been thinking ahead and bought an almost identical ThinkPad laptop off of eBay. The plan was to take the old disk drive and put it in the newly acquired laptop. So I made an image copy of the drive, inserted the drive into the laptop, and then booted the laptop. Within a short period of time I was looking at a BSOD, Registry Error. So I tried to repair the installation using the XP installation disk. I surprised when it gave me a BSOD, too. Since re-installing the programs was an option we did not want to pursue at this time, I went searching for a way to repair the corrupted registry. I found this Microsoft Knowledge Base article, How to recover from a corrupted registry that prevents Windows XP from starting.

I had never seen this KB. Over the years I had almost no success going back to the last known good configuration so I was game. I followed the instructions and restored to an old system restore point. When I booted all of the installed programs worked as expected! This would have been the end to the story but after the laptop was running for awhile I started getting BSODs with a PFN_LIST_CORRUPT error message. A quick search of the Internet said this error was frequently associated to memory errors so I booted off my copy of the Ultimate Book CD for Windows and ran Memtest86. Sure enough, I got a bunch of memory error messages. I tried to swap out the memory but I kept getting memory error messages. This was not good! This laptop was bought to fix problems not replace old problems with new problems. In a strange turn of events I finally solved this problem by taking the drive out, putting it back into the old laptop, and hooking up a spare monitor to the laptop. It is not the way we wanted to run the system but it works. Hopefully we will finally migrate all of the important stuff off before we need to use it again.