Problem logging users off to make changes

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have a database that I can't change unless I personally go to 150 machines
and log the users off. Email requests for all users to log off have been
futile. Is there anything I can do?

Nick
 
Hi Nick,

Few ideas off the top of my head...

You could use Shell to "Net Send" a message to the users. Net Send is modal
so the user can't complain that they haven't been informed - it might annoy
them but they have to click the OK/Cancel button to make it disappear. You'll
need to store the computer the user logged on from but that's not too much
hassle and user log tables are a good thing IMHO.

To actually log the user's off you'll need a hidden form in the frontend
with a timer which will be loaded at startup. This form will quit at a
specified time (store this time in a linked table that the frontends can
see). You should be able to set this time when you like, send out a message
to users that they can't claim they haven't seen and then their application
will quit at your specified time.

Cheers,

Stuart
 
ndunwoodie said:
I have a database that I can't change unless I personally go to 150
machines and log the users off. Email requests for all users to log
off have been futile. Is there anything I can do?

Nick

First off, your applicaton should be split into two files. A shared "data
only" file on the network with each user having a separate copy of a "front
end" file on their local disk. With this setup you can work on your own
copy of the front end and then simply distribute it when finished. Since
most design changes only affect the front end this solves most of your
problems.

For changes to the data file your problem would still exist so here is what
used to do when I had MDBs for the back end...

Open a hidden form at startup. In the Timer event of that form test for a
value in a table with a single row. When the table is empty you do nothing.
When you find a value present then you prompt the user that they need to
exit the database. Use a separate form for the message, not a MessageBox
(you can't close an app with a MesageBox open).

The form that tells them to close the app has a timer with a 5 minute
countdown displayed. The form has an [OK] button that only hides the form
rather than close it (so the countdown keeps running). If the user doesn't
exit the app then code in the message form automatically does it for them at
the end of the countdown.

At startup you check the same single row table and immediately display a
message and close the app when the table is not empty (this keeps new people
from coming in).

It's not fool-proof because a user might have walked away from his machine
with a MessageBox opened in which case your Auto-Close stuff will never have
a chance to fire, but it does work 99% of the time. You would also want to
get the free LDB Viewer program from Microsoft's web site. That will tell
you which users are still in the file after the five minutes is up.
 
Stuart

How do you get the form to launch at startup??? I am currently using the
TOOLS\STARTUP to auto launch my data base at start up. Is it possible to have
the startup feature start the data base as well as another form
simultaneously?
 
Rick

Tried to search for the LDB viewer on the microsoft site, however the
results were "unable to find"

Do you have the link for the viewer???

Rick Brandt said:
ndunwoodie said:
I have a database that I can't change unless I personally go to 150
machines and log the users off. Email requests for all users to log
off have been futile. Is there anything I can do?

Nick

First off, your applicaton should be split into two files. A shared "data
only" file on the network with each user having a separate copy of a "front
end" file on their local disk. With this setup you can work on your own
copy of the front end and then simply distribute it when finished. Since
most design changes only affect the front end this solves most of your
problems.

For changes to the data file your problem would still exist so here is what
used to do when I had MDBs for the back end...

Open a hidden form at startup. In the Timer event of that form test for a
value in a table with a single row. When the table is empty you do nothing.
When you find a value present then you prompt the user that they need to
exit the database. Use a separate form for the message, not a MessageBox
(you can't close an app with a MesageBox open).

The form that tells them to close the app has a timer with a 5 minute
countdown displayed. The form has an [OK] button that only hides the form
rather than close it (so the countdown keeps running). If the user doesn't
exit the app then code in the message form automatically does it for them at
the end of the countdown.

At startup you check the same single row table and immediately display a
message and close the app when the table is not empty (this keeps new people
from coming in).

It's not fool-proof because a user might have walked away from his machine
with a MessageBox opened in which case your Auto-Close stuff will never have
a chance to fire, but it does work 99% of the time. You would also want to
get the free LDB Viewer program from Microsoft's web site. That will tell
you which users are still in the file after the five minutes is up.
 
Back
Top