Invalid DAO reference causes fatal error in Access 2000 (248790)



The information in this article applies to:

  • Microsoft Access 2000

This article was previously published under Q248790
For a Microsoft Access 97 version of this article, see 177264.
Novice: Requires knowledge of the user interface on single-user computers.

This article applies only to a Microsoft Access database (.mdb).

SYMPTOMS

When you try to do any of the following:
  • Open a database with a startup form
  • View, create, or run Visual Basic code in a form's class module
  • Start a Wizard
you may receive one of the following error messages.

In Microsoft Windows 95 or Microsoft Windows 98

ActiveX component can't create object.

-or-

This application has performed an illegal operation and will be shut down.
If you click Details, you receive the following additional information:
Invalid Page Fault in MSACCESS.EXE

In Microsoft Windows NT

An application error has occurred and an application error log is being generated. MSACCESS.EXE

-or-

MSACCESS.EXE caused an exception: Access Violation in MSACCOPT.DBG

In Microsoft Windows 2000

ActiveX component can't create object.

-or-

MSACCESS.exe has generated errors and will be closed by Windows. You will need to restart the program.

An error log is being created.

CAUSE

The Dao360.dll file is not properly registered.

RESOLUTION

There are four methods that you can use to resolve this issue. Each method is more extensive than the one before it, so you may want to try each method in the order listed until you no longer see the error message.

Method 1: Run Regsvr32.exe to Register the DAO Files

Regsvr32.exe registers dynamic link library (.dll) files or ActiveX Controls in Windows.

If Regsvr32.exe is not already on your hard disk, please see the following article in the Microsoft Knowledge Base for information about obtaining a copy of the file:

267279 ACC2000: Regsvr32.exe Available in Download Center

Follow these steps to use Regsvr32.exe to register the Data Access Objects (DAO) DLL on your computer:
  1. Quit Microsoft Access if it is running.
  2. Verify that Regsvr32.exe is in your Windows\System folder, for example:

    C:\Windows\System

    -or-

    \Winnt\System32

  3. Click Start, and then click Run.
  4. In the Run dialog box, type the following command:

    Regsvr32.exe C:\progra~1\common~1\micros~1\dao\dao360.dll

    NOTE: The path to Dao360.dll may be different on your computer, depending upon which folder you installed Microsoft Office in.
  5. Start Microsoft Access, and then try to perform the process that caused the error.

Method 2: Replace Dao360.dll

  1. In Windows Explorer, browse to the Microsoft Office 2000 CD1, and then open the following folder:

    \PFILES\COMMON\MSSHARED\DAO

  2. To make sure you can see .dll files in Windows Explorer, do one of the following, depending upon which operating system you are running.

    In Windows 95 and Windows NT 4.0

    On the View menu, click Options. Then on the View tab, make sure the option Show All Files is selected. Click OK.

    In Windows 98

    On the View menu, click Folder Options. Then on the View tab, make sure Hide Protected Operating System Files is not selected. Click OK.

    In Windows 2000

    On the Tools menu, click Folder Options. Then on the View tab, make sure Hide Protected Operating System Files is not selected. Click OK.
  3. Click the file Dao360.dll, and then on the Edit menu, click Copy.
  4. Close all applications, and then browse to the DAO folder on your computer at the following location:

    \Program Files\Common Files\Microsoft Shared\Dao

  5. On the Edit menu, click Paste. When you are prompted if you are sure, click Yes.

Method 3: Remove the DAO Folder and Reinstall Access 2000

Remove Access 2000 from your computer as follows.

NOTE: If you installed Access as part of Office 2000 Professional, Premium, or Developer, you must remove Office 2000.
  1. Click Start, point to Settings, and then click Control Panel.
  2. Double-click the Add/Remove Programs icon.
  3. In the Add/Remove Programs Properties dialog box, click Microsoft Office 2000 or Microsoft Access 2000.
  4. Click Add/Remove. In Windows 2000, click Change/Remove.
  5. In the Installation Maintenance dialog box, click Remove All. Confirm that you want to remove the program.
  6. Remove the following folder and any files it contains from your hard disk.

    \Program Files\Common Files\Microsoft Shared\Dao

  7. Run Setup to reinstall Office 2000 or Access 2000.
  8. Start Microsoft Access 2000, and then try to perform the process that caused the error.

Method 4: Remove Access or Office, Delete Leftover Files, and Reinstall

  1. Remove all of Office 2000 or Access 2000 from your computer. Refer to steps 1 through 5 from "Method 3" for more details.
  2. Manually delete all Microsoft Office 2000 or Microsoft Access 2000 files left on your hard disk after Setup removes the program. For a list of files to remove, please see one of the following articles in the Microsoft Knowledge Base:

    203370 ACC2000: How to Completely Remove Access 2000 from Your Computer

    219423 OFF2000: How to Completely Remove Microsoft Office CD1

  3. Reinstall Microsoft Office or Microsoft Access from the CD.
  4. Start Microsoft Access, and then try to perform the process that caused the error.

MORE INFORMATION

Steps to Reproduce the Behavior

  1. Make sure Access 2000 is not running.
  2. Click Start, click Run, type the following command, and then click OK:

    Regsvr32.exe /u C:\progra~1\common~1\micros~1\dao\dao360.dll

    Note that you receive confirmation that DAO360.dll has been unregistered.
  3. Start Access, and then create a new database.
  4. Click Queries, click New, click Simple Query Wizard, and then click OK. Note that you receive one of the error messages mentioned in the "Symptoms" section.

REFERENCES

If you experience this problem with Microsoft Access 97, see the following article:

177264 ACC97: Invalid DAO Reference Causes an IPF in MSACCESS.EXE


Modification Type:MajorLast Reviewed:8/10/2004
Keywords:kbDAO kbtshoot kbPubTypeKC kbMSCCSearch kbpending kbprb KB248790