[vcf-midatlantic] OT: XP p to v

mark at markesystems.com mark at markesystems.com
Mon Dec 21 20:47:59 EST 2020

From: Kelly Leavitt <kelly at catcorner.org>
> Good afternoon all,
> This is Kelly from the vcfed. I was wondering if anyone had experience in
> converting physical machines to run in a virtual environment. It just
> seems like a skill I can find in this group.
> I'm trying to help a friend convert an old XP machine that runs custom USB
> hardware into a virtual environment so he can keep using his equipment.
> I have it running under VMWare, but it's not 100% stable. I get BSOD on
> shutdown about 50% of the time and about 10% of the time on system
> startup. I've removed all drivers for old non-needed equipment, did a
> repair XP install, installed the guest applications for XP and disabled
> sound and graphics acceleration already.

I've been using VirtualBox to host an XP machine for some time, including
some limited USB pass-through (serial ports, but actually passing the USB
through to the XP and installing the FTDI driver there).  It has been
unconditionally stable, and I find that the performance is fine also.  In
fact, when my ancient (2003) version of SolidWorks stopped working on Win-10
after a recent update, I installed it on the Virtual XP machine, and not
only does it run fine there, it's also about 50% faster!

So, you might give VirtualBox a try (install the "Guest Additions CD" too),
and I'd definitely try to figure out how to do a clean install of XP.
Perhaps you could run the current flawed version enough to extract the
user's software and various drivers; here's a little batch file that should
grab the drivers:

cd “%homepath%\my documents”
md DriverBackUp
cd DriverBackUp
xcopy %windir%\system32\Drivers /r /y
xcopy %windir%\system32\DriverStore /r /y
xcopy %windir%\inf /r /y

In some cases drivers may need some registry tweaks or other dlls, and must
be installed using the manufacturer's original installer, but very often
just pointing Windows to the DriverBackUp (or whatever you called it)
directory when installing the hardware on the new machine will work just
fine.  You can use Dependency Walker (dependencywalker.com) to find any
referenced dlls; if you find any, you'll need to manually copy them to the
right place on the new system, then use regsvr32 to register them so that XP
can resolve any references to them.

As far as moving the (presumably custom) software application to a new
machine, that can range from easy (copy the executable) to impossible (the
creator put things in non-standard places, and/or has a zillion widely
scattered registry entries).  I've had some success copying the executable
and its whole directory (C:\Program Files\<whatever>), then using Dependency
Walker to find dlls, ocxs, etc. it may have stashed in other places (like
Windows\System32).  Hopefully a search of the registry using the
applications name (or a substring of it) will reveal at least some of the
registry entries, and perhaps provide clues to where other might be lurking.
Note that you'll need to register ocxs as well as dlls, if you find any.

You mentioned that the budget didn't extend to a "new" XP machine; consider
that you could easily spend a day tinkering with this, and how much your
time is worth...
Mark Moulding 

More information about the vcf-midatlantic mailing list