独自デスクトップ上で、タッチキーボードを表示することができません
こんにちは、Platform SDK (Windows SDK) サポートチームです。
今回は、Windows 8.1 のタッチキーボード (Tabtip.exe) で確認されている現象についてご案内します。
現象
独自デスクトップ上でタッチキーボードを表示しようとすると、タッチキーボードが既定のデスクトップ (Default デスクトップ) 上で表示される現象が確認されています。
詳細
プログラムから Win32 API の CreateDesktop() を呼び出すと、独自のデスクトップを新しく作成することができます。
この独自デスクトップ上でも、ユーザーは Default デスクトップと同じように、マウスやキーボード、タッチ操作を行うことが可能です。
ところが、Windows 8.1 において独自デスクトップ上でタッチキーボードを表示しようとすると、(独自デスクトップではなく) Default デスクトップ上にタッチキーボードが表示される現象が発生します。
このため、独自デスクトップ上で操作中のユーザーは、タッチキーボードを利用することができません。
原因
マイクロソフトでは、この問題について現在調査中です。
詳細については、わかりしだいこの資料に掲載する予定です。
回避策
独自デスクトップ上では、タッチキーボードの代わりに、スクリーンキーボード (Osk.exe) のご利用をご検討ください。
なお、ShellExecute() を呼び出すと、プログラムから現在のデスクトップ上にスクリーンキーボードを表示することが可能です。
このようなプログラムを独自デスクトップ上で実行することで、プログラムを経由してスクリーンキーボードを独自デスクトップ上に表示させることができます。