Запустить экранную клавиатуру

Простейшие вопросы в области инженерной разработки
Ответить
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 748
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2014
Откуда: Город Сосновый Бор Ленинградская Область
Поблагодарили: 1 раз
Контактная информация:

Запустить экранную клавиатуру

Сообщение JohnChaban »

Всем привет
Можно ли запустить экранную клавиатуру из под Labview2014?
Спасибо.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2303
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 33 раза
Поблагодарили: 34 раза

Re: Запустить экранную клавиатуру

Сообщение Borjomy_1 »

Попробуйте вызвать через System Exec.vi "%windir%\system32\osk.exe"
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 748
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2014
Откуда: Город Сосновый Бор Ленинградская Область
Поблагодарили: 1 раз
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение JohnChaban »

Borjomy_1 писал(а): 24 мар 2025, 15:04 Попробуйте вызвать через System Exec.vi "%windir%\system32\osk.exe"
По этому и написал
Вложения
1.jpg
FredP
junior
junior
Сообщения: 69
Зарегистрирован: 19 апр 2020, 01:22
Версия LabVIEW: 2021
Благодарил (а): 6 раз
Поблагодарили: 14 раз
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение FredP »

JohnChaban писал(а): 24 мар 2025, 15:53
Borjomy_1 писал(а): 24 мар 2025, 15:04 Попробуйте вызвать через System Exec.vi "%windir%\system32\osk.exe"
По этому и написал
C:\windows\system32\osk.exe нормально вызывает

Пишут это не баг а фича https://forums.ni.com/t5/LabVIEW/Can-La ... 255/page/2
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 748
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2014
Откуда: Город Сосновый Бор Ленинградская Область
Поблагодарили: 1 раз
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение JohnChaban »

У меня вызывается так
Вложения
run osk.vi
Только так
(10.81 КБ) 186 скачиваний
Аватара пользователя
jane_wild

Gold
leader
leader
Сообщения: 542
Зарегистрирован: 30 июн 2016, 02:11
Награды: 1
Версия LabVIEW: 2020
Благодарил (а): 107 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение jane_wild »

Вот и мне понадобилась экранная клавиатура. Столкнулать с той же ошибкой Error 2. Файл предложенный JohnChaban помог, но не сразу. Если выделить и скопировать из него код и вставить в свой пустой VI. Ошибка таже. А вот если использовать файл целиком, добавив в проект, (добавила только вход-выход ошибки) в своем пустом VI, то все работает. Думала что при копировании как то изменяется конфигурация Call Library Function Node - проверила вроде как все нормально, вообщем так и не поняла с чем это связано.
Doesnt Work.png
Ok.png
На целевой машине используется Touch Panel All in One (Win 11 64bit) В трее есть иконка клавиатуры, кликнув по которой всплывает снизу клавиатура, которая внешне координально отличается от клавиатуры вызываемой при помощи osk.exe Поэтому вопрос: Возможно ли вызвать программно именно эту (из трея) клавиатуру
Спасибо
Life is short. Smile while you still have teeth!
Аватара пользователя
dadreamer

Activity Professionalism Tutorials Gold Silver
Bronze Black Автор
professor
professor
Сообщения: 3989
Зарегистрирован: 17 фев 2013, 16:33
Награды: 9
Версия LabVIEW: 2.5 — 2025
Благодарил (а): 13 раз
Поблагодарили: 143 раза

Re: Запустить экранную клавиатуру

Сообщение dadreamer »

jane_wild писал(а): 07 апр 2025, 21:35так и не поняла с чем это связано
У :vi: , выложенного выше, Preferred Execution System = User Interface. И узлы CLFN настроены на работу в UI-потоке. В свою очередь Wow64DisableWow64FsRedirection отключает перенаправление папок System32 -> SysWOW64 для текущего потока. Выполнение кода в UI-потоке гарантирует, что переключений на другой поток не случится, так как в :labview: UI-поток всегда один. Но вообще, всё это шаманство - для 32-битного приложения или IDE, в :labview: 64-bit можно обойтись одним System Exec.
jane_wild писал(а): 07 апр 2025, 21:35всплывает снизу клавиатура, которая внешне координально отличается от клавиатуры вызываемой при помощи osk.exe
C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe ? Ну, или гляньте в диспетчере задач, какая программа запускается.
Аватара пользователя
jane_wild

Gold
leader
leader
Сообщения: 542
Зарегистрирован: 30 июн 2016, 02:11
Награды: 1
Версия LabVIEW: 2020
Благодарил (а): 107 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение jane_wild »

dadreamer писал(а): 08 апр 2025, 15:44 C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe ?
Оно самое! Спасибо все получилось. :thank:
Life is short. Smile while you still have teeth!
Аватара пользователя
jane_wild

Gold
leader
leader
Сообщения: 542
Зарегистрирован: 30 июн 2016, 02:11
Награды: 1
Версия LabVIEW: 2020
Благодарил (а): 107 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение jane_wild »

Здравствуйте всем. И снова я со своими проблемами. На другой машине снова нужна экранная клавиатура.
dadreamer писал(а): 08 апр 2025, 15:44 C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe ? Ну, или гляньте в диспетчере задач, какая программа запускается.
Именно этот файл виден в диспетчере задач и его иконка висит в трее.
Taskbar скрыт, поэтому крайне неудобно вначале свайпнуть внизу экрана, чтобы всплыл taskbar, а затем тапнуть по иконке клавиатуры. Хотела бы вызывать клавиатуру кнопкой.
System Exec.vi C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe, который прекрасно работает на другой машине, здесь отказывается. Причем не вызывая никаких ошибок. Просто кликнула на кнопке ... и ничего не произошло. Я так думаю это потому что файл уже запущен, тогда вопрос - а как его собственно показать на экране?

P.S. Предоставленный ранее файл run osk.vi работает, только клавиатура страшненькая... хотела бы именно TabTip.exe
Спасибо
Life is short. Smile while you still have teeth!
Аватара пользователя
dadreamer

Activity Professionalism Tutorials Gold Silver
Bronze Black Автор
professor
professor
Сообщения: 3989
Зарегистрирован: 17 фев 2013, 16:33
Награды: 9
Версия LabVIEW: 2.5 — 2025
Благодарил (а): 13 раз
Поблагодарили: 143 раза

Re: Запустить экранную клавиатуру

Сообщение dadreamer »

jane_wild писал(а): 25 июл 2025, 16:09тогда вопрос - а как его собственно показать на экране?
Возможно, эти советы как-то помогут: Open touch keyboard via command. Предлагается два варианта: PS скрипт или маленький экзешник (нужно компилировать). Там же в комментах есть вариант через wmic, но сама эта утилита вот-вот будет удалена из новых дистров: https://techcommunity.microsoft.com/blo ... ps/4039242
Аватара пользователя
jane_wild

Gold
leader
leader
Сообщения: 542
Зарегистрирован: 30 июн 2016, 02:11
Награды: 1
Версия LabVIEW: 2020
Благодарил (а): 107 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Запустить экранную клавиатуру

Сообщение jane_wild »

Спасибо помогло. Скопировала скрипт и сохранила в файл MyKeybrd.ps1 и запускаю его System Exec.vi Правда пришлось включить разрешение на выполнение скриптов (Set-ExecutionPolicy RemoteSigned) - в Win 11 по умолчанию Restricted. Ну и маленькое неудобство что во время запуска кратковременно появляется черное окошко.
Хотела спросить а можно как то задать координаты положения клавиатуры, что бы не таскать пальцем по экрану в нужное положение?
Life is short. Smile while you still have teeth!
Аватара пользователя
dadreamer

Activity Professionalism Tutorials Gold Silver
Bronze Black Автор
professor
professor
Сообщения: 3989
Зарегистрирован: 17 фев 2013, 16:33
Награды: 9
Версия LabVIEW: 2.5 — 2025
Благодарил (а): 13 раз
Поблагодарили: 143 раза

Re: Запустить экранную клавиатуру

Сообщение dadreamer »

jane_wild писал(а): 28 июл 2025, 13:57маленькое неудобство что во время запуска кратковременно появляется черное окошко.
How to hide command prompt window when using system exec
Или постройте экзешник и его запускайте.
jane_wild писал(а): 28 июл 2025, 13:57Хотела спросить а можно как то задать координаты положения клавиатуры, что бы не таскать пальцем по экрану в нужное положение?
- For the record, you cannot seem to programmatically change the location of tabtip.
(How to open tabtip keyboard in a custom location?)
Хотя, попробуйте последний совет с реестром, может сработать.
Ответить

Вернуться в «Для чайников»