Got a Vista Driver That Won't Install on Windows 7? Here's How To Fix
Most of Those Problems
As I settle into using a Windows 7 laptop all day every day, I run into
driver problems now and then. Now, understand — I'm running 64-bit
Windows 7 and I used to run 64-bit Vista, and in theory "if it's a Vista driver,
it's a Win 7 driver." But sometimes it seems that the drivers (or,
rather, their driver's setup programs) don't seem
to know that, and won't install correctly. So here are a couple of tips
that I've used to good effect.
Has Installing This Driver Been a Problem Even Before Windows 7?
Setting up my Win 7 systems has led to a number of problems
installing
USB-attached devices. I started cursing Windows 7, until I eventually
remembered that I'd seen problems with some of these drivers before.
I've
occasionally had troubles installing drivers for USB-attached devices in
XP and Vista if I'm running VMWare Workstation. VMWare's
usually-convenient ability to let me directly connect USB devices to
particular VMs has gotten in the way of a few driver installs, but
because I'd
not run into that problem in a while, I'd forgotten an old rule: when
installing something USB-related for the first time and it won't
install, make
sure VMWare's not running.
Lie to the Driver
I was trying to get the driver for my Edirol UA-4FX USB audio capture box
(the reasonably-priced tool that makes recording my newsletters easy) to
load, but it refused, as the driver's setup.exe installation routine
complained:
"The operating system that you are using is not supported. Please check
the supported operating systems. Setup will be terminated."
Ah, I thought, the old "I'm not gonna run even
if I could run,
just because
my programmer put a paranoid version check into the setup program" trick.
Heck, I know how to fix that: just tell the setup program what it wants to hear. To
do that, make it believe that your OS is not that newfangled, frightening
Windows 7 but instead good old Vista SP1. (Anyone out there remember the "setver"
command in DOS?) Here's how I accomplished it, Windows 7-style:
- I right-clicked setup.exe and clicked Properties.
- In the resultant property page, I clicked the the "Compatibility" tab.
- On that page, I checked the box labeled "Run this
program in compatibility mode for" and then selected "Windows Vista (Service Pack
1)."
Thus, when the Setup program asks the operating system its version, Windows 7
responds "Vista SP1" rather than the truth, the setup program gets Win
7 to swallow the drivers and all is well.
Slip the Driver in the Back Door
Even the "call it Vista SP1" thing doesn't work for some drivers, and
when
that happens, I skip the setup programs and all of the other GUI
nonsense and
talk directly to the operating system using the pnputil command.
Pnputil.exe is a command that first appeared in Vista. It's a
command-line tool (which means it's also useful in Server Core) that
lets you
install a driver on a system before you ever physically install the
hardware
that the driver's associated with, as pnputil has the power to
pre-populate the
"driver store" with a driver. To use it, you
- Get the driver for the hardware that you want to install.
Different companies package their drivers in different ways, but most either
offer a zip file or an EXE that's basically just a self-extracting zip file.
- Run the EXE or extract the zip's contents and you'll usually have a
folder full of of files with extensions like DLL, CAT, SYS, and at least one
with the extension ".INF."
- Open an elevated command prompt and type pnputil -i -a name-of-folder\*.inf,
like "pnputil -i -a c:\newdriver\*.inf." The system will think about
it for a moment or two and report that you've properly installed the driver.
Now, understand that this won't fix all problems, as some drivers were
written sort of lamely in the first place back in the Vista days (like the ones
for my Tascam US-144), but these
should help in many cases.
From:
www.minasi.com/newsletters/nws0908a.htm