How can you tell if a driver is compatible with Drivermanager (tool that imports drivers into the driver database)?

Article:TECH187749  |  Created: 2012-04-30  |  Updated: 2013-04-15  |  Article URL http://www.symantec.com/docs/TECH187749
Article Type
Technical Solution

Product(s)

Issue



You notice issues when adding drivers via Driver Management or attempting to use DeployAnywhere to retarget particular hardware devices and you need to know how to tell if those drivers are compatible with Driver Management or DeployAnywhere. 


Solution



First, we need to establish some ground rules.
 

  • Driver Manager, via the console, is limited to importing drivers from one folder and will not recursively search sub-folders.  Driver Manager via command-line using the -add switch CAN recursively search sub-folders.
     
  • Driver Manager via the console can import more than one driver at a time, but no response is given that "it worked" or "they worked".
     
  • Driver Manager via the console produces very little if any actual error information.  It's pretty much "it didn't work".  Driver Manager via command-line has several supported switches, including ones that can produce significant logging.
     
  • Driver Manager as a general rule WILL ALWAYS follow the Microsoft Specs listed here: http://msdn.microsoft.com/en-us/library/windows/hardware/ff547433(v=vs.85).aspx
    • If a driver INF file is missing critical information as indicated by the specs there, it will fail to import using either method.
    • If a driver INF files points to a file that can not be found (e.g. maybe it exists in a folder but not the same folder as the INF and not specified in the SourceDiskFiles section explicitely), the import using either method will fail.
    • Drivers that are not essentially "stand alone" and cannot be directly imported (e.g. without using an installer or decompression or file renaming) will fail.
  • If a driver fully meets the Microsoft specifications, and we don't import it (outside of known limitations like DOS or Windows 8 prior to version 7.5), THEN we consider it a "bug" and will look for a fix.
     
  • Using Driver Manager from a command prompt (for greater control) can best be discovered by running it and finding the supported switches.
    • There is limited support for custom use of Driver Manager.exe from a command line.  Full support is available when using the Console.

 

Now, if you are troubleshooting specific drivers, there are several things you should be aware of:

  1. If the driver has to be installed using the driver manufacturer’s own installer, often these will not be compatible with Driver Manager.  The best examples of this are video drivers with large EXE or MSI's that run through a gamit of tests before installing.  Options for using these drivers are discussed below:
    1. Some can be decompressed and used.  
    2. Some can be installed on one system, then the drivers "extracted" from the functioning system to use on another.
    3. Some come with installers AND with fully standalone driver folders, and the stand-alone folders often work.
    4. Drivers like this often CAN be installed by launching the installer via a script, software delivery package, or even launching by using the Unattend.xml.
       
  2. If you cannot extract the driver and install it manually through the device manager, DA also won’t be able to use it.
    1. This doesn’t necessarily mean though that if you can install via the device manager that it will always be compatible with DeployAnywhere or Driver Management.  Usually, but not always.
       
  3. If the driver you’ve extracted does not contain all files mentioned in the driver INF (and the INF doesn't point exactly to where the files are, it will not work with DeployAnywhere or Driver Management. For example, if your extracted driver files are listed as IN_ or SY_ instead of INF or SYS those files did not properly unpack and are not compatible.
     
  4. If the driver does not contain an INF file, a CAT file, and the correct folder structure as listed in the INF, it will not work with DeployAnywhere or with Driver Management.
     
  5. If the driver is already present in the Driver Database (the DriversDB folder), you will not be able to add a second copy of that same driver.
    1. Same means exactly.  You can in fact install several of the same driver of different versions.
       
  6. If the driver is not a good match, we wont use it.
     
  7. If the driver does not match the operating system you are deploying, we will not even compare for use during installation.
     
  8. As of DS 7.1, DOS and Windows 8 drivers are NOT supported and will not work.
    1. In DS 7.5, Windows 8 driver support is scheduled to be added, but NOT DOS.

If you believe that your driver meets known qualifications for compatibility but you still have problems when importing or using with DeployAnywhere, please log a ticket with Symantec Technical Support.

 

For additional information regarding about how to read INF files to know if your driver package is ready.

  • Start here: http://msdn.microsoft.com/en-us/library/windows/hardware/ff547502(v=vs.85).aspx to get a feel for what you are looking for and as a reference for how drivers are supposed to be manufactured per Microsoft.  This is our reference point as well.
  • Ensure the driver is an exact match.
    • On a working system running the same OS, use Driver Manager to look at what Microsoft sees.  Then compare the verions and detailed information there with what is in the INF file
  • Ensure all the files are present
  •  

 




Article URL http://www.symantec.com/docs/TECH187749


Terms of use for this information are found in Legal Notices