Microsoft Access, starting in Access 97 and continuing in Access 2000, has a fairly unique design that causes
it to re-register itself every it is run when it detects that it is not the "current" version of Access on the
machine.
Now, to me this makes no sense; if I have a machine where Access 2000 was the last installed, I think it
might be vaguely possible that this is the way I want it! Same goes for Access 97. But thats not the way Access
does it. But we can save the philosophical issue for another day; this INFO post is about making sure that
this minor weirdness avoids a fairly major annoyance. What is that annoyance? It is the lost of your default
SYSTEM.MDW choice in Access 97 occurring when this re-registration of Access 97 occurs.
If you look in the same directory of Access, you will find two .SRG ("SelfReg") files, msaccess.srg and
wizard.srg. These two files contain all of the registry keys that get rewritten when Access does this
re-registration. The second file (wizard.srg) only exists for retail Access; runtime Access does not have it.
In fact, the files are kind of misnamed, and would have been better to have been called retail.srg and
runtime.srg (don't change them though, the names must stay as they are). In any case, the last registry key
listed in wizard.srg is:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Access\Jet\3.5\Engines]
"SystemDB"="REG_SZ:\\SYSTEM.MDW"
This key causes the registry key that defines the default .MDW file used by Access to be rewritten to SYSTEM.MDW
in your system directory. This is obviously very lame since it is either already that, in which case it does not
need to be written, or it has been changed to a custom MDW file, in which case it shouldn't be written!
Never fear, there is an easy workaround: just remove these lines from the WIZARD.SRG file by opening it in
NOTEPAD and then save the file. From then on, running Access 2000 and then running Access 97 will not cause the
default system.mdw to be changed!
If you would like to keep other keys from being registered, you can (carefully!) remove them as well;
in fact, you can keep it from taking so long to run Access 97 by stopping it from registering the hundreds of
keys in these two files. The files themselves must be there, but you can keep them fairly empty, and you
will then find that Access 97 will start much faster than it used to after running Access 2000.
Now this may not get you what you want if you really are looking to keep Access 2000 from registering
itself as the default; all I can say is I am working on it, but changing what the Microsoft Installer does is
much harder than just editing some simple text files with an .SRG extension. But until I figure that out, this will
at least keep Access 97 from causing harm to itself, if you know what I mean.