Component Checker

Component Checker is a tool that allows you to determine the version installation information of the Microsoft Data Access Components (MDAC), and assists in diagnosing installation issues with MDAC. MDAC is installed with numerous Microsoft products and also is available for redistribution by other application providers.

Component Checker requires Microsoft XML Parser (MSXML) to operate correctly on your computer. If MSXML is not present on your system, you must install MSXML 2.0 or newer from www.microsoft.com/downloads or from the XML Developer Center.

Note:
Component Checker can only be used on 32-bit platforms.

Component Checker performs the following tasks:

  • Identifies the MDAC installations.

  • Creates a report about the files identified for the MDAC installations.

In This Section

Topic | Description
Running Component Checker | Contains information on running Component Checker from the Windows application interface and from the command prompt
Analyzing Component Checker Results | Contains information on analyzing Component Checker results from the Windows application interface and from the results (output) file.
Customizing Component Checker | Contains information on modifying Component Checker files for nonstandard scenarios.

© 2004 Microsoft Corporation. All rights reserved.


Running Component Checker
See Also

There are two ways to run Component Checker:

  • You can run Component Checker as a Windows application by double-clicking the application icon (or the cc.exe file) in the installation directory. In this mode, you can use the tool to perform a variety of simple evaluations using the menus in the main application window.

  • You can also run Component Checker from the command prompt. Running the tool from the command prompt allows you to specify various command line options.

In This Section

Topic | Description
Running Component Checker from the User Interface | Describes menu-driven options for using Component Checker.
Running Component Checker from the Command Prompt | Describes how to control Component Checker behavior using command line options.

See Also

Concepts

Analyzing Component Checker Results

Other Resources

Component Checker
Customizing Component Checker


Running Component Checker from the User Interface

Regardless of whether you start Component Checker from Windows or from the command prompt, the user interface will appear (unless the /q command line option is used, which causes Component Checker to run in silent mode, with no user interface). When launched, Component Checker first displays the Choose Analysis Type dialog box, where you choose from one of three analysis options. Based on your selection, the results are then displayed in the Component Checker window.

Choosing an Analysis Type

The Choose Analysis Type dialog box allows you to choose one of three options:

  • Perform analysis of your machine and automatically determine the release version (Default)

    When selected, this option searches the Microsoft Data Access Components (MDAC) installation on your computer and determines its released version. Because it is possible that different products may have installed different versions of MDAC, the result of this analysis might not be precise. Component Checker, however, presents the version that most closely matches the currently installed components.

  • Perform analysis against a selected version

    When selected, this option activates a drop-down list of all versions of MDAC ranging from version 2.1 SP2 to the most recent. Component Checker will perform an analysis based on the version selected and then present a list of error or warning messages.

  • Scan your machine. Do not perform an analysis

    When selected, this option performs an analysis on the data from the last analysis, and presents the Component Checker window. Any results, errors, or warnings will appear here.

See Also

Concepts

Running Component Checker from the Command Prompt

Other Resources

Running Component Checker


Running Component Checker from the Command Prompt

Many operations of Component Checker can be implemented by running the tool from the command prompt. The following table lists the command line options that invoke these operations. See the following Examples section for usage illustrations.

Option | Operation
/? | Displays the command-prompt Help.
/o | Specifies the output file name and path.
/n | Used in conjunction with the /o option. Filters output details using one of the following values:1 = File2 = Registry3 = File and Registry4 = COM5 = File and COM6 = Registry and COM7 = File, Registry, and COM
/s | Scans for a specific version of MDAC.
/c | Scans for the closest, or most recent, version of MDAC.
/a | Scans for all MDAC versions.
/q | Runs Component Checker in quiet mode, meaning that the user interface of the tool is not displayed.

Examples

The following examples show how to use the Component Checker command line options.

Example 1

The following example analyzes your computer and directs the output to a file named AllVersions.xml in the installation directory. This file contains a full report that lists the file, registry, and COM information for all versions of MDAC found to be installed locally.

Copy Code
cc /a /o AllVersions.xml /q

Example 2

The following example analyzes your computer against MDAC 2.8 RTM. It produces a report file named SpecificVersion.xml in the installation directory.

Copy Code
cc /s "MDAC 2.8 RTM" /o SpecificVersion.xml /q

Example 3

The following example detects and analyzes your computer against the closest version of MDAC in its internal list. It outputs a full report of its findings to a file named ClosestVersion.xml in the installation directory.

Copy Code
cc /c /o ClosestVersion.xml /q

See Also

Concepts

Running Component Checker from the User Interface

Other Resources

Running Component Checker


Analyzing Component Checker Results

When Component Checker is used to analyze the currently installed versions of the Microsoft Data Access Components (MDAC), the results from the analysis are reported in the user interface, and in an output file named results.xml (also known as the results file).

Component Checker determines the version of MDAC on your computer based on versions of the core MDAC files it finds. If a given version has more version matches than any other version, the program displays a "closest version detection" message.

If multiple matches of the same version exist on your computer, Component Checker displays a "multiple version detection" message. You can then run the analysis against a selected version in the Choose Analysis Type dialog box.

In This Section

Topic | Description
Interpreting Results from the User Interface | Describes how to interpret the results reported by Component Checker within the Windows application interface
Interpreting Results from the Results File | Describes how to interpret the results reported by Component Checker within the results (output) file.

See Also

Other Resources

Component Checker
Running Component Checker
Customizing Component Checker


Interpreting Results from the User Interface

The Component Checker application window consists of two panes that show the results of an analysis: the tree view pane on the left and the results pane on the right. Each item in the tree view pane, when selected, shows specific results in the results pane.

In addition, the View menu in the main application window allows you to select the details that you wish to view, including the following:

View | Description
Summary Report | The default view that is displayed after performing an analysis. Contains information about the Microsoft Data Access Components (MDAC) installations, including the file details.
File Details | Contains information about all of the MDAC files that were found during the analysis.
COM Details | Contains information about the Component Object Model (COM) files found during the analysis.
Registry Details | Contains information about the MDAC registry values found during the analysis.

You can save the information returned during the Component Checker analysis by selecting Save from the File menu. This will open the Save File dialog box that you can use to specify the path and file name to save the results to. The default name of the output file is results.xml, and the information that it contains is in an XML format.

See Also

Concepts

Analyzing Component Checker Results
Interpreting Results from the Results File


Interpreting Results from the Results File

Component Checker logs the results of its analysis in an XML output file named results.xml; the results file can be saved to a folder of your choosing by selecting Save from the File menu, or by using the /o option if running the tool from the command prompt.

The results file created by Component Checker has a similar format to the input XML files contained in the \inputstream subdirectory, such as filestream.xml, registrystream.xml, and comstream.xml.

Additionally, the results file includes values for the <found> element to contrast with the information obtained from the input files about a file, its registry value or COM object registration, and its version-specific details. Additional information in the results file includes:

  • Descriptions of the contents of the file, including any descriptive comments or summary text.

  • Status information when the file, registry value, or COM registration has errors or passes when checked for consistency to the version of MDAC being analyzed.

  • Error strings when an error occurs in analyzing the version of MDAC.

  • Date stamps (which is the date when the MDAC file was stamped or last touched) when they do not match what is stated in the input files for the corresponding file or registry value.

The results file can be viewed as text or XML markup using a text editor or Web browser.

See Also

Concepts

Analyzing Component Checker Results
Interpreting Results from the User Interface


Customizing Component Checker

Customizing Component Checker allows you to better analyze and manipulate Microsoft Data Access Components (MDAC). You can configure Component Checker for different users and put safeguards in place for each.

You can:

  • Modify the data in input files that are used by Component Checker to analyze MDAC components.

  • Redirect component search results to an output file.

  • Control the file list that Component Checker uses for analyzing MDAC components.

In This Section

Topic | Description
Modifying Data in Component Checker Input Files | Describes the structure of Component Checker input files.
Building Custom File Lists for Component Checker | Contains general information for modifying Component Checker file lists to analyze other versions of MDAC.

See Also

Concepts

Analyzing Component Checker Results

Other Resources

Component Checker
Running Component Checker


Modifying Data in Component Checker Input Files

The input data files for Component Checker control the Microsoft Data Access Components (MDAC) files to be analyzed. They also contain lists of registry values, COM information, and potentially other types of configuration data associated with installing and servicing the various versions of MDAC that have been released by Microsoft.

File Locations

Component Checker relies on files installed with it to determine MDAC file locations. The input data files are located in the \inputstream subdirectory where Component Checker is installed.

Most files used for customization are located in <install directory>\inputstream. The following table lists the significant files, their locations, and use.

File | Description | Location
filestream.xml | List of files that Component Checker checks. | \inputstream subdirectory.
registrystream.xml | List of registry values that Component Checker checks. | \inputstream subdirectory.
comstream.xml | List of COM information that Component Checker checks. | \inputstream subdirectory.

Filestream.xml

Filestream.xml lists the files that are analyzed by Component Checker. This file is located in the \inputstream subdirectory.

The root element for this file is the <filestream> element. The <filestream> element contains no attributes and must contain one or more instances of the <file> element.

Each <file> element is an entry for a single MDAC file. It uses the attributes described in the following table.

Attributes for <file> Element

Attribute | Description
name | Short file name for an installed MDAC file such as "filename.ext". Note that this attribute is used as the primary key when Component Checker validates the contents of filestream.xml, and therefore its value must be unique (that is, only used once) within the <file> element.
dir | The directory where the file is installed by MDAC.

Within the <file> element, the <release> element is used to document information for the current <file> element specific to a released version of MDAC. The <release> element uses the attributes described in the following table.

Attributes of <release> Element

Attribute Description

name

The recognized text label for an MDAC release. The following are currently used and recognized by Component Checker.

  • MDAC 2.1 SP2

  • MDAC 2.5

  • MDAC 2.5 RTM

  • MDAC 2.5 SP1

  • MDAC 2.5 SP2

  • MDAC 2.5 SP3

  • MDAC 2.6 RTM

  • MDAC 2.6 SP1

  • MDAC 2.6 SP2

  • MDAC 2.6 SP2 Refresh

  • MDAC 2.7 RTM

  • MDAC 2.7 Refresh

  • MDAC 2.7 SP1

  • MDAC 2.7 SP1 Refresh

  • MDAC 2.8 RTM

  • MDAC 2.7 SP1 on Windows XP SP1

  • MDAC 2.8 SP1 on Windows XP SP2

version

The number that indicates the version numbering information for the files in the specified MDAC release.

The default copy of filestream.xml includes file information for all MDAC versions (including service packs) starting with MDAC 2.1 SP2.

Example: filestream.xml

The following are a sample of the contents of filestream.xml:

Copy Code
<filestream>
  <file name="MSADOR15.DLL" dir="%COMMONFILES%\system\ado\">
     <release name="MDAC 2.1 SP2" version="2.10.4202.1" />
     <release name="MDAC 2.5" version="2.50.4403.4" />
     <release name="MDAC 2.5 SP1" version="2.51.5303.0" />
     <release name="MDAC 2.5 SP2" version="2.52.6019.1" />
     <release name="MDAC 2.5 SP3" version="2.53.6200.0" />
     <release name="MDAC 2.6 RTM" version="2.60.6526.0" />
     <release name="MDAC 2.6 SP1" version="2.61.7326.0" />
     <release name="MDAC 2.6 SP2" version="2.62.7926.0" />
     <release name="MDAC 2.6 SP2 Refresh" version="2.62.7400.0" />
     <release name="MDAC 2.7 RTM" version="2.70.7713.0" fileversion="2.70.7713.0" />
     <release name="MDAC 2.7 Refresh" version="2.70.9001.0" fileversion="2.70.9001.0" />
     <release name="MDAC 2.7 SP1" version="2.71.9030.0" fileversion="2.71.9030.0" />
     <release name="MDAC 2.7 SP1 Refresh" version="2.71.9030.0" fileversion="2.71.9030.0" />
     <release name="MDAC 2.8 RTM" version="2.80.1022.0" />
     <release name="MDAC 2.7 SP1 on Windows XP SP1" version="2.71.9030.0" fileversion="2.71.9030.0" />
  </file>
</filestream>

Registrystream.xml

Registrystream.xml lists the registry entries that are used by Component Checker. This file is located in the \inputstream subdirectory and can be altered using a text editor.

The root element for this file is the <registrystream> element. The <registrystream> element contains no attributes and must contain one or more instances of the <regvalue> element.

Each <regvalue> element is an entry for a single registry value used by MDAC in the Windows registry. It uses the attributes described in the following table.

Attributes of <regvalue> Element

Attribute | Description
root | The Windows registry hive where the current registry value is located, such as "HKEY_LOCAL_MACHINE".
key | The path to the registry value from the root to the current value being specified.
value | The name of the registry value. If unnamed, "default" is used.

Within the <regvalue> element, the <release> element documents information for the current <regvalue> element specific to a released version of MDAC. The <release> element uses the attributes described in the following table.

Attributes of <release> Element

Attribute Description

name

The recognized text label for an MDAC release. The following are currently used and recognized by Component Checker:

  • MDAC 2.1 SP2

  • MDAC 2.5

  • MDAC 2.5 RTM

  • MDAC 2.5 SP1

  • MDAC 2.5 SP2

  • MDAC 2.5 SP3

  • MDAC 2.6 RTM

  • MDAC 2.6 SP1

  • MDAC 2.6 SP2

  • MDAC 2.6 SP2 Refresh

  • MDAC 2.7 RTM

  • MDAC 2.7 Refresh

  • MDAC 2.7 SP1

  • MDAC 2.7 SP1 Refresh

  • MDAC 2.8 RTM

  • MDAC 2.7 SP1 on Windows XP SP1

  • MDAC 2.8 SP1 on Windows XP SP2

type

The Windows registry data type for the current registry value, such as REG_SZ for string data.

data

The data for the current registry value.

The primary key for this file is the full registry path, which is comprised of all of the attribute values contained in the attributes of the <regvalue> element.

The default copy of registrystream.xml includes registration information for all MDAC versions (including service packs) starting with MDAC 2.1 SP2.

Example: Registrystream.xml

The following are a sample of the contents of registrystream.xml:

Copy Code
<registrystream>
   <regvalue root="HKEY_LOCAL_MACHINE" key="\SOFTWARE\Classes\ADODB.Command\CLSID" value="default">
      <release name="MDAC 2.6 RTM" type="2.70.9001.0" data="{00000507-0000-0010-8000-00AA006D2EA4}" />
      <release name="MDAC 2.8 RTM" type="2.70.9001.0" data="{00000507-0000-0010-8000-00AA006D2EA4}" />
   </regvalue>
</registrystream>

Comstream.xml

Comstream.xml lists the COM registration information used by Component Checker. This file is located in the \inputstream subdirectory and can be altered as using a text editor.

The root element for this file is the <comstream> element. The <comstream> element contains no attributes and must contain one or more instances of the <regvalue> element.

Each <regvalue> element is an entry for a single COM-related CLSID value reserved for an MDAC component in the Windows registry. It uses the attributes described in the following table.

Attributes of <regvalue> Element

Attribute | Description
root | The Windows registry hive where the current registry value is located, such as "HKEY_LOCAL_MACHINE".
key | The path to the CLSID registry value from the root to the current COM registry value being specified.
value | The name of the registry value. Typically, the value of this attribute is "default".

Within the <regvalue> element, the <release> element is used to document information for the current <regvalue> element specific to a released version of MDAC. The <release> element uses the attributes described in the following table.

Attributes of <release> Element

Attribute Description

name

The recognized text label for an MDAC release. The following are currently used and recognized by Component Checker:

  • MDAC 2.1 SP2

  • MDAC 2.5

  • MDAC 2.5 RTM

  • MDAC 2.5 SP1

  • MDAC 2.5 SP2

  • MDAC 2.5 SP3

  • MDAC 2.6 RTM

  • MDAC 2.6 SP1

  • MDAC 2.6 SP2

  • MDAC 2.6 SP2 Refresh

  • MDAC 2.7 RTM

  • MDAC 2.7 Refresh

  • MDAC 2.7 SP1

  • MDAC 2.7 SP1 Refresh

  • MDAC 2.8 RTM

  • MDAC 2.7 SP1 on Windows XP SP1

  • MDAC 2.8 SP1 on Windows XP SP2

type

The Windows registry data type for the current registry value, such as REG_SZ for string data.

data

The data for the current COM registration. Typically, this is the full path to the file that contains the COM component being registered.

The default copy of comstream.xml includes registration information for all MDAC versions (including service packs) starting with MDAC 2.1 SP2.

Example: Comstream.xml

The following are a sample of the contents of comstream.xml:

Copy Code
<comstream>
   <regvalue root="HKEY_LOCAL_MACHINE" key="CLSID\{00000507-0000-0010-8000-00AA006D2EA4}\InProcServer32" value="default">
      <release name="MDAC 2.7 SP1" type="REG_SZ" data="%COMMONFILES%\System\ADO\msado15.dll" />
      <release name="MDAC 2.8 RTM" type="REG_SZ" data="%COMMONFILES%\System\ADO\msado15.dll" />
   </regvalue>
</comstream>

See Also

Concepts

Building Custom File Lists for Component Checker

Other Resources

Customizing Component Checker


Building Custom File Lists for Component Checker

Building custom file lists provides a way to analyze any other installation on your computer. It can be useful when another version of Microsoft Data Access Components (MDAC) is installed — for instance, one containing a software patch.

To build a custom file list with Component Checker, you should start by making a backup copy of the filestream.xml file in the \inputstream subdirectory. You can then modify the contents of filestream.xml using a text editor, and add or update new <file> or <release> elements as appropriate.

See Also

Concepts

Modifying Data in Component Checker Input Files

Other Resources

Customizing Component Checker


Component Checker Copyright and Legal Information

Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the example companies, organizations, products, domain names, e-mail addresses, logos, people, places and events depicted herein are fictitious, and no association with any real company, organization, product, domain name, e-mail address, logo, person, place or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.

2004 Microsoft Corporation. All rights reserved.

Microsoft, SQL Server, and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

The names of actual companies and products mentioned herein may be the trademarks of their respective owners.