RSteeg
asked on
Access database doesn't always open in shared mode
I have a split access database that is shared by 6 users. I have put a copy of the "Frontend" database on each of their computers with a desktop shotcut to open it. The problem is that when they use the shortcut, the "backend" database sometimes opens in an exclusive mode. Is there some way I can guarantee that the database opens in a non-exclusive mode?
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
I once had this problem -I tried deleting the tableDefs and re-linking them after the FrontEnd was opened but this screwed up my objects -Queries, Forms and possibly Reports. peter57r said that its possible a usere does not have full permissions to the Folder -which means when they open the MDB FrontEnd, and the Link to the tables is refreshed, the LDB for the BackEnd is not created -locking everyone else OUT!
ASKER
I have changed the permissions on the folders containing these db's, and the problem still persists.
Does it make any diference whether the user opens the database from the shortcut or just by double-clicking the front-end file?
ASKER
All of the users open the front end db, which is local on their C drive with a shortcut I put on their desktops. The frontend db's are linked to the backend tables which are on a shared network drive. All of the users have been given full control of the directory containing the backend db.
May I suggest that you do 2 things..
1. Change the short cut properties to force /runtime eg: change properties to:
"C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.E XE" /runtime \\UNCFilePath\DBFrontEnd.m de
This will ensure users only open the DB in /runtime.
2. Add some code to your startup form to test if the DB has been opened in /runtime, if not, kick them out. I sue the following code in my DB's
You will note it is also doing a test against strUser (current login), so if I am in it I can open in Exclusive mode should I need to, although I only ever open the live version in runtime.
I hope this helps.
Kev
1. Change the short cut properties to force /runtime eg: change properties to:
"C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.E
This will ensure users only open the DB in /runtime.
2. Add some code to your startup form to test if the DB has been opened in /runtime, if not, kick them out. I sue the following code in my DB's
If SysCmd(acSysCmdRuntime) = False Then
If sysSecurityBackDoorCheck(strUser) <> True Then
MsgBox "You can not run this application OUTSIDE of the runtime environment." & vbCrLf & vbCrLf & "You are likely to receive this error message if you have full version MS Access loaded on your profile." & vbCrLf & vbCrLf & "Opening the BRT in exclusive mode prevents other users from logging in." & vbCrLf & vbCrLf & "This instance will now shut down."
DoCmd.Quit acQuitSaveNone
Else
MsgBox "You can not run this application OUTSIDE of the runtime environment." & vbCrLf & vbCrLf & "You are likely to receive this error message if you have full version MS Access loaded on your profile." & vbCrLf & vbCrLf & "Opening the BRT in exclusive mode prevents other users from logging in." & vbCrLf & vbCrLf & "You are a system developer, you may open in Exclusive Mode"
End If
End If
You will note it is also doing a test against strUser (current login), so if I am in it I can open in Exclusive mode should I need to, although I only ever open the live version in runtime.
I hope this helps.
Kev
I just noticed this post is well over a year old.... pmsl