ACC2: No Permission for Utility.mda When Starting MS Access

Last reviewed: September 18, 1997
Article ID: Q174025
The information in this article applies to:
  • Microsoft Access 2.0

SYMPTOMS

Moderate: Requires basic macro, coding, and interoperability skills.

When you start Microsoft Access version 2.0, you may receive the following error message:

   No permission for '<path>\UTILITY.MDA'

This article assumes that you are familiar with Access Basic and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Access Basic, please refer to the "Building Applications" manual.

CAUSE

You have run an Access Basic procedure that removed the Admin user from both the Admins and Users group. Note that if you try to do this through the user interface instead of through code, you receive the following error message:

   Can't remove user from group 'Users.'

RESOLUTION

Quit Microsoft Access. In Windows Explorer or Windows File Manager, copy the current System.mda file into System.old. Then run Wrkgadm.exe and create a new System.mda file. You should now be able to start Microsoft Access.

To prevent this problem from occurring, follow these steps:

  1. Start Microsoft Access and open any database.

  2. On the Security menu, click Change Password. Assign a password to the Admin user account. The following procedure assumes that you have changed the Admin user's password to "password" (without the quotation marks).

  3. Create a new module and type the following procedure:

          Sub sectest ()
    
             Dim ws As WorkSpace
             Dim usr As User
             Dim grp As Group
             On Error GoTo Errorhandler
             Set ws = dbengine.CreateWorkspace("", "admin", "password")
             ' Create user NewAdmin and add to Admins group.
             Set usr = ws.CreateUser("NewAdmin", "xxx555", "identify")
             ws.users.Append usr
             usr.groups.Append ws.CreateGroup("admins")
    
             ' Remove Admin from Admins, Users group.
             ws.groups("users").users.Delete "admin"
             ws.groups("admins").users.Delete "admin"
    
             ' Log on again and add NewAdmin to Users group.
             ws.Close
             Set ws = dbengine.CreateWorkspace("", "NewAdmin", "identify")
             Set usr = ws.users("NewAdmin")
             usr.groups.Append ws.CreateGroup("users")
    
          Exit_sectest:
             Exit sub
    
          Errorhandler:
             Msgbox CStr(Err) & " " & Error(Err)
             Resume Exit_sectest
    
          End Sub
    
    

  4. Run this procedure and quit Microsoft Access.

  5. Restart Microsoft Access; enter "NewAdmin" as the log on name and "identify" as the log on password.

MORE INFORMATION

Steps to Reproduce Behavior

  1. In Windows Explorer or Windows File Manager, copy the current System.mda file into System.bak.

  2. Start Microsoft Access and open a new database.

  3. Open a new module and type the following code:

          Sub sectest ()
             Dim ws As WorkSpace
             Dim usr As User
             Dim grp As Group
             On Error GoTo Errorhandler
             ' Create user NewAdmin and add to Admins group.
             Set ws = dbengine.CreateWorkspace("", "admin", "")
             Set usr = ws.CreateUser("NewAdmin", "xxx555", "identify")
             ws.users.Append usr
             usr.groups.Append ws.CreateGroup("admins")
    
             ' Remove Admin from Admins, Users group.
             ws.groups("users").users.Delete "admin"
             ws.groups("admins").users.Delete "admin"
             ws.Close
    
             Exit_sectest:
                Exit sub
    
             Errorhandler:
                Msgbox CStr(Err) & " " & Error(Err)
                Resume Exit_sectest
          End Sub
    
    

  4. Close the database and quit Microsoft Access.

Note that when you attempt to restart Microsoft Access, you receive the error described in the "Symptoms" section.

REFERENCES

For more information, see Microsoft Access "Building Applications," version 2.0, Chapter 14, "Securing Your Applications," pages 340-344.


Additional query words: can't cannot start
Keywords : ScrtOthr ScrtUsr kberrmsg
Version : WINDOWS:2.0
Platform : WINDOWS
Hardware : x86
Issue type : kbprb
Solution Type : kbworkaround


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 18, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.