LabVIEW 调用 Win10 触控键盘(TabTip.exe)说明

在 Win10(1607 及更高版本,如你的 22H2)环境下,通过 LabVIEW 调用系统触控键盘(TabTip.exe),适配工业控制、上位机界面等场景的输入需求。

前提条件(必做配置)

Win10 1607 + 版本默认限制桌面模式调用 TabTip.exe,需先添加注册表项解锁:

  1. 注册表路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\TabletTip\1.7

  2. 新建 REG_DWORD 值:EnableDesktopModeAutoInvoke=1

(可通过前文的OpenTabTip.bat脚本一键配置)

LabVIEW 实现逻辑

VI 通过System Exec.vi + 进程管理 + 系统 API 适配实现调用,核心流程如下:

完整实现步骤

  1. 配置注册表 :运行OpenTabTip.bat完成EnableDesktopModeAutoInvoke=1配置;

  2. LabVIEW VI 搭建

    • 拖入System Exec.vi,先执行taskkill命令终止残留进程;

    • 调用Wow64DisableWow64FsRedirection关闭路径重定向;

    • 再次用System Exec.vi执行 TabTip.exe 路径;

    • 调用Wow64EnableWow64FsRedirection恢复重定向;

  3. 运行验证:启动 VI 后,触控键盘会直接弹出,无后台进程冲突。

若后续升级 Win11,无需配置注册表,直接用System Exec.vi执行C:\Windows\System32\TabTip.exe即可,且无需 Wow64API 适配。

在 LabVIEW 中调用 Win10 触控键盘(TabTip.exe)的核心依赖以下三类组件,各组件的作用与具体实现逻辑如下:

1. System Exec.vi(系统命令执行组件)

这是实现触控键盘 "清理残留进程 + 启动新进程" 的核心 VI,主要完成两个关键操作:

  • 终止后台残留进程 :先执行系统命令taskkill /f /im WindowsInternal.ComposableShell.Experiences.TextInput.InputApp.exe,强制关闭可能后台运行的 TabTip 关联进程,避免因进程残留导致新键盘无法正常弹出;

  • 启动触控键盘 :再执行 TabTip.exe 的完整路径命令C:\Program Files\Common Files\Microsoft Shared\Ink\TabTip.exe,直接唤起 Win10 触控键盘界面。

2. kernel32.dll::Wow64DisableWow64FsRedirection(路径重定向禁用 API)

该 API 主要适配 64 位 Windows 系统下 32 位 LabVIEW 的调用兼容性问题:

  • 64 位系统中,32 位 LabVIEW 会默认对系统路径做 "Wow64 重定向",可能导致无法正确识别 64 位 TabTip.exe 的安装路径;

  • 调用该 API 可临时关闭路径重定向功能,确保 LabVIEW 能精准定位到 TabTip.exe 的真实路径,避免因路径错误导致调用失败。

3. kernel32.dll::Wow64EnableWow64FsRedirection(路径重定向恢复 API)

作为路径重定向禁用操作的配套步骤,其核心作用是:

  • 在 TabTip.exe 成功启动后,调用该 API 恢复系统默认的 Wow64 路径重定向规则;

  • 避免因长期关闭重定向导致系统其他程序的路径识别异常,保障系统运行稳定性。

相关推荐
fanchenxinok7 小时前
基于图莫斯的CAN UDS升级上位机-LabVIEW版本(一):TOOMOSS_OpenDev(CAN).vi — 设备打开与句柄管理
labview
fanchenxinok12 小时前
基于图莫斯的CAN UDS升级上位机-LabVIEW版本(四):TOOMOSS_SID27_SecurityAccess.vi — 安全访问
安全·labview·uds升级·子vi
马不啼12 小时前
NI HIL自动化测试10-Labview04-树形结构
labview·simulink·hil·veristand·teststand
LabVIEW开发1 天前
LabVIEW XY Graph中使用真实时间戳显示多曲线
labview·labview知识·labview功能·labview程序
LabVIEW开发5 天前
NI Package Manager安装LabVIEW时InternalServerError错误
网络·数据库·labview·labview知识·labview功能·labview程序
LabVIEW开发5 天前
LabVIEW自动化测试台中的硬件抽象层与插件架构设计
labview·labview知识·labview功能·labview程序
fanchenxinok9 天前
学习笔记:LabVIEW中如何将解析S19/HEX的VI封装为子VI并供主VI调用
笔记·学习·labview·子vi
我超膨胀der.9 天前
LABVIEW快捷键学习
笔记·labview
fanchenxinok10 天前
学习笔记:LabVIEW调用DLL解析S19文件教程
笔记·学习·labview·dll解析
电气_空空11 天前
基于LabVIEW的数据采集系统设计与实现
单片机·嵌入式硬件·labview