System.mdw problem

G

Guest

Somehow my system.mdw (in the Windows32 subdirectory of Windows in WinXP) is
now the same as the .mdw of the last database I secured. The result is I
can't create a new unsecured databse by just joining System.mdw as I used to
be able to do.

How can I create a new system.mdw that permits an unsecured database. Or am
I misunderstanding the whole concept of system.mdw (i.e. I thought this was a
default that was used for unsecured, non-password protected databases).

Help!

Thanks,

Steve
 
K

Keith Wilby

Somehow my system.mdw (in the Windows32 subdirectory of Windows in
WinXP) is now the same as the .mdw of the last database I secured. The
result is I can't create a new unsecured databse by just joining
System.mdw as I used to be able to do.

How can I create a new system.mdw that permits an unsecured database.
Or am I misunderstanding the whole concept of system.mdw (i.e. I
thought this was a default that was used for unsecured, non-password
protected databases).

Hi Steve,

First, make sure that none of your secured applications are using
'system.mdw', then use the Workgroup Administration utility to create a new
one to overwrite it.

HTH - Keith.
www.keithwilby.com
 
G

Guest

Sorry Keith, but it's not clear to me how you do this -- I assume the utility
you're talkiing about is 'wkrgadm.exe', but I don't see how to create
'system.mdw' using that. I've only used it to join groups that were created
by Access when securing the database.

Steve
 
K

Keith Wilby

Sorry Keith, but it's not clear to me how you do this -- I assume the
utility you're talkiing about is 'wkrgadm.exe', but I don't see how to
create 'system.mdw' using that. I've only used it to join groups that
were created by Access when securing the database.

Yes, 'wkrgadm.exe' is the one. I've never had to re-create system.mdw but I
would have thought that it was exactly the same method as for any other mdw
file, except that, when you're prompted to save it you would browse to, and
overwrite, System32\system.mdw.

Regards,
Keith.
www.keithwilby.com
 
I

Immanuel Sibero

Hi

Again, make sure none of your secured applications is using the system.mdw.
In Access 2000, you could just rename the system.mdw (actually, I also tried
deleting it altogether). When you start Access, it wont find the system.mdw
and it will recreate it.


HTH,
Immanuel Sibero
 
G

Guest

Hi-
Interestingly enough, Access 2000 seems to work fine. My problem is with
Access 2002 and Access 97 (I have to have all of these because of clients
using different versions).

For Access 2002 when I join system.mdw it acts the same as the last
workgroup that I created and only opens with the logins and passwords from
that database.

I just discovered that I can't even open Access 97 any more. I get an error
message that C:\windows\system32\system.mdw in unrecognized or corrupt.

So I'm still stuck except for Access 2002. I'm stumped :(
 
I

Immanuel Sibero

Hi Steve,


Interestingly enough, Access 2000 seems to work fine. My problem is with
Access 2002 and Access 97 (I have to have all of these because of clients
using different versions).

For Access 2002 when I join system.mdw it acts the same as the last
workgroup that I created and only opens with the logins and passwords from
that database.


So you're getting in and out of different Access versions, and joining in
and out of different .mdw files using wkrgadm.exe?
Are you using the following in VBA's immediate window to make sure which
..mdw you're joined to?

? application.DBEngine.SystemDB

I remember being confused about this. I had 97, 2000, 2002, 2003, and a
whole bunch of system.mdw's all over the freaking place, and everytime I
started an Access session (i.e. whichever version I was working on), I was
never sure which system.mdw I was using.

I would use the above command to sort them all out. In other words, start
your Access sessions (different version at a time), and make a note of which
system.mdw you're joined to.


I just discovered that I can't even open Access 97 any more. I get an error
message that C:\windows\system32\system.mdw in unrecognized or corrupt.

I'm not sure about this, but A97 would probably read a system.mdw from later
versions. You might try placing another copy of a system.mdw into
C:\windows\system32\ folder.

Let me know what you find, I'd be interested too.



HTH,
Immanuel Sibero
 
6

'69 Camaro

Hi, Immanuel.
I'm not sure about this, but A97 would probably read a system.mdw from later
versions.

No. Access 97 uses Jet 3.5, which cannot read Jet 4.0 database formats.
All versions of Access from 2000 to 2003 use Jet 4.0. And yes, the
System.MDW file is a Jet database file.

To Steve:

If you don't have a backup, then you'll either need to reinstall Access 97
to get the default System.MDW file, or else copy one from another computer
that has Access 97 installed. Access 97 doesn't "regenerate" corrupted or
missing default System.MDW files, like later versions can.

HTH.

Gunny

See http://www.QBuilt.com for all your database needs.
See http://www.Access.QBuilt.com for Microsoft Access tips.

(Please remove ZERO_SPAM from my reply E-mail address, so that a message
will be forwarded to me.)
 
G

Guest

Thanks for the tip. That was very helpful. I find that part of the problem
is that I was running wrkgadm.exe outside of Access and that was incorrectly
reporting that I had joined system.mdw, for example, when I really hadn't.
When using the VBA immediate window test I could see that problem. I then
found that joining the security group from WITHIN Access works fine and
correctly reports the group I'm really in.

Thanks to all
 
I

Immanuel Sibero

Hi Gunny,

No. Access 97 uses Jet 3.5, which cannot read Jet 4.0 database formats.
All versions of Access from 2000 to 2003 use Jet 4.0. And yes, the
System.MDW file is a Jet database file.

Thanks for the confirmation. That makes sense.

Immanuel Sibero
 
I

Immanuel Sibero

Hi Steve,

Glad it helped. As I said before, I had an issue with this with A97 and
A2000. You would also notice that running wrkgadm.exe outside of Access can
be tricky. One wrkgadm.exe comes with A97 (v. 7.xx), another wrkgadm.exe
comes with A2000 (v. 9.xx). From Gunny's information above, I'm assuming one
creates Jet 3.5 mdw while the other creates Jet 4.0 mdw.

Since the name of the two files are the same, weird things can happen:
- You could be in A97 wrkgadm.exe thinking that you're working on A2000.
- You could be in A2000 wrkgadm.exe thinking that you're working on A97.
This might explain the problem with your A97. You might have overwritten A97
system.mdw (Jet 3.5) using A2000 wrkgadm.exe (which creates Jet 4.0 mdw).
Just a guess.


Immanuel Sibero
 
L

Lynn Trapp

This might explain the problem with your A97. You might have overwritten
A97
system.mdw (Jet 3.5) using A2000 wrkgadm.exe (which creates Jet 4.0 mdw).
Just a guess.

This is one of the reasons we HIGHLY recommend renaming the workgroup file
used to secure a database (or databases) to something other than
"system.mdw." You should only one file on your computer named "system.mdw"
and it should be the one that ships with Access. Any other .mdw file should
have a different name.
 
6

'69 Camaro

Hi, Steve.

Now that you've successfully disabled Access 97 on your computer, here are
some more tips:

1.) When posting a question, please reveal which version of Access you are
using and what other versions are also installed on your computer. If you
don't, responders may have to guess which version you are using and may give
you advice that is applicable to the version that they are most familiar
with, but which does not apply to the version you need help with.

For example, your first post in this thread mentioned that the System.MDW
file was located in C:\Windows\System32 directory. An experienced Access
developer of multiple versions of Access, including Access 97, knows that
there's only one version that places the default workgroup information file
in this directory: Access 97 (so that Office 97 could be run from the
network or from a CD), and would have given you appropriate advice for
Access 97. Because you didn't mention the version, both initial responders
guessed you were using a more recent version and gave appropriate advice for
those versions, not Access 97.

If Keith had known you were having problems with the default workgroup
information file in Access 97, he never would have given you the advice that
he did. If you followed his advice with the Access 97 Workgroup
Administrator, you wouldn't have succeeded (I'll explain why in a moment).
If you followed his advice with any other version of the workgroup
administrator, then you would have been able to overwrite the Access 97
default System.MDW file with a custom Jet 4.0 workgroup information file.
Any attempt to open Access 97 after that would result in an "Unrecognized
database format" error message because Access 97 cannot read Jet 4.0
databases. Neither of these situations would help solve your initial
problem.

The reason you wouldn't be able to simply create a "new" default System.MDW
file in Access 97 in the same directory is because the Access 97 Workgroup
Administrator uses the default System.MDW file to create all other workgroup
information files. It copies the default System.MDW file to create the new
workgroup information file, because this workgroup information file is where
many of the user's preferences (Tools menu -> Options) and definitions of
custom toolbars are stored -- not in the Windows Registry, as in later
versions of Access. If there's something wrong with Access 97's default
System.MDW file, one needs to replace it with a backup or reinstall Access
97 to get a fresh one. If "what's wrong" is merely that user-level security
was unintentionally added, then the user-level security can be removed from
this workgroup, but it's usually less effort to restore from a backup.
I find that part of the problem
is that I was running wrkgadm.exe outside of Access and that was incorrectly
reporting that I had joined system.mdw, for example, when I really hadn't.

2.) The Workgroup Administrator correctly reported whatever workgroup
information file you were currently joined to for _that_ version of Access.
There is a Workgroup Administrator application for every version of Access.
If you join a workgroup with the Access 2002 Workgroup Administrator and
then open Access 2000, Access 2000 will use whatever workgroup information
file you are currently joined to for _Access_2000_, not Access 2002. Since
you have multiple versions of Access on your computer, you need to manage
these versions and the workgroup assignments. Perhaps an appropriately
labeled shortcut for each version of the Workgroup Administrator on your
desktop would help: WkGrp Admin 97, WkGrp Admin 2K, and WkGrp Admin XP.
And confirming which workgroup you are joined to after opening Access is an
excellent idea when using multiple versions of Access and secured
workgroups.

3.) Do you often have the "Please wait while Windows configures Microsoft
Access 2000" message displayed when opening Access 2000 after having used
Access 97 (at least before you disabled it)? If so, then after you fix the
default System.MDW file so that Access 97 will once again work on your
computer, take a look at the C:\Program Files\Microsoft
Office\Office\MSACCESS.SRG file. (This is the default directory, so look in
whatever directory your Access 97 executable has been stored.) If this file
contains anything, then rename this file to something like MSAccessSRG.Old,
then create an empty file called MSACCESS.SRG in this same directory. This
will stop Access 97 from re-registering itself every time it starts up and
speed up the time it takes to open an Access 97 database, as well as the
first time an Access 2000 database is opened after Access 97 is used.

4.) Use the Access 2002 Workgroup Administrator to join a workgroup
information file that does not have a password set for the Admin user, then
open the Access 2002 database file. Or just use a shortcut that includes a
specific workgroup file when opening the database. If the Access 2002
default System.MDW file has a password set for the Admin user (it
shouldn't), then you need to remove the password in order to not be prompted
for your UserID and password every time you open a database with Access
2002.

HTH.

Gunny

See http://www.QBuilt.com for all your database needs.
See http://www.Access.QBuilt.com for Microsoft Access tips.

(Please remove ZERO_SPAM from my reply E-mail address, so that a message
will be forwarded to me.)
 
6

'69 Camaro

After re-reading my post, I realize that I forgot to make a correction. The
following sentence (paragraph 5, sentence 2):

"It copies the default System.MDW file to create the new workgroup
information file, because this workgroup information file is where many of
the user's preferences (Tools menu -> Options) and definitions of custom
toolbars are stored -- not in the Windows Registry, as in later versions of
Access."

should read as:

"It copies the default System.MDW file to create the new workgroup
information file, because of legacy architecture (the workgroup information
file is where many of the user's preferences (Tools menu -> Options) and
definitions of custom toolbars were stored in previous versions -- not in
the Windows Registry, as in later versions of Access)."

Sorry for any confusion. When poring over ancient documentation, I need to
remember to change present tense to past tense when referencing it.

HTH.

Gunny

See http://www.QBuilt.com for all your database needs.
See http://www.Access.QBuilt.com for Microsoft Access tips.

(Please remove ZERO_SPAM from my reply E-mail address, so that a message
will be forwarded to me.)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top