FAQ About Windows DAC/MDAC

The following are some frequently asked questions about the data access technologies included in Windows Data Access Components (Windows DAC) and Microsoft Data Access Components (MDAC).

Windows Data Access Components (Windows DAC) 6.0 is the version of the data access technologies—ADO, OLE DB, and ODBC—included in the Windows Vista operating system. Microsoft Data Access Components (MDAC) includes earlier versions of the same technologies, and version 2.8 was included in Windows XP and Windows Server 2003. There is also a redistributable version, MDAC 2.8 SP1, which should only be used with Windows 2000. Windows DAC includes some changes to work with Windows Vista, but is almost entirely functionally equivalent to MDAC 2.8.

The followin Knowledge base article contains information about WDAC and MDAC versions for supported Microsoft operating systems: Microsoft Data Access Components (MDAC) release history.

MDAC can be removed in some instances where it is not installed as part of the Windows operating system. For example, MDAC 2.7 cannot be removed from systems that are running Windows XP, because it is a Windows component and therefore all its assemblies are system-protected files. The same is true for MDAC 2.8 when it runs under Windows Server 2003.

In most cases, you should use the Microsoft Component Checker (ComCheck) utility, which is available at no charge and can be downloaded from the Microsoft Web site.

For more information about how to use ComCheck to remove or repair MDAC installations, refer to the following Microsoft Knowledge Base article:

When you compile C++ applications that import msado15.dll, make sure that the 64-bit version of msado15.dll is referenced and not the 32-bit version. This detail might not be immediately obvious for the following reasons:

  • Many developers must build their 64-bit applications on computers that run under 32-bit Windows operating systems. These computers typically do not have the 64-bit version of msado15.dll installed.

  • When you build a 64-bit application that is referencing the 32-bit version of msado15.dll, the Visual C++ compiler does not return any compile or linking errors. In fact, frequently, your application might appear to work. Occasionally, your 64-bit application might encounter misaligned data. This causes memory access violations when certain ADO properties are accessed.

To avoid this issue, you can copy the 64-bit version of msado15.dll from the Windows installation media to any 32-bit computers that you use to develop, build, or test your application and make sure that you use that version when you compile your 64-bit application.

When Internet Information Services (IIS) is installed under Windows 2000, the default is to install data access components and create the MSADC virtual directory needed to support their use at the Web server after setup. Together, this configuration provides the support your Active Server Pages (ASP) applications might need to use Remote Data Services (RDS) and work as intended. After upgrading to either Windows XP or Windows Server 2003, however, the MSADC virtual directory is removed from IIS. This behavior is by design and is intended to provide added security where data access components are not available for use unless you intend to use them on your server running IIS.

After upgrade, if you try to access RDS, you might receive the following error message:

Internet Server Error
Runtime error: 8447 

To resolve this problem, create a new MSADC virtual directory on the server running IIS. To do this, follow these steps:

  1. Click Start, click Programs, click Administrative Tools, and then click Internet Information Services.

  2. Expand the (local computer) and Web Sites nodes.

  3. Right-click the Default Web Site node, point to New, and then click Virtual Directory. When the Virtual Directory Creation Wizard appears, click Next.

  4. In the Virtual Directory Alias dialog box, type MSADC, and then click Next.

  5. On the Web Site Content Directory page, click Browse to locate the following path, and then click Next:

    C:\Program Files\Common Files\System\msadc
  6. On the Access Permissions page, click to select the Execute (for example, as ISAPI applications or CGI) check box.


    By default, the Read and Run scripts such as ASP check boxes are selected.

  7. Click Next, and then click Finish to complete the wizard.

After you follow these steps, you might not receive the RDS error previously described.