Hi, lidias13,
The following codes run ok under ACCESS2K on my PC.
'Get the Server Update Information and date
Set MyWsp = DBEngine.Workspaces(0)
Set MyDb = MyWsp.OpenDatabase(ServerFolder & "Update_Inform.mdb", False, False)
Set MyRst = MyDb.OpenRecordset("SELECT UpdateDate.* FROM UpdateDate;")
MyRst.MoveFirst
'Get the Update Date.
ServerUpdateDate = MyRst.Fields("Update_Date").Value
'Get the Database name need Updated.
TargetName = Trim(MyRst.Fields("Update_Item").Value)
MyRst.Close: MyDb.Close
'Get Local database update Date.
Set MyDb = CurrentDb()
Set MyRst = MyDb.OpenRecordset("TblUpdateDate")
MyRst.MoveFirst
LocalUpdateDate = MyRst.Fields("Update_Date").Value
If LocalUpdateDate = ServerUpdateDate Then MyRst.Close: MyDb.Close: GoTo Form_Load_Exit
If MsgBox("Your Database Need Update, Make it?", vbYesNo) = vbNo Then GoTo Form_Load_Exit
'Update the Update date table
MyRst.Edit
MyRst.Fields("Update_Last") = MyRst.Fields("Update_Date")
MyRst.Fields("Update_Date") = ServerUpdateDate
MyRst.Update
MyRst.Close: MyDb.Close
'Begin Update process.
Set MyDb = CurrentDb
DbName = CurrentDb.Name
LdbName = Left(DbName, Len(DbName) - 3) & "ldb"
MyDb.Close
If Dir("C:\WINDOWS", vbDirectory) = "" Then MkDir ("C:\WINDOWS")
BatFile = "C:\WINDOWS\UpdateMe.bat"
Open BatFile For Output As #1
Print #1, "@echo off"
Print #1, ":WaitLoop"
Print #1, "Echo"
Print #1, "if exist " & LdbName & " goto WaitLoop"
Print #1, "Echo"
Print #1, "Echo"
Print #1, "COPY %1" & TargetName & " " & DbName & " /Y"
Print #1, "Echo"
Print #1, "start " & DbName
Print #1, "Echo"
Print #1, "EXIT"
Close #1
Call Shell(Environ("COMSPEC") & " /C " & BatFile & " " & ServerFolder, vbHide)
Set MyRst = Nothing: Set MyDb = Nothing: Set MyWsp = Nothing
DoCmd.Quit acQuitSaveAll
Form_Load_Exit:
Set MyRst = Nothing: Set MyDb = Nothing: Set MyWsp = Nothing: Exit Sub
Form_Load_Err:
Resume Form_Load_Exit
End Sub
It's not the best one but can work.