Microsoft KB Archive/294301

= How to troubleshoot fatal system errors in Access 2002 running on Microsoft Windows 2000 =

Article ID: 294301

Article Last Modified on 9/15/2006

-

APPLIES TO


 * Microsoft Access 2002 Standard Edition

-



This article was previously published under Q294301



Moderate: Requires basic macro, coding, and interoperability skills.



For a Microsoft Access 2003 version of this article, see 825444.

This article applies to a Microsoft Access database (.mdb) and to a Microsoft Access project (.adp).



SUMMARY
''This article discusses the causes of fatal system errors in Microsoft Access 2002 when Access 2002 is running on Microsoft Windows 2000. This article first discusses a new error reporting tool in Microsoft Office XP that you can use to report errors that you experience in Access 2002 to Microsoft. Then, this article discusses the types of fatal errors that you may experience in Access 2002. You can use the steps that are discussed in this article to troubleshoot these errors.

Note This is a general article. The Microsoft Knowledge Base may have a specific article that addresses the exact error that you are experiencing. To see if a specific article exists, search the Microsoft Knowledge Base on the exact text of the error message. To search the Microsoft Knowledge Base, visit the following Microsoft Web site:''

http://support.microsoft.com/search/?adv=1

For more information about how to troubleshoot fatal system errors on Microsoft Windows Millennium Edition, click the following article number to view the article in the Microsoft Knowledge Base:

284152 How to troubleshoot fatal system errors in Access 2002 running on Windows Millennium



New Error Reporting tool
Most fatal errors that involve Access 2002 result in the following error message:

Microsoft Access has encountered a problem and needs to close. We are sorry for the inconvenience.

If you were in the middle of something, the information you were working on might be lost.

Please tell Microsoft about this problem.

We have created an error report that you can send to help us improve Microsoft Access. We will treat this report as confidential and anonymous.

To see what data this error report contains, click here.

When you receive this error message, Access 2002 allows you to collect and send the error information to Microsoft.

The error message contains an error signature that records such information as the program name, the error name, and the module name. Microsoft uses this information to further develop and improve Microsoft products.

If you have an Internet connection that is active when you receive this error message, you can send this information directly to Microsoft by using the Office Application Error Reporting tool. If you choose to report this information, the tool verifies whether a solution to the problem is available. If a solution is available, Microsoft sends the solution information back to you.

If you choose not to use the Office Application Error Reporting tool, you can use the information in the error signature to search the Microsoft Knowledge Base directly. For more information about how to use the error reporting dialog box, click the following article number to view the article in the Microsoft Knowledge Base:

289508 How to view error signatures if an Office program experiences a serious error and quits

For more information about end-user reporting and privacy, click the following article number to view the article in the Microsoft Knowledge Base:

283768 Description of the end user privacy policy in application error reporting when you are using Office

This rest of this article describes how you can determine the exact problem description when you receive this error message. This article also discusses how to troubleshoot the error. Additionally, this article discusses some instances where a fatal error may not result in this message.

Fatal system errors
Usually, a fatal system error, which may be an invalid page fault, a STOP error, a fatal exception error, or an application exception error, will cause a Windows-based application such as Access 2002 to stop responding or to fail. This article focuses on such errors in Windows 2000. In some rare cases, such an error may cause your operating system to stop responding. Overall, there are two basic causes for fatal errors:
 * Something unexpected has happened within the Windows environment, typically an improper memory address. For example, an application or a Windows component might read or write to a memory location that has not been allocated to it (memory that it does not own), potentially overwriting and corrupting other program code in that area of memory.
 * Parameters that are not valid have been passed between applications and the Windows environment. Invalid parameters can cause execution of invalid instructions, resulting in page faults. This is usually the result of the application's internal program code incorrectly passing specific data that could not be correctly interpreted by Windows or a Windows-based application.

Because these causes are general, you may have to try several troubleshooting steps to find the specific cause of such an error in Access 2002. You can begin by investigating the following application-related problems:
 * A confirmed bug in Access 2002
 * A damaged database or fragmented database
 * A corrupted database
 * Incorrect registry settings
 * Mismatched dynamic link libraries (*.dll files)

If you determine that the cause is none of these, you can investigate the following system-related problems:
 * A memory conflict
 * An incorrect or a crowded Temp folder
 * An incompatible or a corrupted video driver
 * A printer driver or printer settings problem
 * Incorrect virtual memory settings
 * Incorrect file-system settings
 * Hard disk fragmentation or disk errors

These application-related and system-related problems and the steps to troubleshoot them are discussed in the following sections.



Confirmed bug in Access 2002
Sometimes, a fatal system error can be caused a bug in an application. When this problem occurs, you may receive an error message that is similar to the following:

Microsoft Access has encountered a problem and needs to close. We are sorry for the inconvenience.

You can view details about the error by clicking the text click here. When you do this, you will see information such as what file was involved in the error and the memory offset at which the error occurred.

You can find more information about any known Microsoft Access problems that may cause fatal system errors by searching on the following words in the Microsoft Knowledge Base:

page fault

For additional information about examining error messages in Windows 2000, click the article numbers below to view the articles in the Microsoft Knowledge Base:

228753 Troubleshooting 'Stop 0x00000077' or 'KERNEL_STACK_INPAGE_ERROR'

256004 How to troubleshoot &quot;STOP 0x0000003F&quot; and &quot;STOP 0x000000D8&quot; error messages in Windows Server 2003, Windows XP, and Windows 2000

137539 General causes of STOP 0x0000007F errors

Note You can paste most Windows 2000 error messages to the Clipboard in a text format by pressing CTRL+C. Pressing CTRL+C converts the error message to text and copies it to the Clipboard. You can then paste the message into another program, such as Notepad. Note that you may not be able to capture all error messages. Also, you may not be able to capture dialog boxes that contain graphics.

Damaged or fragmented database
If the fatal system error occurs only when you open or use a particular database file (*.mdb), try to use the Compact and Repair Database command in Access 2002 to correct any potential problems that have been caused by damage to the database or by excessive fragmentation of the database structure. To do this, follow these steps:
 * 1) Close the database. If you are in a multiuser environment, confirm that all users have also closed the database.
 * 2) Make a backup copy of the database. You can use Windows Explorer to do this. However, we recommend that you routinely copy the database to another medium, such as to another drive, to backup tape, to a removable hard disk, or to a network drive for safe keeping. It is also a good idea to create a backup of the workgroup information file (*.mdw file). Access 2002 stores each user's preferences and security account information in this file. If you have implemented Access security, and this file is lost or damaged, you may not be able to start Access 2002 until you restore or rebuild this file.

Note You can also back up individual database objects by creating a blank database and then importing the objects that you want from the original database.
 * 1) On the Tools menu, point to Database Utilities, and then click Compact and Repair Database.
 * 2) Specify the name and the location of the database that you want to repair.

Note It is a good idea to regularly run the Compact and Repair Database command.

If the database still behaves unpredictably after you run the Compact and Repair Database command, or if you receive a fatal system error, either immediately or after continued use, try the additional troubleshooting steps that are described in this article to find the cause of the page fault.

Corrupted database
If the Compact and Repair Database command does not solve unpredictable behavior or application-related fatal system errors, try to create a new database. Import objects from the old database into the new database. Then, compile all the modules in the new database.

Note This method is not recommended if your database is a replica in a replica set. If your replica is corrupted, you should create a new replica from the Design Master.

To create a new database and to import objects from the old database, follow these steps:  Create a new Access 2002 database. On the File menu, point to Get External Data, and then click Import. In the Import dialog box, click Microsoft Access (*.mdb) in the Files of type list. In the Look in box, select the drive and the folder that stores the old Microsoft Access database that you want to import. Click the file, and then click Import.</li> Click one or more objects to import. You may want to select only one or a few objects at a time to make it easier to identify any corrupted objects.</li> Click OK to import the selected objects. If an object generates an error while the object is being imported, the object is probably damaged beyond repair. At that point, you should import the object from a backup database or re-create the whole object. The error may have kept other objects from being imported. Repeat steps 2 through 6 until you have imported all the other objects into the new database. One method is to import all tables, then all forms, then reports, and so on. If an error occurs within a group of objects, try to import smaller blocks of objects or try to import one object at a time, depending on how many object you have, from that group until you find the object or the objects that cause an error.</li> Compile all the imported modules in the new database. To do this, follow these steps: <ol style="list-style-type: lower-alpha;"> In the Database window, click Modules.</li> Select a module, and then click Design.</li> On the Debug menu, click Compile  with the columns Variable and Value, respectively. These are the TMP and TEMP environmental settings. Examples of valid settings are the following:

TEMP = C:\TEMP

TMP = C:\TEMP

If these entries are not there, follow these steps: <ol style="list-style-type: lower-alpha;"> Click New. In the Variable Name box, type TEMP .</li> Press TAB to move to the Variable Value box, and then type C:\Temp (or any other valid path and folder name).</li> Click Set or OK to add these values to the User Variables for  box.</li></ol> </li> To create the TMP environment variable, repeat steps a through c.</li> Click OK to close the Environment Variables dialog box, click OK to close the System Properties dialog box, and then close Control Panel.</li> Start Windows Explorer and look for a folder with the same name and location as was listed in the User Variables for  box. If the folder does not exist, create it. An invalid temp setting can have serious effects on Microsoft Access. If you find that the folder indicated by the environment variable does not actually exist, either open Windows Explorer and create a new temp folder in that location, or repeat steps 1 through 3 to update the TEMP environment variable to a valid location.</li> Verify that the drive containing the TEMP folder has sufficient free disk space. Generally, you should make sure that the amount of available free space on the drive where the TEMP folder is located is at least twice the size of the largest database that you may open on this computer. For example, if your largest Access database file is 7 megabytes in size, make sure the drive on which the TEMP folder resides has at least 14 megabytes of free disk space.</li> Verify that the TEMP folder is empty. If files exist, you can delete any *.tmp files that are not currently in use. These files usually have a modified date earlier than the current session of Windows.

Note It is recommended that you quit all Windows programs before deleting any *.tmp files.</li></ol>

Disk Cleanup utility
In Windows 2000, you can delete many unused or temporary files with the Disk Cleanup utility. Disk Cleanup searches your hard disk, and then shows you temporary files, Internet cache files, and unnecessary program files that you can safely delete. You can direct Disk Cleanup to delete some or all of those files. To open the utility, click Start, point to Programs, point to Accessories, point to System Tools, and then click Disk Cleanup.

Video problem
Occasionally in Microsoft Access, you can experience page faults or unpredictable screen behavior because of a video driver conflict or an incorrect graphics hardware setting for your system.

Video driver conflict
To troubleshoot a video driver conflict, change your system's video adapter to Standard VGA, which should work with most monitors. To do this, follow these steps:
 * 1) Click Start, point to Settings, and then click Control Panel.
 * 2) Double-click Display.
 * 3) Click the Settings tab, and then click Advanced.
 * 4) On the Troubleshooting tab, move the Hardware Acceleration slider to the None setting (all the way to the left), and then click OK.
 * 5) Click OK again to close the Display Properties dialog box, and then close Control Panel.

Printer driver problem
If you receive a fatal error or experience printing problems when you try to print in Microsoft Access, try to use the Generic/Text Only driver. To do this, follow these steps:
 * 1) Click Start, point to Settings, and then click Printers.
 * 2) Double-click Add Printer, and then follow the instructions in the Add Printer Wizard to install the Generic/Text Only printer driver.
 * 3) Try to print from Microsoft Access with this driver.

Note If the printing problems exist for Generic/Text Only driver as well as another driver, the problem is most likely not driver-specific. However, if the printing problem seems to be corrected by using a different printer driver, follow these steps to remove and reinstall the first printer driver:
 * 1) Click Start, point to Settings, and then click Printers.
 * 2) Right-click the printer that you want to remove, and then click Delete on the menu that appears.
 * 3) If you are prompted to remove all the files associated with the printer, click Yes.
 * 4) Click Start, point to Settings, and then click Printers.
 * 5) Double-click Add Printer, and then follow the instructions in the Add Printer Wizard to reinstall the original printer driver.

Note If reinstalling the printer driver does not solve the printing problems, you can try using a different driver or the Generic/Text Only driver again. Also, you should contact the printer driver manufacturer to report the problem and find out if an updated driver is available.

Incorrect virtual memory settings
You can occasionally receive unexpected behavior in Microsoft Access when the virtual memory setting is too low for your system. Windows uses a dynamic virtual memory manager to handle swap file duties. You should use the default virtual memory settings whenever possible.

However, if you suspect that the unexpected behavior in Microsoft Access is caused by low virtual memory, you can try to manually change the virtual memory settings. If the maximum setting for virtual memory is already set, you may need to choose a different hard disk or remove files from the current hard disk to increase the amount of disk space reserved for extra memory. To increase the amount of hard disk space reserved for virtual memory, follow these steps:
 * 1) Click Start, point to Settings, and then click Control Panel.
 * 2) Double-click System.
 * 3) Click the Advanced tab, and then click Performance Options.
 * 4) Click Change, select a hard disk, and then adjust the Initial Size and Maximum Size settings as necessary. For information about these settings, click the question mark button ?, and then click the option about which you want information.
 * 5) Click Set, and then click OK.

Hard disk fragmentation or errors
A fatal system error may be the result of disk fragmentation or hard disk errors. If this is the case, try to run one of the following tools to correct the problem.

The Disk Error-Checking tool
This tool checks for file system errors and bad sectors on your hard disk. To run the tool, follow these steps:
 * 1) On the desktop, open My Computer, and then select the local disk that you want to check.
 * 2) On the File menu, click Properties.
 * 3) Click the Tools tab.
 * 4) Under Error-checking, click Check Now.
 * 5) Under Check disk options, click the Scan for and attempt recovery of bad sectors check box, and then click Start.

The Disk Defragmenter
This tool analyzes your disk to determine the level of defragmentation, and can also defragment it. To use this tool, follow these steps:
 * 1) Click Start, point to Programs, point to Accessories, point to System Tools, and then click Disk Defragmenter.
 * 2) Select the drive that contains your Microsoft Access folder, and then click Analyze or Defragment.

<div class="references_section">