Microsoft KB Archive/208488

= ACC2000: How to Troubleshoot Invalid Page Faults in Microsoft Access 2000 =

Article ID: 208488

Article Last Modified on 6/29/2004

-

APPLIES TO


 * Microsoft Access 2000 Standard Edition

-



This article was previously published under Q208488



Novice: Requires knowledge of the user interface on single-user computers.

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



SUMMARY
This article discusses the causes of invalid page faults in Microsoft Access 2000 and provides troubleshooting steps for solving invalid page fault errors.



MORE INFORMATION
There are two basic causes for an invalid page fault in the Windows 95/98 environment:
 * Something unexpected has happened in the Windows environment, typically an improper memory address. For example, a program 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 programs and the Windows environment. Invalid parameters can cause invalid instructions to be executed, resulting in page faults. This is usually the result of the program's internal program code incorrectly passing specific data that could not be correctly interpreted by Windows or a Windows-based program.

Because these causes are general, you may need to try several troubleshooting steps to find the specific cause of an invalid page fault in Microsoft Access. You can begin by investigating the following program-related problems:
 * A confirmed bug in Microsoft Access
 * A damaged or fragmented database
 * A corrupted database
 * Incorrect registry settings
 * Mismatched dynamic link libraries (DLLs)

If you determine that the cause is none of these, you can investigate the following system-related problems:
 * A memory conflict
 * A Temp folder (directory) problem
 * A video driver and settings problem
 * A printer driver and settings problem
 * Incorrect virtual memory settings
 * Incorrect file-system settings
 * Hard disk fragmentation or errors

These program-related and system-related problems and the steps to troubleshoot them are discussed in greater detail below.

Confirmed Bug in Microsoft Access
An invalid page fault is occasionally caused by a bug in a program.

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

page fault 2000

Damaged or Fragmented Database
When you receive an invalid page fault in Microsoft Access, you should run the Compact and Repair Database command to correct any potential problems caused by damage to the structure or data of the current database. If a database's behavior is unpredictable or performance degrades over time, it may be using disk space inefficiently because it is fragmented. Run the Compact and Repair Database command to defragment as well as repair the database.

To run the Compact and Repair Database command:
 * 1) Close the database. If you are in a multiuser environment, confirm that all users have closed the database.
 * 2) Make a backup copy of the database. Using Windows Explorer, My Computer, Microsoft Backup, the MS-DOS copy or backup commands, or other backup software, copy the database file (an .mdb file) to a backup medium of your choice.

NOTE: If you are backing up to a floppy disk, and your database file exceeds the size of the disk, you cannot use Windows Explorer or My Computer to back up your database; you must use Microsoft Backup, the MS-DOS backup command, or backup software so that you can copy the file over to more than one disk.

You should also create a backup of the workgroup information file. Microsoft Access stores each user's preferences and security account information in this file. If this file is lost or damaged, you won't be able to start Microsoft Access until you restore or rebuild it.

You can back up individual database objects by creating a blank database and then importing the objects 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 location of the database you want to repair. Click Compact. In the File name text box, type the name of the database, and then click Save.

NOTE: You can use the same name as the original for the compacted database file, or you can use a different name to create a separate file. If you use the same name, drive, and folder, and the database is compacted successfully, Microsoft Access automatically replaces the original file with the compacted version.

NOTE: After you run the Compact and Repair Database command, if your database behaves unpredictably or you receive an invalid page fault (either immediately or after continued use), you should try additional troubleshooting steps described in this article to find the cause of the page fault.

Corrupted Database
If the Compact and Repair Database command fails to solve unpredictable behavior or program-related invalid page faults, you can try creating a new database, importing objects from the old database, and compiling all 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, follow these steps:

 Create a new Microsoft Access 2000 database. On the File menu, click Get External Data, and then click Import. In the Import dialog box, select Microsoft Access (.mdb) in the Files of type box. In the Look in box, select the drive and folder where the Microsoft Access database (.mdb) file you want to import is located, and then double-click the database's icon. In the Import Objects dialog box, click one or more objects to import. You may want to select only a few objects at a time because this makes it easier to identify any corrupted objects. Click OK to import the selected objects. If an object generates an error while being imported, the object is probably damaged beyond repair. You will need to import the object from a backup database or to re-create the object from scratch.</li> Repeat steps 2 through 6 until all the objects are imported into the new database.</li> Compile all the imported modules in the new database. To do so, follow these steps: <ol style="list-style-type: lower-alpha;"> In the Database window, click the Modules tab.</li> Select a module, and then click Design.</li> On the Debug menu, click Compile .</li></ol> </li> Close the new database and Microsoft Access.</li></ol>

NOTE: If your original database has references to library databases or type libraries, make a note of the references. Then, in the new database, use the References command (in Design view of a module) to add the same references as the original database.

The next time you run Microsoft Access and open this new database, you should not have the problems of unpredictable behavior or program-related page faults, assuming the cause was a damaged, fragmented, or corrupted database. If you still have problems with the database, try additional troubleshooting steps described in this article to find the cause of the problem.

Incorrect Registry Settings
If the cause of an invalid page fault or unpredictable behavior in Microsoft Access is program-related, it may result from incorrect settings in the Microsoft Windows registry. You can reset or rebuild the registry settings for Microsoft Access by following these steps:
 * 1) Click Start, and then point to Settings. On the Settings submenu, click Control Panel.
 * 2) In the Control Panel window, double-click Add/Remove Programs.
 * 3) In the list of programs displayed, click Microsoft Office 2000, and then click Add/Remove. This will display the Microsoft Office 2000 Maintenance Mode window.
 * 4) In the Microsoft Office 2000 Maintenance Mode window, click Repair Office, and then follow the instructions to reinstall Microsoft Office.

Mismatched DLLs
Another cause of invalid page faults is mismatched dynamic link libraries (DLLs) in your Windows system. In this case, the library file listed in the error message is often an incorrect version for Microsoft Access, for example:

MSACCESS caused an invalid page fault in .dll

This problem of mismatched DLLs can occur sometimes if any of the following programs are installed on your computer when you set up Microsoft Access or Microsoft Office:
 * Microsoft Visual Basic version 4.0 with Visual SourceSafe (Enterprise Edition only)
 * Microsoft Visual Basic version 4.0 (Standard or Professional Edition)
 * Microsoft Office Standard for Windows 95

To resolve the problem of mismatched DLLs, follow these steps:

<ol> Start Windows Explorer, and then locate your \Windows\System folder. Search for the library file listed in the page fault error message, and then rename the library file to a unique name.</li> Uninstall Microsoft Access or Microsoft Office and any of the programs listed above that you had installed on your computer at the time that you received the error message. To do so, follow these steps: <ol style="list-style-type: lower-alpha;"> Click Start, point to Settings, and then click Control Panel.</li> In Control Panel, double-click Add/Remove Programs.</li> In the Add/Remove Programs Properties dialog box, select the program to uninstall, and then click Add/Remove.</li> Follow the instructions to remove all of the program.</li></ol>

NOTE: If you have Microsoft Visual Basic with Visual SourceSafe installed, you do not need to uninstall the Visual Basic program. Rather, you can remove only the SourceSafe component.

</li> Reinstall Microsoft Access and/or Microsoft Office by following these steps.

NOTE: Be sure to install Microsoft Access first and Microsoft Office second when you reinstall the two programs. This setup order is important to avoid the problem of mismatched DLL files on your system. <ol style="list-style-type: lower-alpha;"> Click Start, point to Settings, and then click Control Panel.</li> In Control Panel, double-click Add/Remove Programs.</li> In the Add/Remove Programs Properties dialog box, click Install.</li> <li>Follow the instructions to install the program on your computer.</li></ol> </li> <li>If you removed Microsoft Visual SourceSafe, you can repeat step 2 to reinstall the SourceSafe component of Visual Basic (Enterprise Edition).</li> <li>If you removed all of Visual Basic, you can reinstall the program by repeating step 3.</li> <li>If you removed Microsoft Office Standard for Windows 95, you can reinstall the program by repeating step 3.</li></ol>

If you continue to receive invalid page faults after investigating program-related causes, try troubleshooting system-related problems, which are described below.

System-Related Problems
This section discusses system-related causes for invalid page faults in the Windows 95 and 98 operating systems. If you run Microsoft Access under Windows NT, many of the troubleshooting concepts discussed in this section are still applicable. However, the step-by-step instructions for implementing them may be different. Consult your Windows NT documentation for more information about troubleshooting these system-related causes.

Memory Conflict
A common cause of invalid page faults is a memory conflict involving a device driver, terminate-and-stay resident (TSR) programs, a system component, or some other loaded file. To troubleshoot a memory conflict, the first step is restarting Windows 95 or 98 in Safe Mode.

Safe mode bypasses startup files, including the registry, Config.sys, Autoexec.bat, and the [Boot] and [386Enh] sections of the System.ini, and provides you with access to the Windows configuration files. Only essential system files and device drivers (such as mouse, keyboard, and standard VGA) are loaded. This makes Safe Mode useful for isolating and solving memory conflicts.

To start Windows 95 or 98 in Safe Mode:
 * 1) Restart the computer. When the "Starting Windows 95/98" message appears, press the F8 key.
 * 2) Select the Safe Mode option on the Startup menu (or press F5).
 * 3) Restart Microsoft Access, and then try to reproduce the invalid page fault.

If you cannot reproduce the invalid page fault, the cause is most likely system-related. To isolate the specific cause, restart your computer and step through the startup commands line by line. For more information about this technique, search for "step-by-step," and then "going through the startup commands line by line" using the Find option in the Windows 95/98 Help Topics. If you can reproduce the invalid page fault in Safe Mode, you can try additional troubleshooting steps discussed in this article. You can also try to clean boot your computer.

For additional information about how to perform a clean boot in Windows 95, click the article number below to view the article in the Microsoft Knowledge Base:

136337 Troubleshooting Windows 95 Startup Problems and Error Messages

For additional information about files loaded when starting Windows 95 in SafeMode, click the article number below to view the article in the Microsoft Knowledge Base:

122051 How Windows 95 Performs a Safe-Mode Start

Temp Folder Problem
You can sometimes experience unpredictable behavior in Microsoft Access when you do not have enough disk space for temporary files. You should periodically remove any leftover temporary files on your system. Also, make sure that you have at least 8-10 megabytes (MB) of free space on the hard disk that contains your temporary (Temp) folder.

To remove any remaining temporary files, follow these steps: <ol> <li>Restart your computer. Press the F8 key when you see the "Starting Windows 95/98" message, and then select Safe mode command prompt only.</li> <li>Type set, and then press ENTER. Note the location of the Temp variable.</li> <li>Change to the folder noted in step 2. For example, if Temp is set to C:\Windows\Temp, type the following line, and then press ENTER:

cd\windows\temp

</li> <li>Delete any temporary files in this directory. Temporary files typically have a .tmp extension. To delete these files, type the following line, and then press ENTER:

del *.tmp

NOTE: You should not delete these files from within the Windows graphical user interface (GUI) because Windows or a Windows-based program may be using one of these files.

</li> <li>If the computer has a reset button, press it now. Otherwise, press CTRL+ALT+DELETE to restart the computer, which will start Windows 95 or 98 in normal mode.</li></ol>

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. For additional information about changing your display adaptor to standard VGA, click the article number below to view the article in the Microsoft Knowledge Base:

135483 Windows 95 CD-ROM Display.txt File

If changing to the standard VGA display adapter solves the page fault or unexpected screen behavior problems in Microsoft Access, you should contact the manufacturer of the adapter to find out if an updated driver is available.

Graphics Hardware Settings
To determine if an invalid page fault is caused by the way Windows 95 or 98 uses your video card, you can try modifying the graphics hardware settings. To do so, follow these steps:
 * 1) Click Start, point to Settings, and then click Control Panel.
 * 2) Double-click the System icon.
 * 3) Click the Performance tab, and then click Graphics under Advanced Settings.
 * 4) Move the Hardware Acceleration slider to the None setting (all the way to the left), and then click OK.
 * 5) In the System Properties box, click OK.

For additional information about troubleshooting video problems, click the article number below to view the article in the Microsoft Knowledge Base:

127139 Troubleshooting Video Problems in Windows

Printer Driver Problem
When you try to print in Microsoft Access, if you receive an invalid page fault or experience printing problems, you can try the Generic/Text Only driver in Windows 95 or 98. To do so, follow these steps:
 * 1) Click Start, point to Settings, and then click Printers.
 * 2) Double-click the Add Printer icon, and 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: <ol> <li>Click Start, point to Settings, and then click Printers.</li> <li>Use the right mouse button to click the printer you want to remove, and then click Delete on the menu that appears.</li> <li>If you are prompted to remove all the files associated with the printer, click Yes.</li> <li>Click Start, point to Settings, and then click Printers.</li> <li>Double-click the Add Printer icon, 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. Contact the printer driver manufacturer to report the problem and find out if an updated driver is available.

</li></ol>

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 95/98 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 the unexpected behavior in Microsoft Access is caused by low virtual memory, you can try manually changing 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. You can increase the amount of hard disk space reserved for extra memory by following these steps:
 * 1) Click Start, point to Settings, and then click Control Panel.
 * 2) Double-click the System icon.
 * 3) Click the Performance tab, and then click Virtual Memory.
 * 4) Select the Let me specify my own virtual memory settings option.
 * 5) Select a hard disk, and then increase the minimum and maximum settings as necessary.
 * 6) Click OK.

For additional information about virtual memory, click the article number below to view the article in the Microsoft Knowledge Base:

128327 How Windows 95/98 Manages Virtual Memory

Incorrect File-System Settings
Unpredictable behavior in Microsoft Access may be caused (in rare cases) by incorrect settings for Windows file-system performance. To test these settings, you can try turning on or off file-system options such as Disable New File Sharing and Locking Semantics or Disable All 32-bit, Protected-Mode Disk Drivers."

To try different file-system settings:


 * 1) Click Start, point to Settings, and then click Control Panel.
 * 2) Double-click the System icon.
 * 3) Click the Performance tab.
 * 4) Click the File System button.
 * 5) Click the Troubleshooting tab.
 * 6) Set the options to different settings, and then click OK.

If modifying the file-system performance settings does not solve the unpredictable behavior in Microsoft Access, repeat the steps above to reset the file-system performance options to their original settings. Then, you can try other troubleshooting steps in this article to isolate the cause of the problems.

Hard Disk Fragmentation or Errors
If an invalid page fault is the result of disk fragmentation or hard disk errors, you can use ScanDisk and Disk Defragmenter (Defrag.exe) to correct the problem. To use ScanDisk, follow these steps:
 * 1) Click Start, point to Programs, point to Accessories, point to System Tools, and then click ScanDisk.
 * 2) Select the drive that contains your Microsoft Access folder.
 * 3) Click Thorough as the Type of Test option.
 * 4) Click Start.
 * 5) If errors are reported, be sure to let ScanDisk fix the problems.

To use Disk Defragmenter, 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 OK.
 * 3) In the Disk Defragmenter box, click Start.

Additional query words: tshoot ipf

Keywords: kbhowto kbinfo kbenv KB208488

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.