Solved

Need program to run concurrently with windows login screen

Posted on 2004-09-23
6
271 Views
Last Modified: 2010-04-17
Windows XP system on win2k3 domain -

How would I go about creating and running an application that would display a button on the windows login screen that would allow users to automatically login to the system using a precreated domain account.  I need this app to run concurrently with the windows login in such a way that users can either enter correct credentials or press a button to have the system log itself in without the user needing to know a valid domain username and password.
0
Comment
Question by:baal32
6 Comments
 
LVL 5

Expert Comment

by:Dragonmen
ID: 12136773
Isn't the easier thing to turn off entering user and password at logon and assume default ?
0
 
LVL 2

Expert Comment

by:AlfaLAN
ID: 12139841
Theoretically you would create an app that you would run as service. This way no user needs to be logged on; if the computer's running the services are running (if everythings ok that is ;-) ).

This app should then check if logon.scr (the logon-screensaver app) is running. If so add a form containing a loginbutton to the apropriate desktop. If this button is clicked you could use a sendkey's function (te emulate a user typing on a keyboard) to provide logon information or even logon directly using some api-function or something?

But maby you could alter the logon.scr or write your own logon window.

Hope this inspires others.
0
 
LVL 1

Expert Comment

by:seitou
ID: 12144675
I dont think it would be that easy. The desktop that runs logon dialog is designed to be a secure desktop basically to stop keyloggers capturing the username/password.   after saying that i found a site showing a way to do this in windows 2000 a while back, but i dont think it still works on xp.    

For the sendkeys idea to work your program would have to be running from the same desktop as winlogon.exe.

Your other alternative is to create a custom Gina.dll which ive done for windows 2000.  The problem with this for xp is  you lose some of the xp winlogon functions., like fast user switching.  

Hope this helps.
0
 

Author Comment

by:baal32
ID: 12146250
Seitou - fast user switching isn't a big deal anyway as these systems are one the domain.  I'm pretty clueless, so when you say that the app would need to run from the same desktop as winlogon.exe what does that mean exactly?
0
 
LVL 1

Accepted Solution

by:
seitou earned 500 total points
ID: 12161354
right, when windows starts it creates three unique desktops, one is the one you will be used to thinking of as your desktop, the one that runs you applications and whatever else you do while using the computer, the second is the screensaver desktop, (pretty self explanitory) and the third is the Winlogon desktop.  That is the one that the logon screen runs on. so its the one you are interested in.
there is a bit more information here.
http://msdn.microsoft.com/library/en-us/secauthn/security/initializing_winlogon.asp?frame=true

Now for you to simply put a button on the logon screen it may be possible by some sort of system hook to change the default windows logon screen.  But i dont know anymore about that line of things.  

Now, if you want to go with the option of creating the custom gina its not too big a job, the msgina.dll file does not have to be completely rewritten, you can make a dll stub file which means you only have to write code for what you want to change and leave the rest intact.  unfortunately for changing the dialog this means making your own logon dialog box from scratch.  I did not find a way to incorporate the original.
There is more information here about both winlogon and gina.
http://msdn.microsoft.com/library/en-us/secauthn/security/winlogon_and_gina.asp?frame=true

If you want to continue with this route let me know and i will see what i can do to help, but first may i suggest a much easier solution that would seem to me to work fine.  there are keys in the registry called, LegalNoticeText and LegalNoticeCaption they can be used to pop up a message to the user before they logon (after the press ctrl - alt - del).  You could use this box to explain to  users without a username/password that a guest account has been created and they can use that by simply typing guest?

Let me know how you want to continue, i will do my best to help.

0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

I know it’s not a new topic to discuss and it has lots of online contents already available over the net. But Then I thought it would be useful to this site’s visitors and can have online repository on vim most commonly used commands. This post h…
This is about my first experience with programming Arduino.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

708 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

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now