LawlessOne
asked on
Windows XP launch visible program before logon
Hello Experts -
I looking for general guidance here as well as whatever other help anyone can supply, I'm going to supply probably more information than you want because I'm not sure what exactly is significant:
I have written two programs in vb.net, a monitoring process which looks for a cookie and an interactive keyboard which the monitoring process launches when it detects the cookie. The process works fine on XP when the monitoring program is running - for instance, if I drop the monitoring program in startup for all users.
However, the box on which I need to run this setup normally does not logon - it start services which (I'm guessing) launch the interactive programs, which is some sort of program hosting an embedded explorer window. If I start task manager i can see the logon window process "waiting" as well as other programs under the System User.
I would like to launch the monitoring process as a service as well, and have it display my interactive keyboard in the viewable "instance", or viewport, or whatever that the explorer type program is in... but I can't figure out what that might be since nobody is logged in.
Am I on the right track trying to do this as a service? I have written services before but haven't dealt with this type of scenario. I have been messing around with CreateProcessAsUser but there seems to be the need for a logged on user for this to work? I have researched this somewhat but am in a little over my head here.
Thanks for any help and your patience with my explanation. I will supply any particulars that might be useful.
I looking for general guidance here as well as whatever other help anyone can supply, I'm going to supply probably more information than you want because I'm not sure what exactly is significant:
I have written two programs in vb.net, a monitoring process which looks for a cookie and an interactive keyboard which the monitoring process launches when it detects the cookie. The process works fine on XP when the monitoring program is running - for instance, if I drop the monitoring program in startup for all users.
However, the box on which I need to run this setup normally does not logon - it start services which (I'm guessing) launch the interactive programs, which is some sort of program hosting an embedded explorer window. If I start task manager i can see the logon window process "waiting" as well as other programs under the System User.
I would like to launch the monitoring process as a service as well, and have it display my interactive keyboard in the viewable "instance", or viewport, or whatever that the explorer type program is in... but I can't figure out what that might be since nobody is logged in.
Am I on the right track trying to do this as a service? I have written services before but haven't dealt with this type of scenario. I have been messing around with CreateProcessAsUser but there seems to be the need for a logged on user for this to work? I have researched this somewhat but am in a little over my head here.
Thanks for any help and your patience with my explanation. I will supply any particulars that might be useful.
ASKER
oobayly, For what it is worth, I assure you I'm not trying to do anything like keylogging or a make a fake login dialog. No keyboard is attached to these boxes and nobody logs into them normally - they are XP boxes that launch services which spawn process on the screen that a user can interact with.
What I'm trying to do is present a virtual keyboard on a touch screen. To do that I'm popping the keyboard when requested from a monitoring process, which I would normally put in Startup, but Startup programs don't run on this setup normally - there is a process launched that puts some sort of embedded internet explorer type program on screen, like IE in kiosk mode but embedded in some kind of other window.
What I'm trying to do is present a virtual keyboard on a touch screen. To do that I'm popping the keyboard when requested from a monitoring process, which I would normally put in Startup, but Startup programs don't run on this setup normally - there is a process launched that puts some sort of embedded internet explorer type program on screen, like IE in kiosk mode but embedded in some kind of other window.
That makes it much clearer. I'n a little bit incredulous that the apps are running with a gui while no user has been logged in, but anyhow.
I'm afraid I can't offer any advice as to your question
The only way I can see this settup running is like some of those supermarket self scan kiosks you get. XP is configured to login automatically, and then the app runs full screen, hooking low-level keyboard events so that focus can't be taken from it.
I'm afraid I can't offer any advice as to your question
The only way I can see this settup running is like some of those supermarket self scan kiosks you get. XP is configured to login automatically, and then the app runs full screen, hooking low-level keyboard events so that focus can't be taken from it.
ASKER
Thanks for trying anyway.
Unfortunately for me it does not do an auto login (and it would cause headaches for me to switch the box to this), because then I would be able to use the startup to run my monitor.
Unfortunately for me it does not do an auto login (and it would cause headaches for me to switch the box to this), because then I would be able to use the startup to run my monitor.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
JMoon5FTM, I apologize - for some reason I never saw a notify on your comment as I did on the earlier ones, and I finally just came back to abandon the question.
Your approach is very close to what I have been trying... I'm going to check particulars against what you describe here and I will comment back.
Again my apologies - I appreciate your comment!
Your approach is very close to what I have been trying... I'm going to check particulars against what you describe here and I will comment back.
Again my apologies - I appreciate your comment!
ASKER
Good answer, thanks for the help.
I can't imagine any modern OS allowing user input before authentication.
I'm afraid what you're asking for sounds disturbingly like a keylogger or a fake login dialog.
If you really need to be able to monitor the machine while it's not logged in, then I'd suggest creating something like a webservice that you can poll for the required data.