ACC: Troubleshooting Invalid Page Faults in MS Access 95 and 97

Last reviewed: September 17, 1997
Article ID: Q148424
The information in this article applies to:
  • Microsoft Access versions 7.0, 97

SUMMARY

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

This article discusses the causes of invalid page faults in Microsoft Access 97 and Microsoft Access 7.0 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 environment:

  • 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 invalid instructions to be executed, 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 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 application-related problems:
  • A confirmed bug in Microsoft Access
  • A damaged database
  • A 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 application-related and system-related problems and the steps to troubleshoot them are discussed in more detail below.

Application-Related Problems

Confirmed Bug in Microsoft Access

An invalid page fault is occasionally caused by a bug in an application. In Microsoft Access 7.0, for example, there is a problem with the Visual Basic for Applications Development Environment (VBA232.dll version 2.0.5524), which can cause the following error message when you develop form modules:

   MSACCESS caused an invalid page fault in VBA232.dll

An update to Vba232.dll that fixes this problem is available. For information about how to obtain this update, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q147529
   TITLE     : ACC95: Updated Vba232.dll Available on MSL

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 7.0

   -or-

   page fault 97

Damaged Database

When you receive an invalid page fault in Microsoft Access, you should run the Repair Database command to correct any potential problems caused by damage to the structure or data of the current database.

To run the 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 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 desired objects from the original database.

  3. On the Tools menu, point to Database Utilities, and then click Repair Database.

  4. Specify the name and location of the database you want to repair.

NOTE: After using the 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.

NOTE: Run the Repair Database command only when the Microsoft Jet database engine returns an error message indicating that the Repair should be run. The Repair Database command should not be run under any other circumstances.

Fragmented Database

If a database's behavior is unpredictable or performance degrades over time, it may be using disk space inefficiently because it is fragmented. You can compact the database (using the Compact Database command) to defragment the file and free disk space.

To compact a database:

  1. Close the current database. If you are in a multiuser environment, confirm that all users have closed the database.

  2. On the Tools menu, point to Database Utilities, and then click Compact Database.

  3. In the Database To Compact From dialog box, specify the database you want to compact.

  4. In the Compact Database Into dialog box, specify a name, drive, and folder for the compacted database.

    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: The Compact Database command should be run on a regular basis.

Corrupted Database

If both the Repair Database and Compact Database commands fail to solve unpredictable behavior or application-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 recommend 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.

The general steps to do so are as follows:

  1. Create a new Microsoft Access 97 or Microsoft Access 7.0 database.

  2. On the File menu, click Get External Data, and then click Import.

  3. In the Import dialog box, make sure to select Microsoft Access (.mdb) in the Files Of Type box.

  4. Click the arrow to the right of the Look In box, select the drive and folder where the Microsoft Access database (.mdb) you want to import is located, and then double-click the database's icon.

  5. 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.

  6. Click OK to import the selected objects. If an object generates an error while being imported, than the object is probably damaged beyond repair. You will need to import the object from a backup database or to recreate the object from scratch.

  7. Repeat steps 2-6 until all the objects are imported into the new database.

  8. Compile all the imported modules in the new database. To do so, follow these steps:

        a. In the Database window, click the Modules tab.
    

        b. Select a module, and then click Design.
    

        c. On the Debug menu, click "Compile and Save All Modules" (or in
           Microsoft Access 7.0, on the Run menu, click Compile All Modules,
           and then on the File menu, click Save All).
    

  9. Close the new database and Microsoft Access.

NOTE: If your original database has references to library databases or type libraries, you should 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 application- 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 application-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. In Windows 95, click the Start button, and then click Run. (Or in Windows NT 3.51, click Run on the File menu in Program Manager or File Manager.)

  2. Insert the compact disc for Microsoft Access 97 or Microsoft Office 97 Professional Edition into the CD-ROM drive (or in Microsoft Access 7.0, insert Disk 1 of the Microsoft Access disks into a floppy drive on your computer. Or, insert the Microsoft Office Professional for Windows 95 compact disc into the CD-Rom drive).

  3. Type a command to run the Microsoft Access Setup program using the /y switch, for example:

          a:\setup /y
    

  4. In the Installation Maintenance Program box, click Reinstall. The Setup program updates the Windows Registry for Microsoft Access 97 or Microsoft Access 7.0.

  5. When Setup is complete, try again to start Microsoft Access. If you receive an invalid page fault or your database behaves unpredictably (either immediately or after continued use), you should try additional troubleshooting steps described in this article to find the cause.

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 <name>.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 Professional:
  • Microsoft Visual Basic version 4.0 with 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:

  1. Start Windows Explorer and 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.

  2. Uninstall Microsoft Access or Microsoft Office Professional 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:

        a. In Windows 95, click the Start button, point to Settings, and then
           click Control Panel.
    

        b. In Control Panel, double-click Add/Remove Programs.
    

        c. In the Add/Remove Programs Properties dialog box, select the
           program to uninstall, and then click Add/Remove.
    

        d. Follow the instructions to remove all of the program.
    

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

  3. Reinstall Microsoft Access and/or Microsoft Office Professional 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.

        a. Click the Start button, point to Settings, and then click Control
           Panel.
    

        b. In Control Panel, double-click Add/Remove Programs.
    

        c. In the Add/Remove Programs Properties dialog box, click Install.
    

        d. Follow the instructions to install the program on your computer.
    

  4. If you removed Microsoft SourceSafe, you can repeat step 2 to reinstall the SourceSafe component of Visual Basic (Enterprise Edition).

  5. If you removed all of Visual Basic, you can reinstall the program by repeating step 2.

  6. If you removed Microsoft Office Standard for Windows 95, you can reinstall the program by repeating step 2.

If you continue to receive invalid page faults after investigating application-related causes, you should try trouble-shooting the system- related problems, which are described below.

System-Related Problems

This section discusses system-related causes for invalid page faults in the Windows 95 operating system. 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. You should 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 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 95 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 in Safe Mode:

  1. Restart the computer. When the Starting Windows 95 message appears, press F8.

  2. Select the Safe Mode startup menu option (or press F5).

  3. Restart Microsoft Access and try to reproduce the invalid page fault.

    If you cannot reproduce the invalid page fault, then the cause is most likely system-related. To isolate the specific cause, you should 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 Help Topics.

    If you can reproduce the invalid page fault in Safe Mode, then you can try additional troubleshooting steps discussed in this article. Also, you can try to clean boot your computer. For information about how to perform a clean boot in Windows 95, please see the following article in the Microsoft Knowledge Base:

          ARTICLE-ID: Q136337
    
          TITLE     : Troubleshooting Windows 95 Startup Problems and
                      Error Messages
    
    
For more information about files loaded when starting Windows 95 in Safe Mode, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q122051
   TITLE     : 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:

   Windows 95:

   1. Restart your computer. Press the F8 key when you see the "Starting
      Windows 95" message, and then choose "Safe mode command prompt
      only."

   2. Type "set" (without quotation marks) and press ENTER. Note the
      location of the Temp variable.

   3. 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

   4. 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 application may be using one of these files.

   5. If the computer has a reset button, press it now. Otherwise, press
      CTRL+ALT+DELETE to restart the computer, which will start Windows 95
      in normal mode.

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, you should change your
   system's video adapter to Standard VGA, which should work with most
   monitors. To do so, follow these steps:

    1. Click the Start menu, point to Settings, and then click Control
       Panel.

    2. Double-click the Display icon.

    3. In the Display Properties box, click the Settings tab.

    4. Click the Change Display Type button.

    5. Click the Change button for the Adapter type.

    6. Select the Show All Devices Button.

    7. Select the first item in the Manufacturer's list: (Standard
       display types).

    8. In the Models list, select Standard Display Adapter (VGA).

    9. Click OK.

   10. Close the Display Properties dialog box. When you are asked to
       restart your computer, click Yes.

   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
   uses your video card, you can try modifying the graphics hardware
   settings. To do so, follow these steps:

   1. Click the Start button, point to Settings, and then click Control
      Panel.

   2. Double-click the System icon.

   3. Click the Performance tab, and then click the Graphics button in
      the Advanced Settings section.

   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 more information about troubleshooting video problems, please see the following article in the Microsoft Knowledge Base:

      ARTICLE-ID: Q127139
      TITLE     : Troubleshooting Video Problems in Windows 95

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. To do so, follow these steps:

  1. Click the Start button, 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:

  1. Click the Start button, point to Settings, and then click Printers.

  2. Use the right mouse button to click the printer 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 the Start button, point to Settings, and then click Printers.

  5. Double-click the Add Printer icon and 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 95 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 the Start button, point to Settings, and then click Control Panel.

  2. Double-click the System icon.

  3. Click the Performance tab, and then click the Virtual Memory button.

  4. Click the "Let me specify my own Virtual Memory Settings" button.

  5. Select a hard disk, and then increase the minimum and maximum settings as necessary.

  6. Click OK.

For more information about virtual memory in Windows 95, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q128327
   TITLE     : How Windows 95 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 the Start button, 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, Accessories, System Tools, and 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, Accessories, System Tools, and click Disk Defragmenter.

  2. Select the drive that contains your Microsoft Access folder and click OK.

  3. In the Disk Defragmenter box, click Start.

REFERENCES

Microsoft Windows 95 Resource Kit. Redmond, Washington: Microsoft Press, 1995.

Microsoft Jet Database Programmer's Guide. Redmond, Washington: Microsoft Press, 1996.

For more information about specific invalid page fault error messages, please see the following articles in the Microsoft Knowledge Base:

   ARTICLE-ID: Q141222
   TITLE     : ACC95: "Invalid Page Fault in VBA232.DLL" Error Message

   ARTICLE-ID: Q141293
   TITLE     : ACC95: "Invalid Page Fault in MSSETUP.DLL" Error Message

   ARTICLE-ID: Q140121
   TITLE     : OFF7: Setup Errors with Reinstallation of Small Business
               Pack

   ARTICLE-ID: Q141626
   TITLE     : ADT/ODE: Invalid Page Fault in Module ACMESETUP.EXE

   ARTICLE-ID: Q163349
   TITLE     : PRA: IPF Adding DB with Large Number of Objects to VSS 4.0

   ARTICLE-ID: Q163352
   TITLE     : ACC97: IPF After Changing Toggle Buttons in Option Group

   ARTICLE-ID: Q163056
   TITLE     : PRA:  Access IPF Using Find on Object That Is Checked In


Additional query words: tshoot ipf
Keywords : EvnOthr kbenv
Version : 7.0 97
Platform : WINDOWS
Hardware : x86
Issue type : kbtshoot


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: September 17, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.