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:
- Close the database. If you are in a multiuser environment, confirm that
all users have closed the database.
- 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.
- On the Tools menu, point to Database Utilities, and then click Repair
Database.
- 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:
- Close the current database. If you are in a multiuser environment,
confirm that all users have closed the database.
- On the Tools menu, point to Database Utilities, and then click Compact
Database.
- In the Database To Compact From dialog box, specify the database you
want to compact.
- 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:
- Create a new Microsoft Access 97 or Microsoft Access 7.0 database.
- On the File menu, click Get External Data, and then click Import.
- In the Import dialog box, make sure to select Microsoft Access (.mdb)
in the Files Of Type box.
- 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.
- 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, 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.
- Repeat steps 2-6 until all the objects are imported into the new
database.
- 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).
- 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:
- 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.)
- 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).
- Type a command to run the Microsoft Access Setup program using
the /y switch, for example:
a:\setup /y
- In the Installation Maintenance Program box, click Reinstall. The
Setup program updates the Windows Registry for Microsoft Access 97 or
Microsoft Access 7.0.
- 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:
- 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.
- 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.
- 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.
- If you removed Microsoft SourceSafe, you can repeat step 2 to
reinstall the SourceSafe component of Visual Basic (Enterprise
Edition).
- If you removed all of Visual Basic, you can reinstall the program by
repeating step 2.
- 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:
- Restart the computer. When the Starting Windows 95 message appears,
press F8.
- Select the Safe Mode startup menu option (or press F5).
- 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:
- Click the Start button, point to Settings, and then click Printers.
- Double-click the Add Printer icon and follow the instructions in the
Add Printer Wizard to install the Generic/Text Only printer driver.
- 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:
- Click the Start button, point to Settings, and then click Printers.
- Use the right mouse button to click the printer you want to remove,
and then click Delete on the menu that appears.
- If you are prompted to remove all the files associated with the
printer, click Yes.
- Click the Start button, point to Settings, and then click Printers.
- 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:
- Click the Start button, point to Settings, and then click Control
Panel.
- Double-click the System icon.
- Click the Performance tab, and then click the Virtual Memory button.
- Click the "Let me specify my own Virtual Memory Settings" button.
- Select a hard disk, and then increase the minimum and maximum settings
as necessary.
- 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:
- Click the Start button, point to Settings, and then click Control
Panel.
- Double-click the System icon.
- Click the Performance tab.
- Click the File System button.
- Click the Troubleshooting tab.
- 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:
- Click Start, point to Programs, Accessories, System Tools, and click
ScanDisk.
- Select the drive that contains your Microsoft Access folder.
- Click Thorough as the Type of Test option.
- Click Start.
- If errors are reported, be sure to let ScanDisk fix the problems.
To use Disk Defragmenter, follow these steps:
- Click Start, point to Programs, Accessories, System Tools, and click
Disk Defragmenter.
- Select the drive that contains your Microsoft Access folder and
click OK.
- 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