We have a microscope that our students are able to schedule exclusive time with. It's becoming obvious that some have requested time and then never show up. This frustrates a lot of others who are struggling to schedule time for their own projects and seeing it sit idle.

The microscope is controlled by vendor-specific software on a Windows 7 computer. The computer has a single user level account that is always logged in that everyone uses and I have an administrator account.

I would like a way to prompt the user for their student ID number, and then track the time the program is open and closed. This way we can go back and see who is requesting time and then not using it when others could be.

The prompt doesn't need to check against a database for authorized users, but shouldn't allow a blank entry either. It doesn't need to be complex or have specific security features either since I'm just using it to see who is NOT using the computer when they say they will.

It's a Dell Precision T7600 with dual XEON E5-2665 2.4Ghz, 128GB ECC RAM, and a Samsung 850 SSD. Performance is also a major issue so I don't want something that affects the computer.

I was thinking an easy way to do this was to replace the desktop shortcut to a custom app that gets run instead, which prompts the user, logs their input, and tracks the time the program is used, then runs the intended EXE and monitors how long it stays open. Logging into a remote SQL database would be ideal since I have an SQL server setup that is also logging other info.

I'm predominantly a Mac user with a PHP/SQL background so I also know my way around a terminal and writing bash scripts, but I don't even know which approach to take on this inside Windows.

Are there tools inside windows already that offer this? I have access to visual studio, and I'm not afraid to write a little code, but what language would be the most efficient way of doing this? Am I really just overthinking something so simple?

  • Why not have a paper log book at the side of the device that people fill in.
    – user9517
    Jul 3, 2016 at 21:46
  • This is the current system and it's not working. It's too easy to lie and say they forgot. I'm also wanting a long term solution that lets me look back over time and see trends.
    – Admish
    Jul 3, 2016 at 21:48
  • 1
    Have a chat with IT about tying the computer into your university's Active Directory so that users must log in with the same IDs they use for other campus resources. You can then track logins easily. Jul 3, 2016 at 21:52
  • 1
    @MichaelHampton In my experience the vendors of this type of equipment will only validate their software in a particular environment. That usually means that the system has to be standalone and pretty much left as supplied.
    – user9517
    Jul 3, 2016 at 21:55
  • 1
    Those are all easily enough solved problems for a halfway competent IT department. For instance, IT will issue guest IDs that visitors can use campus-wide. Recycle bins can be automatically emptied. The C: drive can be read-only so that users must always use the network share. And so on... Jul 3, 2016 at 22:00

1 Answer 1


I tend to agree with the comments above: this is clearly a people problem for which you're trying to find an IT solution. People problems need people solutions.

If I was you, I would stick with the paper logbook, and institute a two-strikes policy: the first time someone misses an appointment or forgets to log their time, they get a warning; the second time, they loose privileges for a month (or some period of time). I believe you'll find that is more than effective at correcting the student's "forgetfulness."

That being said, if you really want a technological solution, against my better judgement, you could start with any of the following:

  • Use something like SofTrack or a similar product designed to do software/license metering.
  • Use one of the many employee monitoring software packages available.
  • Use Windows security auditing to see when the pertinent program files are being accessed.
  • Write a program or batch file (a batch file would probably be easiest here) that prompts the user when the program is opened, and writes the information to a log file.
  • There are 142 people that have access to the lab. I'm trying to find an IT solution because there are too many factors to monitor manually. The schedule runs 24/7 and there is not always a supervisor around. It is next to impossible to see if someone actually showed up at 3am or not using a paper log or taking their word for it. A batch file is ideal, but I was looking for something a little cleaner that could append to a CSV or SQL located elsewhere on the network. "Windows security auditing" looks like the answer I was looking for. Thanks!
    – Admish
    Jul 3, 2016 at 23:03
  • No problem! With security auditing, you could just turn on "success auditing" on the application's .exe file, and then just enable logging via local group policy. Jul 4, 2016 at 0:03

Not the answer you're looking for? Browse other questions tagged .