I agree with Lupins46, you should definitely not go this way.
I will explain a bit more on how I maintain my multi-user DB's, of which some incorporates 80 users simultaneously.
When I want to add a new table, I just do so. I don't ask users to leave the app, since adding a table doesn't interfere (changing a table is another matter - than you need exclusive access).
When I'm finished with the work on the front-end, I click a menu button that disables the shift key, click another button th create the mde file (on the shared server). When done I again click the shift button, to re-enable it.
Two more things need to be done then:
1) change the name of the version file (***3A.txt becomes ***3B.txt)
2) change the *.bat file. In the batch file the old version file is checked, so simply find and replace 3A with 3B. I use a letter/number combi because it makes search & replace easier
In all deploying a new version takes less then a minute - if the compiling the mde doesn’t take to long.
By the way, my users do not have a shortcut to the mde file, instead they have a shortcut to the batch file that is also on the server. This guarantees me that when I change the batch file everybody will have the proper file.
I was bit hasty, so below is the batch file again in a more general form. This system works very elegant and is easy to use. The only trouble I have had so far in two years is a corrupt mdw file. But even this is easy to solve, change the startup link in the batch file to point to a backup mdw file and your back in business (in the corporate network I have no admin rights to the server, so I can’t delete the locking file myself). The only thing that I haven’t solved is the proper closing of the command window. Using API didn’t do the trick, it worked alright but in about 20% of the startups the database would freeze.
Let me now if you need more info on this subject, I’m glad to share.
Code:
echo off
c:
cd\
if not exist C:\FCM\ mkdir C:\FCM\
cd FCM
REM check the version file to see if a newer version exists
REM and copy the front-end if necessary
if not exist "My_versionfile_1A.txt" copy "N:\public_server_folders \MyCompiledFrontEnd.mde" "c:\FCM\ MyCompiledFrontEnd.mde "
REM Now also copy the version file if there is a newr on the server
if not exist "My_versionfile_1A.txt" copy "N:\public_server_folders \MyCompiledFrontEnd.mde" "c:\FCM\ My_versionfile_1A.txt "
REM If the mde file is not present on the local folder, than make a copy
if not exist "c:\FCM\ MyCompiledFrontEnd.mde " copy "N:\public_server_folders \MyCompiledFrontEnd.mde" "c:\FCM\ MyCompiledFrontEnd.mde "
REM Now start up the Database. Make sure the paths are correct:
"C:\Program Files\Microsoft Office\Office\MSACCESS.EXE" "c:\FCM\ MyCompiledFrontEnd.mde " /WRKGRP " N:\public_server_folders\SYS_MyWorkGroupFile.mdw"
exit