?
Solved

Secure Timer Control

Posted on 1997-05-30
6
Medium Priority
?
201 Views
Last Modified: 2010-04-06
I have written a logon program that looks up the time left in your account (via TCP/IP) and then lets you use the PC for X number of minutes.

When your time is up the logon screen comes up again and blocks you from using the PC. The logon screen is quite secure (no ctrl- alt-del etc), but once you'ce logged in, it's possible to end the timer task.

Because the timer program sends message once a minute, the server knows very quickly, but I'd like to make it more difficult to shutdown the program. I've considered using a device driver - This is how I think it should work:

the device driver is loaded on startup.
when you press a certain key combination, the driver is invoked and brings up the logon box. you log in and when you run out of time, the driver brings up the logon box again.

Questions:
Does this sound like it can be implemented in this way?

Can you have a hotkey to bring up the logon box? How would this be done?

Would the logon box be part of the driver or a dll?

Would this driver be able to communicate via tcp/ip?

Thanks
Richard
PS. This is probably worth more points, but I'm a bit low right now!
0
Comment
Question by:richweed
  • 3
  • 2
6 Comments
 
LVL 3

Expert Comment

by:sperling
ID: 1336664
First of all... Is this Windows 3.1, 95 or NT

If we're talking win 95 and/or NT, I think I can give you some ideas on how to implement this, avoiding the driver which you can't write in Delphi anyway.

Regards,

Erik.
0
 

Author Comment

by:richweed
ID: 1336665
Win95
0
 

Expert Comment

by:barddzen
ID: 1336666
If you are wishing to use this in a Cafe or Network environment, there is a program available called Cyber-Time that may do the trick.It's URL is:  http://www.cybertimesoftware.comOtherwise, I've written several applications that do not allow the user to close the application.  All you have to do it place some code into the:QUERYUNLOAD() event of the main form.  Then you could set a conditional shutdown as you wish.  You'll notice there is a "Cancel" parameter that is boolean, to allow or disallow the application to close.If you wish, I can also post some code to hide your application from the task list.  Let me know either way.
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 

Author Comment

by:richweed
ID: 1336667
The program is an access control system similar to Cybertime, but not exactly the same. Cybertime looks good though!

Call me crazy, but do you mean the closequery event of the main form? That has the canclose parameter. This doesn't stop you doing an end task though?

The code to hide the program from the task list would be helpful, thanks.

Any idea where I can find out more about the Guardian Security system mentioned at cybertime?
0
 

Author Comment

by:richweed
ID: 1336668
barddzen

I need to repost this question as I need an answer soon.

Please feel free to answer again.

Thanks

Richard
0
 
LVL 3

Accepted Solution

by:
sperling earned 140 total points
ID: 1336669
Create a small program, something like this:

program Project1;

uses
  whatever...

function RegisterServiceProcess (dwProcessID, dwType : DWORD) : DWORD; stdcall; external 'kernel32' name 'RegisterServiceProcess';

begin
  RegisterServiceProcess(0, 1);
  repeat
    if LoginAppIsRunning or UserHasMoreTimeLeft then begin
      Sleep (60 * 1000);  // Wait one minute, consumes no CPU
    end else begin
      StartLoginApp
    end;
  until false;
end.


RegisterServiceProcess is only available in Win 95.

This app will be completely invisible if you do not reference unit Forms.pas

the login app should simply take over the screen and disable C-A-D and alike, and terminate as soon as the user has logged in.

If you need some kind of user identity to look up minutes left, have the login app store it in registry.

Regards,

Erik.
0

Featured Post

Prep for the ITIL® Foundation Certification Exam

December’s Course of the Month is now available! Enroll to learn ITIL® Foundation best practices for delivering IT services effectively and efficiently.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
This Micro Tutorial will teach you how to add a cinematic look to any film or video out there. There are very few simple steps that you will follow to do so. This will be demonstrated using Adobe Premiere Pro CS6.
As many of you are aware about Scanpst.exe utility which is owned by Microsoft itself to repair inaccessible or damaged PST files, but the question is do you really think Scanpst.exe is capable to repair all sorts of PST related corruption issues?
Suggested Courses

862 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question