Jump to content

Control WIN10 On screen keyboard for my apps


Recommended Posts

Hi, everyone,

My first programing language is AUTOIT3, so i do not know much about C# language.

What i want to do is control WIN10 on screen keyboard for my apps, control it show and hide.

Just execute tabtip.exe can call it appear, it's easy in WIN7, WIN8, but not work in win10,

it works :  _WinAPI_FindWindow("IPTip_Main_Window","") 

but how can i make it appear? except use the mouseclick function to click its trayicon?

After searching ,i got this: 

https://stackoverflow.com/questions/38774139/show-touch-keyboard-tabtip-exe-in-windows-10-anniversary-edition

 

anybody makes it for au3 ?

Thanks.

            ZQY

       Regards!

Link to comment
Share on other sites

Well Considering he has a second way why go through that??

Make a file Called TabletTip.reg Put this in it

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\TabletTip\1.7]
"EnableDesktopModeAutoInvoke"=dword:00000001

Save it the double click it  after it successfully imports restart PC

Link to comment
Share on other sites

10 hours ago, Subz said:

OSK.exe - Windows 10 x64 Enterprise

 

My tablet pc is lenovo miix520, with touch screen and wacam pen. win10 home edition.

OSK.exe do not have wacam pen funtion, so it's not suitable for apps.

i wonder, can GDI+ do the jobs likes wacam pen?  maybe @UEZ can help!

Link to comment
Share on other sites

My apps is designd for someone signature, because i can't achieve the wacam pen function, so tabtip.exe is my second choice.

I remember @UEZ wrote a script can draw on screen directly, but i can't  found it!

Edited by powerofos
Link to comment
Share on other sites

Not sure if the following helps

#include <MenuConstants.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>

Global $gbToggle = True
HotKeySet("{Pause}", "_ToggleKB")

    $sCommonFilesDir = @OSArch = "x64" ? RegRead("HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion", "CommonW6432Dir") : @CommonFilesDir
    If ProcessExists("TabTip.exe") = 0 Then ShellExecute($sCommonFilesDir & "\Microsoft Shared\ink\TabTip.exe")
    ProcessWait("TabTip.exe")
    _ToggleKB()

While 1
    Sleep(100)
WEnd

Func _ToggleKB()
    Local $hwndInputPanel
    Switch $gbToggle
        Case False
            $hwndInputPanel = _WinAPI_FindWindow("IPTip_Main_Window","")
            _WinAPI_PostMessage($hwndInputPanel, $WM_SYSCOMMAND, $SC_CLOSE, 0)
            $gbToggle = True
        Case True
            ShellExecute($sCommonFilesDir & "\Microsoft Shared\ink\TabTip.exe")
            $gbToggle = False
    EndSwitch
EndFunc

 

Link to comment
Share on other sites

9 hours ago, Subz said:

Not sure if the following helps

#include <MenuConstants.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>

Global $gbToggle = True
HotKeySet("{Pause}", "_ToggleKB")

    $sCommonFilesDir = @OSArch = "x64" ? RegRead("HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion", "CommonW6432Dir") : @CommonFilesDir
    If ProcessExists("TabTip.exe") = 0 Then ShellExecute($sCommonFilesDir & "\Microsoft Shared\ink\TabTip.exe")
    ProcessWait("TabTip.exe")
    _ToggleKB()

While 1
    Sleep(100)
WEnd

Func _ToggleKB()
    Local $hwndInputPanel
    Switch $gbToggle
        Case False
            $hwndInputPanel = _WinAPI_FindWindow("IPTip_Main_Window","")
            _WinAPI_PostMessage($hwndInputPanel, $WM_SYSCOMMAND, $SC_CLOSE, 0)
            $gbToggle = True
        Case True
            ShellExecute($sCommonFilesDir & "\Microsoft Shared\ink\TabTip.exe")
            $gbToggle = False
    EndSwitch
EndFunc

 

Hi Subz,

As they say:

"In Windows 8 and Windows 10 before Anniversary update it was possible to show touch keyboard by starting

C:\Program Files\Common Files\microsoft shared\ink\TabTip.exe

It no longer works in Windows 10 Anniversary update; the TabTip.exe process is running, but the keyboard is not shown"

Just refer the links i posted in 1#

Regards

Thank you!

          ZQY

 

Link to comment
Share on other sites

1 hour ago, Subz said:

Windows 10 1709 Enterprise x64, the code I wrote above works fine on my machine, I couldn't get working with Run but ShellExecute fixed the issue for me.

Yeah, unfortunately, WIN10 HOME EDIT 1703 doesn't work !!!

Thanks Subz

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...