OSK at Logon Part 2!!

P

Paul

Thanks to all that helped us get this going. One thing we have noticed is
that the OSK comes up great, after the user logs in then the OSK is pushed
to the background. However our hardware button that uses the findwindow API
call is not able to bring the OSK back to the front. Now this is because we
imagine that API call cannot find a process that is running in the
background, so our only option now is to have the user kill the process and
then hit the hardware button.

My thoughts are that surely we could write a script that would kill the OSK
as the machine logs on, and then have Utility Man start up upon log on, or
there must be another API call that will allow us to find the process
running in the background and bring back up the OSK, when the hardware
button is pressed.

Does anybody have any ideas? Would the script work?

Cheers!

Paul Tyler
Athena USA
Thin Client Computing
 
K

KM

Paul,
Thanks to all that helped us get this going. One thing we have noticed is
that the OSK comes up great, after the user logs in then the OSK is pushed
to the background. However our hardware button that uses the findwindow API
call is not able to bring the OSK back to the front. Now this is because we
imagine that API call cannot find a process that is running in the
background, so our only option now is to have the user kill the process and
then hit the hardware button.

I could not quite understand this statement.
Why FindWindow API does not work for you?
Try EnumWindows, or FindWindowEx. If a window is in the system, you CAN find
it. It is just a matter of searching mechanism.

Also, how you implement the hardware button code? A code in a driver or a
standalone app? If the latter (and it is not a service), make sure you press
the hardware button after the user login.

KM
 
T

Tim Houle

Paul,

What happens with the FindowWindow call? If you use the
Win32 call, not the CWnd call, you can check GetLastError
(). Another call you could make is EnumChildWindows().
OSK should be a child of the desktop.

Tim
 
J

Juergen Seyffer

Hello Paul,

I also have noticed that problem with Geode based systems !!!
For that (older) systems, I have used pskill.exe (from www.sysinternals.com)
to kill osk.exe.
I create an entry in HKLM\Software\Microsoft\Windows\CurrentVersion\Run
"path to pskill.exe osk.exe".
Did you start osk.exe or utility manager with srvany.
I recommend to start utility manager as service.
Hope that helps.

Best Regards

Juergen
 
P

Paul

I could not quite understand this statement.

Don't worry KM you are not the only one, I have confused myself, I wanted to
say it a bit more clearly, but I deleted all my research before I wrote it
down! My engineer told me what he thoughtmight be the reason but it
vanished!

Cheers for the suggestions otherwise!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top