1

So I have C# WinForms application and I am trying to detect if TabTip.exe (on-screen keyboard) is open. So I go through current process, I find that process and using that whole lot information how can I detect if process is visible or not?

foreach (Process process in Process.GetProcesses())
{
    if (process.ProcessName.Contains(KEYBOARD_PROCESS_NAME))
    {
      // So is visible or not?
    }
}
Erik Philips
  • 53,428
  • 11
  • 128
  • 150
Jon
  • 11
  • 1
  • You'll have to get all the [Window Handles for the Process](http://stackoverflow.com/questions/3019066/get-all-window-handles-for-a-process) and then pass each of those to check and see if [the window handle is visible](http://stackoverflow.com/questions/1738800/is-hwnd-visible). – Erik Philips Jan 04 '17 at 16:25
  • You may want to look at http://stackoverflow.com/questions/20892311/detect-if-on-screen-keyboard-is-open-tabtip-exe Normal methods may not work for the keyboard if I remeber correctly. – Florian Jan 04 '17 at 16:27

0 Answers0