By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,192 Members | 1,253 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,192 IT Pros & Developers. It's quick & easy.

How to get into an OLD secured Access database?

Expert 5K+
P: 8,434
Hi all.

I have an application that I wrote ages ago - last compiled in 1998, I believe. It is still in occasional use. It uses an Access database - probably Access version 2, I think.

I implemented a fairly simple security model on the database way back then. As far as I can recall, I removed all access from the default Admins group and so on, and defined a couple of new groups for administrators (me) and users (everyone else). The application connects to the database using a user ID and password which are held in the code. (Yeah, not the most secure system in the world, but it didn't need to be).

The problem is, how on earth do I open the database now to pull out the data, or compact it, or make changes? I have the user IDs and passwords buried around here somewhere. But the whole security setup in Access has changed so I don't know how to make use of them.

I have a shortcut that I set up way back, to open the database for editing. It uses the technique of specifying the INI file to use, which in turn would have the user groups and stuff in it. The general syntax is...

"<path>\MSACCESS.EXE" /profile <app>.ini <mdbname>

I've dropped the path and the app-specific stuff here, of course. However, what happens when I try to run this now is that it complains:
The profile '<app>.INI' that you specified on the command line doesn't exist in the Windows Registry.
Then it opens the Access window and stops with the message:
You do not have the necessary permissions to use the <mdbname> object. Have your system administrator or the person who created this object establish the appropriate permissions for you.
When all this was set up, I don't think it required anything in the registry - just the INI file.

I will be searching places like MS and MSDN, but if anyone could give me a hint on where to look it would be most helpful.
Jan 30 '08 #1
Share this Question
Share on Google+
6 Replies


ADezii
Expert 5K+
P: 8,638
Hi all.

I have an application that I wrote ages ago - last compiled in 1998, I believe. It is still in occasional use. It uses an Access database - probably Access version 2, I think.

I implemented a fairly simple security model on the database way back then. As far as I can recall, I removed all access from the default Admins group and so on, and defined a couple of new groups for administrators (me) and users (everyone else). The application connects to the database using a user ID and password which are held in the code. (Yeah, not the most secure system in the world, but it didn't need to be).

The problem is, how on earth do I open the database now to pull out the data, or compact it, or make changes? I have the user IDs and passwords buried around here somewhere. But the whole security setup in Access has changed so I don't know how to make use of them.

I have a shortcut that I set up way back, to open the database for editing. It uses the technique of specifying the INI file to use, which in turn would have the user groups and stuff in it. The general syntax is...

"<path>\MSACCESS.EXE" /profile <app>.ini <mdbname>

I've dropped the path and the app-specific stuff here, of course. However, what happens when I try to run this now is that it complains:
The profile '<app>.INI' that you specified on the command line doesn't exist in the Windows Registry.
Then it opens the Access window and stops with the message:
You do not have the necessary permissions to use the <mdbname> object. Have your system administrator or the person who created this object establish the appropriate permissions for you.
When all this was set up, I don't think it required anything in the registry - just the INI file.

I will be searching places like MS and MSDN, but if anyone could give me a hint on where to look it would be most helpful.
In Access 2.0, one of the main functions of the *.INI File, (Typically MSACC20.INI), was to point to the System Library, (Default to SYSTEM.MDA), that attaches to Access when it is opened. The System Library that attaches to Access is determined by the line SystemDB = in the [Options] Section of the .INI File. I hate to be a Pessimist, but I think you are going to have a difficult time getting into the Access 2.0 Database unless you find the Administrative User Name/Password as well as the System Database. Should you find these, your best option may be to open the DB in Access 97, export the data to an ASCII Delimited Format, then Import it into a higher Version. Sorry I can't be more helpful in this matter.
Jan 31 '08 #2

Expert 5K+
P: 8,434
In Access 2.0, one of the main functions ...
Thanks for the response.

I do have the security details including Admin group/user/password, as well as the SYSTEM.MDA file. I'm just trying to find out how to use them. If I had Access 97 I'd try the suggestion. :(
Jan 31 '08 #3

Expert 5K+
P: 8,434
Thanks, to those who've responded via PM (you know who you are).

Rest assured, I'm not trying to circumvent the security on the database. I'm trying to find out how to use the security. I have the details of the relevant groups, usernames, passwords and so on. I just need to know how to make use of them with the later version of Access. If it's not too much work I'll look at converting the database to a later version, but for now I just need to have a play with it in Access.

Hm... I suppose one possibility might be to use the source code from the old application to open the database, and then run some code to remove the security. It's not really required (certainly not on the local copy I'll be playing with, at any rate). And I can always reapply a more up-to-date form of security later, if necessary.
Jan 31 '08 #4

Jim Doherty
Expert 100+
P: 897
Thanks for the response.

I do have the security details including Admin group/user/password, as well as the SYSTEM.MDA file. I'm just trying to find out how to use them. If I had Access 97 I'd try the suggestion. :(

What Access version do you have to open the version two file available to you currently? If you are running Acc 2000 then grab the WRKGADM.EXE (search for that it could be anywhere depending on your access version installation path) double click the wrkgadm.exe file and 'rejoin' the mda file you have then you should be able to at least gain access. Rejoining makes the current access installation run under that workgroup file so remember to swap it bck to the default SYSTEM.MDW file after you have done (MDA extension was swapped to MDW extension for workgroup files after version 2)

If it was a secured workgroup mda file ie one prompting for the password then you will be asked for the password when you try to open the file. If you get pass that point you will be asked to convert. Cancel off from any conversion and then create a new database and import all objects into the NEW database. You might want to try and convert its up to you but 16 bit code might hiccup somewhat. Either way I take i you merely want to get the objects out to see what you have

Regards

Jim
Jan 31 '08 #5

Expert 5K+
P: 8,434
Sorry, in a rush and don't have time to go through the prior post. Will do when I get home.

But I found this FAQ at MS' website which seems as though it might get me through. I need to dig up the old workgroup ID, user PID and so on at home to find out, though.
Jan 31 '08 #6

ADezii
Expert 5K+
P: 8,638
Sorry, in a rush and don't have time to go through the prior post. Will do when I get home.

But I found this FAQ at MS' website which seems as though it might get me through. I need to dig up the old workgroup ID, user PID and so on at home to find out, though.
This may help you also, Killer:
How to Unsecure a Secure Access Database
Jan 31 '08 #7

Post your reply

Sign in to post your reply or Sign up for a free account.