Microsoft KB Archive/821809

From BetaArchive Wiki

Article ID: 821809

Article Last Modified on 4/7/2006



APPLIES TO

  • Microsoft Access 2002 Standard Edition





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

Advanced: Requires expert coding, interoperability, and multiuser skills.

SYMPTOMS

When you try to link Open Database Connectivity (ODBC) tables to an Access database, Access may quit unexpectedly. You may receive the following error message:

Microsoft Access has encountered a problem and needs to close.



If you click Debug, you may receive the following error message:

The instruction at 0x30b17ce9 referenced memory at 0x00000000. The memory could not be read.



When you click Send A Report, you may receive the following message:

AppName: Msaccess.exe AppVer: 10.0.4302.0 ModName: Mso.dll ModVer: 10.0.4219.0 Offset: 00005ae9

CAUSE

This problem may occur when the following conditions are true:

  • You try to link ODBC tables immediately after you open the database.
  • The database contains a reference to another Access database (.mdb) file.


RESOLUTION

Service pack information

This problem is corrected in Office XP Service Pack 3.

To resolve this problem, obtain the latest service pack for Microsoft Office XP. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

307841 How to obtain the latest Office XP Service Pack


Note For information about updating Access 2002 Runtime applications, click the article number below to view the article in the Microsoft Knowledge Base:

839022 How to obtain the latest Office XP Service Pack for Access 2002 Runtime

Hotfix information

A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:

NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.

   Date         Time    Size        File name
   --------------------------------------------------------------
   23-Jul-2003  18:49   13,338,624  8563_intl_i386_zip.exe  
                


Note Because of file dependencies, the most recent fix that contains the previous files may also contain additional files.

After the hotfix is installed, the following files will have the listed attributes or later:

   Date            Time      Version         Size        File name
   ------------------------------------------------------------------
   2003-May-29     19:33     10.0.5328.0     5773896     MSACCESS.exe

                



WORKAROUND

To work around this issue, create a startup form that delays the process of opening the database. This prevents the database from immediately linking ODBC tables. To do this, follow these steps:

  1. Create an unbound form with the following properties:

    Form: frmDelay
    ========================
    Caption: Please Wait
    ScrollBars: Neither
    Popup: Yes
    Modal: Yes
    RecordSelectors: No
    NavigationButtons: No
    ControlBox: No
  2. Set the TimerInterval property of the form to 10000.
  3. Add the following code to the OnTimer event of the form:

    Private Sub Form_Timer()
         DoCmd.Close acForm, "frmDelay", acSaveNo
    End Sub
  4. Save the form as frmDelay.
  5. On the Tools menu, click Startup.
  6. In the Display Form/Page box, click frmDelay.
  7. Click OK.
  8. Close the database, and then reopen the database.


STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Office XP Service Pack 3 and Office XP Service Pack 3 for Access 2002 Runtime.

MORE INFORMATION

Steps to Reproduce the Problem

  1. Start Access 2002.
  2. Create two new Access 2000 databases (.mdb) that are named Db1.mdb and Db2.mdb.
  3. In Db1.mdb, set a reference to Db2.mdb by using Microsoft Visual Basic for Applications (VBA).
  4. Close Access, and then reopen Db1.mdb.
  5. Right-click in the Database window, and then click Link Tables.


Note You must perform this step immediately after you open the database.

  1. In the Files of Type box, click ODBC Databases().


Notice that you receive the error message that is in the "Symptoms" section.


Keywords: kberrmsg kbbug kbqfe kbstoprespond kbhotfixserver KB821809