Ok so picture this...
each time your user adds a record, or opens a form, an event is triggered yeah?
So.. for each one of these events that contains code call a seperate function. This function should capture who the user is, and what time the event was fired and stick that info into a table.
Then, you have a seperate form, opened on startup and not closable by the user, that has a timer on the form set to one second.. every time that timer is hit run some code to check the Dmax() (latest) time entry for that user in the above table.. If that time is greater than 5 miniutes.. run the APplication.Quit bit and voila.
COuple of points to the negative.
1) Doing this on every single event posible will be unrealistic.
2) Doing it on all your current events that contain code will still be labour intensive
3) You cannot capture events such as openeing tables or queries, when done so directly from the Database Window, nor events such as changing data in a table, unless its done through code.
The other said solution could possibly use the windows API.. but this would mean that a user could have been working for hours on end in something like outlook (and not touch the access db)..
I'm not sure how else this could be done directly on an MDB.
Good luck!
------------------------
Hit any User to continue