You’ve just converted a physical 64 bit Windows server or workstation to a VM using VMWare converter. You’re excited because you’re rebooting for the first time when, OH SNAP blue screen! If you’re one of the (probably two, maybe 3) people like me who have been struck by this issue you are not alone, I am here to help!
First it is important to make sure that we are referring to the same issue.
-You have converted a physical 64 bit Windows machine to a VM using VMWare.
-You have started the Virtual Machine in VMWare Server
-The Virtual Machine is continually giving you the blue screen of death with “0x0000007B”
If you answered yes to the previous questions than we’re going to turn the blue screen of death, into the blue screen of life my friends.
Its your lucky day!
The only reason I wrote this article is because I had this exact same issue in this exact same scenario, and it literally took me a week to get it resolved.
So now you benefit from my malaise.
Before we begin, I would like to stress how not responsible I am if you lose data, or if something goes a little awry and something doesn’t work out for you because of this guide, and besides I did my best and its not nice to pick on people who are really trying.
Anyhow, we will need a few things to get this show on the road.
–A recent BartPE CD (See my Article on creating a BartPE CD here)
–A backup of your Virtual Machine
–Simply copy the directory that your Virtual Machine is stored in to another location. (That way if something gets totally blown up you can try again!)
–A decent soundtrack (optional, but helpful)
So now that we have assembled all of our parts and you are jamming away to Dragonforce or Neil Diamond (or a mash-up your brother-in-law made of both), we can begin!
Introduction —
– If you still have the .ISO file for your BartPE disc, create a new CD-ROM drive entry in your “Broken Virtual Machine” pointing to that ISO file.
OR
– if you do not still have the .ISO file for your BartPE disc, put the CD in your physical CD-ROM drive on the VMWare host machine.
– Ensure that your “Broken Virtual Machine” is set to use the physical CD-ROM drive on the VMWare host machine.
– Start “Broken Virtual Machine”
– After starting “Broken Virtual Machine” You should be presented with the VMWare BIOS, hit ESC to bring up the BOOT menu.
– SELECT the CD-ROM option and press ENTER
– If everything goes correctly you should be presented with a BartPE splash screen.
–If you are not presented with a BartPE splash screen, try check the settings for “Broken Virtual Machine” to ensure that the CD-ROM drive is set to be connected.
– After BartPE loads, you should see its wicked cool splash screen (Warp speeeeeed!) at this point we are ready to dig in to this guide.
Anything which is lost can be found —
– The problem, which has been very vaguely described and documented (no less) is that for whatever reason 64 Bit versions of Windows do not by default have the symmpi driver.
– The way we fix this is in three steps.
–First, we find out how broken “Broken Virtual Machine” is.
–Second, we fix “Broken Virtual Machine”
–Third, we apologize to it for calling it “Broken Virtual Machine” upwards of 30 times in this guide and buy it a beer.
Broken to a degree you say?
Well, um. Yes.
Sometimes, the registry keys are there but the actual driver files are not. Other times. both the registry keys. and the driver files are there but the service is not set to start on boot.
So we just need to figure out how broken “Broken Virtual Machine” is.
First I will make a list of what should be there, and then we will work backwards to add anything which is missing, sound good? here we go!
In order for VMWare to work on a Windows System it needs a driver called SYMMPI to be present, for some reason by default the 64 Bit versions of Windows this driver is not present.
–The file must be present in:
C:\WINDOWS\SYSTEM32\DRIVERS\SYMMPI.SYS
–A Registry Key:
“pci#ven_1000&dev_0030″ must exist in HKEY_LOCAL_MACHINE -> SYSTEM -> ControlSet001 -> Control -> CriticalDeviceDatabase and be configured properly.
–A Registry Key:
“symmpi” must exist in HKEY_LOCAL_MACHINE -> SYSTEM -> ControlSet001 -> Services must exist and be configured properly.
First we check to see if C:\WINDOWS\SYSTEM32\DRIVERS\SYMMPI.SYS exists on your boot drive. I am assuming your boot drive is C: and your Windows installation directory is C:\WINDOWS.
|
–Make sure that this looks like the C:\ drive on “Broken Virtual Machine”
–if you see a C:\Windows or C:\WINNT folder than most likely this is your boot drive if not, try and figure out your boot drive by trying different things.
–Try and remember where you installed Windows, usually it is C:\WINDOWS or C:\WINNT we will assume your installation path is C:\WINDOWS
|
if the file is there, you’re in luck! if not, we will have to find you a copy but don’t worry just yet, it is not too difficult to find usually.
— If you have symmpi.sys move on to the next step.
OR
— if you do not have symmpi.sys stick around for a moment.
— Many times OEM vendors or folks who build their own PCs know to copy the contents of the Windows installation CD to some obscure location on the hard disk, we’re hoping this is the case!
— Lets see if we can get lucky.
|
– If it turns out that you have a copy of SYMMPI.SY_ on your computer, note the location, in the case above its C:\AMD64
|
I will assume that the SYMMPI.SYS file is now in c:\windows\system32\drivers\SYMMPI.SYS
——–
Now we are ready to muck around in the registry
Now is about the time where I really hope you took my advice and made a backup of “Broken Virtual Machine”.
–pci#ven_1000&dev_0030
–type H: and press ENTER
–type regedit and press ENTER
–You should be presented with regedit (hope you backed up your VM… da da da..)
As you are currently viewing the Windows registry for your Live CD environment and that is just next to useless, we’re going to load a different hive.
–Click on HKEY_LOCAL_MACHINE, then click on FILE -> Load Hive
–Navigate to your boot drive (C:) and then to C:\WINDOWS\SYSTEM32\CONFIG
–Double-click on system, it will present you with a dialog box asking what to name the new hive call it something such as SYSTEM2 (it doesn’t really matter)
–SYSTEM2 is the actual system hive for “Broken Virtual Machine”, neat huh?
A word about regedit in BartPE for whatever reason I would say 60% of the time I tried to load this hive regedit would close, if you try it enough times it will actually work.
–expand SYSTEM2 -> ControlSet001 -> Control -> CriticalDeviceDatabase
–Look for a key called pci#ven_1000&dev_0030
–if you have a key called pci#ven_1000&dev_0030
–click on pci#ven_1000&dev_0030
–There should be two strings in pci#ven_1000&dev_0030
–ClassGUID which has a value of {4D36E97B-E325-11CE-BFC1-08002BE10318}
–Service which has a value of symmpi
–if those two strings are either not present in pci#ven_1000&dev_0030 or contain different information, change them.
OR
–if you do not have a key called pci#ven_1000&dev_0030
–RIGHT-CLICK on the LEFT PANE and click new -> key
–key name is pci#ven_1000&dev_0030
–RIGHT-CLICK in the RIGHT PANE and click new -> string value the name of this value is ClassGUID the value is {4D36E97B-E325-11CE-BFC1-08002BE10318}
–RIGHT-CLICK in the RIGHT-PANE and click new -> string value the name of this value is Service the value is symmpi
You should now have the first of two required registry keys properly setup.
———
–symmpi
–While still in regedit click all of the – symbols to close all of the open keys until you are back at the main hives.
–expand SYSTEM2 -> ControlSet001 -> Services
–if you have a service called symmpi left-click on it.
OR
–if you do not have a service called symmpi RIGHT-CLICK on the LEFT-PANE and click new -> key
– key name is symmpi
–If the symmpi key is setup properly you should have 7 keys in the right pane.
–(Default) (value not set) STRING
–ErrorControl (DECIMAL) 1 DWORD
–Group SCSI miniport STRING
–ImagePath system32\DRIVERS\symmpi.sys STRING
–Start 0 (DECIMAL) DWORD
–Tag 33 (DECIMAL) DWORD
–Type 1 (DECIMAL) DWORD
–If you have all of the keys in the right pane, most likely you will notice that the ImagePath key is missing and Start is set to 4 instead of 0.
–RIGHT-CLICK on the RIGHT PANE and select new -> String Value name = ImagePath value = system32\DRIVERS\symmpi.sys
–Double-Click on Start in the RIGHT-PANE, make sure DECIMAL is selected and change it to 0 if it is not 0 already.
–if you do not have all of the keys listed above create them using the method listed below.
–RIGHT-CLICK on the RIGHT PANE and select new -> type is either String Value or DWORD (see table above for types, names a values)
–Note: when entering DWORD values it helps to ensure that you have DECMIAL selected.
–After you have added, adjusted or just verified the configuration of the symmpi service configuration contract the registry hive until you are back to SYSTEM2 and then unload it.
—————————
Final thoughts.
How annoying was that?
I’m going to say very, hopefully it helps someone out.
Tags: 0x0000007B, symmpi, VMWare, Windows 2003

This article saved my bacon today. Great post.
Only one thing: where it says
“extract D:”
it should actually say
“expand D:”
Keep up the good work. Thanks!