Come rilevare se la tastiera su schermo è visibile

È possibile utilizzare la funzione WinAPI IsWindowVisible.

Per Visual Basic, appare così:
Dim hWnd As Long 
hWnd = FindWindow("TMainKeyboardForm", vbNullString) 
If (IsWindowVisible(hWnd)) Then ........