Access 2003 Crashes on Vista not on XP.  Gee, there's a surprise!!

ButchDog used Ask the Experts™
Hi all.

I have a 2003 Access DB that works flawlessly on XP but crashes on Vista 32.
I have done all the microsoft updates.
It appears to crash on one particular form.
That form does have some basic code behind it that allows a button click to open a given report.

Any thoughts?
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
First decompile and recompile the db in Vista.


2) decompile: in run: msaccess "dbPathName.mdb" /decompile
   Compact/repair:  in run: msaccess "dbPathName.mdb" /compact
   compile: in VB editor: debug> compile

Second, when you double click on the db, make sure it is from a Window's folder. Some explorer programs have problems with Vista.

Third, if using A2007, make sure your database is in a "Trusted Location" or no code will run. More info:

Fourth, If you can identify one or a few forms or reports causing problems, copy the problem form/report from a backup.  Or copy and paste a new copy of the form/report then copy and paste the code from the old form/report into the new form/report.  If a module, copy the code, create a new module, paste the code into the new module.

Fifth, GET RID OF VISTA! I went to XP After two months of constant problems with Vista on my new computer.

Reference: Vista Compatibility Center:
Scott McDaniel (EE MVE )Infotrakker Software
Most Valuable Expert 2012
Top Expert 2014
Do you get any error messages during this crash? Something other than the "Access has encountered an error and must close" message?

Have you done all OFFICE updates? Go to the Office update site and make sure your Vista Office install is fully up to date.

Make sure you have a valid printer setup for the machine. I regularly run Access 2003 on Vista with no ill effects.

Make sure your references are correct on the Vista box. Open the database on the Vista box, open the VBA Edit window, then click Tools - References. See if any are marked as MISSING. If they are, you'll need to fix them on that machine.

And, while I would tend to agree with Nelson re: get rid of Vista, unfortunately that's just not possible. If you plan on deploying this to others, you'll almost certainly have to support Vista or Windows7 when it comes out later, and if your db won't run on Vista it almost certainly won't run on Win7 either.


Okay, thanks to all for their input.
Alas, so far nothing works.

I do have a valid printer attached although it's a network printer attached to another pc on the workgroup.
I tried decompiling, recompiling and compacting; no dice.
I get no error messages other than the one that says access has stopped working and is checking for solutions or that I don't have enough memory.  The latter doesn't happen often at all.

I copied the offending form, opened the vb editor and stripped out all the code.
It seemed to work fine better, though when I clicked on a button to open a report it crashed.

Now, out of the clear blue, it has gotten worse.
Now when I open the file, while holding the shift key down, and doing nothing, just let it sit at the Access DB page, it pops an error message that says "file not found".
I click on ok and that box just keeps appearing.   I have to kill the app to get it to close.
When I click on help it shows error 53.
The weird thing is that, before it crashes it's doing NOTHING!!!
I have no forms open.  I've run no reports...

Man, this is getting worse.
Meanwhile, the exact same db works perfectly on XP.

Any further thoughts?
How to Generate Services Revenue the Easiest Way

This Tuesday! Learn key insights about modern cyber protection services & gain practical strategies to skyrocket business:

- What it takes to build a cloud service portfolio
- How to determine which services will help your unique business grow
- Various use-cases and examples


A bit more info.
I created a new db.
I imported all the tables, queries, macros etc.
No problem except when importing a few of the forms, one of which was the copy of the main form I created for troubleshooting purposes.
This form has all the VB code stripped out of it, yet it still crashes Access when I try to import it.

This is a really large, complicated form and I'd really rather not rebuild it if I can avoid it.

I was thinking that the underlying relationships between the tables might have gotten corrupted somehow but the query that the form was bound to before I unlinked it runs just fine.

This is really frustrating!!

Thanks again.
You might be able to copy the large, complicated form in pieces. Highlight, copy a section, paste, repeat.

Is the new db causing the problem(s)?
Scott McDaniel (EE MVE )Infotrakker Software
Most Valuable Expert 2012
Top Expert 2014

If you do NOT copy the forms where you have troubles, does the new database work okay?

If so, you can try the undocumented SaveAsText and LoadFrom text:

In the Immediate window, type this:

Application.SaveAsText(acForm, "NameOfYourForm", CurrentProject.Path & "\NameOfYourForm.txt")

and press the Return key. Now delete that form, compact and repair, then open the Immediate window again and type this:

Application.LoadFromText(acForm, "NameOfYourForm", CurrentProject.Path & "\NameOfYourForm.txt")

Access should rebuild this form entirely from text, which can sometimes recover the form from corruption. If not, you'll have rebuild, as Nelson suggests, or import from a recent, known good backup.


Basically I abandoned troubleshooting efforts and upgraded the app.  I would like to award points to those who helped.


I would like to also add that the solutions offered were valid and good.
The fact that EE gave a grade of B in no way reflects the quality of the answers given.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial