DLL Help FAQ

Help FAQ
  1. What should I use this site for?
  2. How complete is the list of files for each Product ?
  3. How is the data gathered?
  4. How accurate is the information?
  5. How does this site relate to other tools such as the Dependency Walker?
  6. What is the scope of included products?
  7. Can I sort by columns?
  8. What does it mean when I have duplicate versions and dates but different file sizes?
  9. What does it mean when I have duplicate versions and file sizes but different dates?
  10. Why do some files not have a version?
  11. Why do some products ship with multiple instances of the same versioned file, or with several versions of the same file?
  12. A file that I think should be there is not there.
  13. The version shown in the tool does not match the version on my machine.
  14. The version shown in the tool is not what I think it should be.
  15. How do I examine the embedded resource of a DLL?

Search Type Details

The purpose of this site is to help Developers and IT Professionals better handle file version conflict problems - a situation commonly referred to as DLL Hell. This tool provides a list of file names and versions, along with other information, from major Microsoft products.

Searching by Product
This search method returns all DLL, EXE, and other versioned files that ship with a particular product . To use it, select By Product Only in the Search list. Two additional lists, titled Product and Version, will appear. Select your product and version from these lists and click Submit.

Note: You can search on only one product at a time.

Searching by File Name
This search method returns all versions of a particular file. To use it, select By File Only in the Search list. A text box labeled File Name appears. Type the file name you need and click Submit.

For example, to see all versions of msvcrt.dll, type msvcrt.dll in the edit box.

Note: To search for a file name using wildcards, type at least the first letter of the file name followed by a '*' character. The '*' character must be the last character in the search string.

Searching by Product + File
This search method returns all versions of a particular file that ships with a particular Product . To use this search method, select By Product + File in the Search list. Two lists (one titled Name, another titled Version) and an edit box (titled File Name) appear in the input form. Select your product and version, type the file name and click Submit.

For example, to perform a search for all msvcrt.dll files that ship with Office 2000, select Office in the product field, select Office 2000 in the Version field, and type msvcrt.dll in the edit box.

Note: Wildcard searching for file names, as detailed above, will also work with this search type.

Back to top.

Interpreting Search Results

Searches on Product or File Name will return one or more pages of data (each page is 50 records).  Wildcard searches on File Name or Product + File Name will return a single page of data that may have more than 50 records.

The information that is returned by a search is in the same format regardless of the search type performed. The following list contains a description of contents of each field:

Name: The name of the file as it appears on the distribution media or as it appears in Windows Explorer.

Version: The version of the file extracted from the version resource of the file.

More Information: A link to a separate page with more information about the file.

Description: The description as it appears in the Description field on the property sheet for the file in Windows Explorer.

Additional information is available when you click on the More Information link in the search results.  This action will bring up a popup window titled “Information for <filename> Version <version>”.    This window will provide the above information plus the following details:  

DLLSelfRegister: If this field contains Yes, it means that you can register the file using Regsvr32.exe.

Products Containing This Version: This sub-section provides a list of all the Products that ship with this particular version of your selected file.  For each listed, you will also see the following information relevant to your selected file:

Filename: The name of the Product that the file shipped with.

Size:The size of the file in bytes.

Mod. date: The modified date as it appears in the Modified field on the property sheet for the file in Windows Explorer.

CAB/IExpress: The self-extracting executable file or cabinet file on the distribution media that contains the file. If there are several values separated by a backslash (\ character), the self-extracting executable file or cabinet file has archive files nested in it, and the file can be found in this nested archive file.

Relative path: The path where the file can be found on the distribution media. For example, if a is installed from a CD, the file could be found in this folder on the CD.

CoClasses: This sub-section lists the CLSID and CoClass name for each creatable class in the file.


Back to top.


Printing Results

You can print the results of your searches using the standard Print command from your browser. This will print the search list selections as well as the results set. For multiple-page results sets, you will need to print each page separately.

Back to top.

Configuring Language Display

If you have problems viewing the file descriptions in languages other than the default language of your browser, you may need to change your browser settings or install separate system fonts.

To change your browser's language settings, consult your browser's Help or related documentation.

New system fonts for Windows operating systems can be installed using the Windows Update site at http://windowsupdate.microsoft.com/default2.htm. Under the Updates option, go to the International Language Support section. (It's near the bottom of the Updates page).

To install new system fonts for operating systems other than Microsoft Windows, check the documentation and/or Web site of the operating system's manufacturer for instructions. Some common non-Windows operating system manufacturer sites include the following:

Back to top.

FAQ

  1. What should I use this site for?

    This site is intended as a troubleshooting tool to assist developers, system administrators, and other IT professionals who face file version conflicts with Microsoft software.  Created by Microsoft Developer Support Professionals, it provides a searchable database of the names, versions, and related information on most files that ship with selected Microsoft products.  Use this site when you want to know which version of a file shipped with a particular Microsoft product , or as a way to track the source of a file on your system that you think might have shipped with a Microsoft product. Please note that this tool does not provide file dependency or interdependency information, nor does it provide direct links to download the files listed in the database.

    Back to top.

  2. How complete is the list of files for each Product?

    While our development team has made every effort to ensure that all relevant files are included, there is a small percentage of error due to the difficulty of extracting file information from certain Iexpress and Cabinet packages (see question #12 for more details).  As such, Developer Support recommends that the tool be used primarily as a troubleshooting aid, and should not be considered product documentation.  To ensure the value of our data, we do not include those products in the database where the percentage of error in the extraction process is greater than 5%.

    To limit database size as well as avoid unnecessary duplication, we also use a systematic process to select certain unnecessary directories for exclusion from any given product. Typically, the directories for Alpha, MIPS, and PPC are excluded.  In addition, where Internet Explorer is provided as an optional component on a CD, that directory is also excluded.

    Back to top.

  3. How is the data gathered?

    We have created an internal tool that recursively scans the directories in each CD. This tool identifies all files that contain the appropriate extensions (such as .dll or .exe) and version resources, then inserts these files into a database. 

    Back to top.

  4. How accurate is the information?

    The information is as accurate as the information contained in the files themselves. It is gathered directly from the VERSIONINFO resource of the file by calling the GetFileVersionInfo and VerQueryValue API’s.  Results may appear skewed at times due to the complexity of the data, but you can usually clarify any apparent discrepancies by examining the relative path and Cabinet/Iexpress package details contained in the More Information link for that file. For instance, many products contain DCOM95.EXE or MDAC_TYP.EXE files as Iexpress packages in subfolders that appear to be distributed as part of the main product.  This can be deceiving, and the situation is only made clear by determining if the file was part of another, smaller, installation. 

    Back to top.

  5. How does this site relate to other tools such as the Dependency Walker?

    The Dependency Walker (Depends.exe) recursively scans all dependent modules required by a particular file and detects missing dependent files, invalid files, and import/export mismatches.  The File Version Information Center simply provides information on which files shipped with which products, and does not contain any information regarding the dependencies of modules.  See the MSDN article "Redistributing Microsoft Visual C++ 6.0 Applications " to get the most recent version of the Dependency Walker.

    Back to top.

  6. What is the scope of included products?

    The database includes most major Microsoft products along with a selection of smaller products and updates of interest to developers and IT professionals. Our list of included products gets updated regularly.  If there is a specific product that you would like to see added, please e-mail us and we will put it on our list for consideration.

    Back to top.

  7. Can I sort by columns?

    Currently, the only way to sort by columns is to copy and then paste the information into Excel or another spreadsheet application.  Then highlight the results section of the output in your browser and select Copy by right-clicking.  Finally, paste the data into that application and sort by columns.

    We are aware that this is a cumbersome process, particularly with paged data, and a mechanism to sort or export data directly from this page is a popular request. The development team is considering options for providing this functionality in our next release.

    Back to top.

  8. What does it mean when I have duplicate versions and dates but different file sizes?

    This is usually due to files being targeted for installation on different operating systems or possibly compiled using slightly different compiler settings. Some files are re-aligned for optimization on Windows 98.

    Back to top.

  9. What does it mean when I have duplicate versions and file sizes but different dates?

    The file was most likely modified or simply recompiled by a particular group before distribution. The date information on this site is given primarily as a reference when the file contains no other version information.

    Back to top.

  10. Why do some files not have a version?

    Some files do not contain version resources.  In cases where such files are of certain types we feel are important to developers, we have chosen to include them.  This allows our customers the benefit of more, rather than less, information about the files included with our products.

    Back to top.

  11. Why do some products ship with multiple instances of the same versioned file, or with several versions of the same file?

    There are two potential reasons for this. 

    A. A product typically installs a slightly different file for a different target operating system. You can see this by looking at the Iexpress/Cabinet column when obtaining more information for a version of a file. The output shows that the file either is contained in a different cabinet file or located at a different path on the setup media. 

    B. A duplicated file can also be contained in an auxiliary or utility setup of a smaller application on the CD.  Our population tool does not have a way to determine which files are part of the initial setup and which are included in the secondary or utility application setup.

    Back to top.

  12. A file that I think should be there is not there.

    There are several reasons that this could happen. 

    A. The file/version combination you are looking for did not ship with the product you are reviewing.

    B. The product or service pack that includes the file is not yet included in the database.

    C. The file is in one of the directories that we normally exclude (see question #2).

    D. The file is in one of the few un-extractable Cabinet formats encountered during our population process (see note).

    Note: The population tool scans a CD to extract the version information directly from a file.  Specifically, it extracts from Cabinet files and IExpress packages along the way. Some Microsoft applications use InstallShield for their setup. This Cabinet format is proprietary to InstallShield and the population tool cannot extract from these specific Cabinet files.  For this reason, as mentioned in the General Questions item #2 above, a few applications (DirectX 7.0 and Visual C++ 6.0 in particular) are missing a small percentage (3-5%) of files.  Also, products that make heavy use of the InstallShield format, such as Site Server 3.0, are not included in the database because we cannot guarantee the completeness of the extracted data within 5%.

    Back to top.

  13. The version shown in the tool does not match the version on my machine.

    It is possible to find a version of a file on your computer that does not match the version in the database. This is either because another product has overwritten your original file with a newer version, or the product containing that file/version combination has not yet been entered into the database. If there is a specific product you would like added to the database, please e-mail us with your request.  

    Back to top.

  14. The version shown in the tool is not what I think it should be.

    It is possible that your computer has multiple versions of a file in different locations on your hard drive or the particular file has been updated by another application on your system.   For example, even though you have Windows NT 4.0 SP4 installed on your computer, you probably have an updated version of a file from another product that you installed prior to or after installing this service pack.

    Another explanation is that Explorer or the shell on Windows 95, Windows 98,and Windows NT 4.0 displays the version information in the File Properties dialog box.  All of these operating systems show the fileversion string from the StringFileInfo block of the VERSIONINFO resource.  Windows 2000 shows the actual binary FILEVERSION key from Fixed-info section of the Version Resource, which is the same version that the File Version Information Center displays. Typically, this version data is the same, but sometimes the version in the StringFileInfo block is shorter or is not synchronized with the other value.   See the next question if you wish to examine your system's file information directly.

    Back to top.

  15. How do I examine the embedded resource of a File?

    If you have access to Microsoft Visual Studio, open the resources for a file and obtain the VERSIONINFO resource as described in the following steps:

    1. From the Visual Studio File menu, select Open.
    2. Select Resources from the Open As drop-down menu and then either type the name in the File Name field or browse for the file you want to examine and then click Open.
    3. Open the version resource and locate the FILEVERSION key.  Notice there is another FileVersion key following the Block Header portion of the version resource. This is the version displayed by the Windows shell, and may be different from the FILEVERSION value in step #2 above.
    4. If you do not have access to Microsoft Developer Studio or an environment capable of opening file resources, you can use the GetVers.exe file to obtain the necessary version. To use the program, simply download it from the following Microsoft Knowledge Base article:

      Q167597 GetVers.exe Specifies Component FileVersion & #Version

      From the command prompt type the following command:

      GetVers <filename>

    Back to top.