title: Show touch keyboard (TabTip.exe) in Windows 10 Anniversary edition
body: <p>In Windows 8 and Windows 10 before Anniversary update it was possible to show touch keyboard by starting </p>
  
  <pre><code>C:\Program Files\Common Files\microsoft shared\ink\TabTip.exe
  </code></pre>
  
  <p>It no longer works in Windows 10 Anniversary update; the <code>TabTip.exe</code> process is running, but the keyboard is not shown.</p>
  
  <p>Is there a way to show it programmatically?</p>
  
  <p><strong>UPDATE</strong></p>
  
  <p>I found a workaround - fake mouse click on touch keyboard icon in system tray. Here is code in Delphi</p>
  
  <pre><code>// Find tray icon window
  function FindTrayButtonWindow: THandle;
  var
    ShellTrayWnd: THandle;
    TrayNotifyWnd: THandle;
  begin
    Result := 0;
    ShellTrayWnd := FindWindow('Shell_TrayWnd', nil);
    if ShellTrayWnd &gt; 0 then
    begin
      TrayNotifyWnd := FindWindowEx(ShellTrayWnd, 0, 'TrayNotifyWnd', nil);
      if TrayNotifyWnd &gt; 0 then
      begin
        Result := FindWindowEx(TrayNotifyWnd, 0, 'TIPBand', nil);
      end;
    end;
  end;
  
  // Post mouse click messages to it
  TrayButtonWindow := FindTrayButtonWindow;
  if TrayButtonWindow &gt; 0 then
  begin
    PostMessage(TrayButtonWindow, WM_LBUTTONDOWN, MK_LBUTTON, $00010001);
    PostMessage(TrayButtonWindow, WM_LBUTTONUP, 0, $00010001);
  end;
  </code></pre>
  
  <p><strong>UPDATE 2</strong></p>
  
  <p>Another thing I found is that setting this registry key restores old functionality when starting TabTip.exe shows touch keyboard</p>
  
  <pre><code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\TabletTip\1.7\EnableDesktopModeAutoInvoke=1
  </code></pre>