Windows 7 virtual device driver format in the registry is invalid

gert_97

Honorable
Jul 4, 2012
2
0
10,510
Hello!

I've been working with Windows for many years and I am used to get help searching the web oder MS-Resources/help center but for this problem I could find nothing at all for Win 7 (there are solutions for XP but in this point the systems are too different). So I desperately would like to ask you for help and thank you for every answer.

My System: Win 7, 32 bit, SP 1
The Programm is an old (maybe once written for Win 95) Databaseprogramm, unfortunately there is no alternative for my resaerch work. My University and it's experts have no solution:

Starting the Programm appears the normal windows warning (accepting changes in the system), I press OK, then comes this obscure window:

Titel: "16 bit windows subsystem"
Content: "SYSTEM/CurrentControlSet/Control/VirtualDeviceDSrivers. virtual device driver format in the registry is invalid. Choose 'Close' to terminate the the application."

There is only one button "Close".

That's it.

I thank you honestly for any idea (XP-Solution from the wb doesn't fit for win 7)

Best greetings
Gert
 
I was having the same error message on a Windows 7 Professional 32-bit (don't think it occurred until recently for whatever reason). Using regedt32, I did not find the VDD data value nor the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\VirtualDeviceDrivers key that should exist to contain it in the windows 7 registry, so I navigated to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control, then added the VirtualDeviceDrivers key as a subkey of ...\Control (assure it is added EXACTLY as "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\VirtualDeviceDrivers", if missing.

I then used the directions from microsoft kb article which fixes this issue in windows 2000 and XP:

http://support.microsoft.com/kb/254914

to add VDD as a value of data type multi-string (adds REG_MULTI_SZ as data type) with no value. My 16 bit apps (both windows and dos) then suddenly were back to normal.

NOTE: Back up your registry before doing this, and understand that editing the registry incorrectly can crash windows to the point where it will not boot and you could lose stuff big time - so be VERY careful.

NOTE: 64-bit windows will NOT run 16 bit applications (thus cannot use the above fix) without using a virtual XP machine or ???, and 64-bit windows cannot use 32 bit drivers, so if you use 16 bit apps or hardware that doesn't have 64 bit drivers (many older hardware devices), either you won't be able to use the older hardware, or you are asking for lots of extra unnecessary work for mostly very little benefit by switching from 32 to 64 bit. Also, 64 bit uses alot more RAM and disk space. Unless you have HUGE RAM needs for MONSTER (gigabytes) apps, you will have far less trouble by using 32-bit windows 7. Of course, virtually all machines sold in retail and online seem to be 64-bit Home (which doesn't allow 32 bit virtual XP without a separate XP license http://www.howtogeek.com/howto/11060/create-an-xp-mode-for-windows7-home-versions-and-vista/), thus making it very hard to avoid this trap. Not nice M$! My experience is that the Acer BZ816 and BZ699 notebooks are two of a very few 32-bit windows 7 retail products. I helped a friend set up another Acer identical to these except it was 64-bit Home windows 7 and we couldn't use some of the older hardware (wifi receiver, etc) that worked perfectly on the 32-bit version notebooks due to lack of 64-bit drivers, and the 16-bit windows and DOS apps wouldn't work at all (virtual XP needed + XP license).

HTH,
Paul
 



Thanks, this is Harry in Atlanta and I was able to make this work too.