Since Windows XP SP2 was released, Microsoft introduced a major improvement in supporting and detecting Bluetooth devices. Now, a few years down the road, there are more and more problems in finding Bluetooth drivers that will work with Microsoft's native Bluetooth stack. This article explains a way around this issue and includes a Windows Installer msi file with 116 additional Bluetooth drivers.
Finding Drivers: If you have a new computer that is Bluetooth enabled, chances are you had a hard time finding Bluetooth drivers to make it work with Microsoft's native Bluetooth stack. You probably had to resort to a third-party Bluetooth stack (e.g. WIDCOMM or TOSHIBA) or modifying your own Bluetooth installation driver file.
Editing/Hacking: Editing/hacking the Bluetooth %WinDir%\inf\bth.inf installation file is totally acceptable; all drivers used are Microsoft Bluetooth drivers, no third party stack or driver is introduced. But best of all; no third party software was needed.
There are a few issues however: First editing %WinDir%\inf\bth.inf will make the driver file unsigned and installing unsigned drivers requires local administrator permissions. Managed users in an enterprise are usually permission restricted, i.e. they are not local administrators. Also, setting the driver signing policy to Ignore mode as a workaround is generally not a good idea.
So you could edit the bth.inf file and install the Bluetooth device manually and image the system or as make it part of your post-deployment process before you give the computer to the end-user. This might be acceptable if you have lots of time and all Bluetooth devices are all known beforehand. But this scenario is very rigid and difficult to control.
Managed Workaround: The solution for creating a managed workaround was found in Microsoft's Driver Install Framework. Specifically DIFxApp: Driver Install Frameworks for Applications Version 2.0.
With DIFxApp, the Microsoft Windows Installer (which creates a .msi package) can be used to install driver packages that are associated with applications in a Windows Installer installation package. DIFxApp supports installing signed Plug and Play function drivers and signed class filter drivers on Windows 2000 and later.
This feature in particular will make the Bluetooth workaound succeed:
"DIFxApp can also be configured in legacy mode to install unsigned Plug and Play (PnP) function drivers and unsigned class filter drivers on Windows 2000 and later."
With this knowledge, we are able to install additional Bluetooth drivers by creating a modified version of Microsoft's bth.inf file.
VinsVision, Bluetooth, Software Drive, MSI