в моей компании у нас есть небольшие рабочие станции ~13 дюймов с сенсорным экраном.
Операционная система:Microsoft Windows Embedded Standard 6.1.7601 Service Pack 1 Build 7601
Рабочие станции имеют 5 кнопок на их которые можно составить карту для любой комбинации клавиш. (пример ctrl+alt+shift+[any key on the keyboard]
)
есть две программы, которые должны работать на них, чтобы рабочие могли работать. Иногда работники случайно закрывают одну из программ, поэтому я решил получить решение этой проблемы, так как они не могут начать программы сами по себе.
Итак у меня:
- создан пакетный файл, который при запуске проверяет, запущены ли программы, если нет, то запускает их;
- создан ярлык пакетного файла (в %appdata%MicrosoftWindowsStart MenuPrograms
как предложил здесь);
- добавлена клавиша быстрого доступа (ctrl + alt + s);
- назначена одна из кнопок на рабочей станции привязке клавиш.
это казалось хорошей идеей в теории, но и в практика привязки клавиш не работает должным образом.
после устранения неполадок, я понял, что одна из программ является причиной проблемы.
Назовем программы A
и B
. Когда B
или рабочий стол находится впереди, комбинация клавиш работает правильно и запускает пакетный файл. A
работает в полноэкранном режиме. Поэтому при нажатии комбинации клавиш while A
впереди не работает.
Так что у меня назначена alt + tab
ключ сочетание для другой кнопки, но это, где проблема ногами.
если я уже нажал ctrl + alt + S
сочетания клавиш в то время как A
был впереди, он не будет работать после этого, даже после того, как я переключился на B
или на рабочем столе.
что делает его более интересным, так это то, что если я создаю другую комбинацию клавиш на другом файле ярлыка, скажем ctrl + alt + D
и запустить его после ctrl + alt + S
перестал работать, он фиксирует его и ctrl + alt + S
начинает работать снова пока B
или рабочий стол имеет фокус.
пробовал этой, не работал.
Red этой форум. Никакое решение.
я ищу решение / обходной путь / другой метод для решения этой проблемы.
я не хочу устанавливать какие-либо сторонние программы. Однако при необходимости я могу изменить параметры и реестр.
изменить:
пакетный файл
echo off
tasklist /FI "IMAGENAME eq progB.exe" 2>NUL | find /I /N "progB.exe">NUL
if "%ERRORLEVEL%"=="1" (
cd C:<progB path>
start /MAX progB.exe
)
tasklist /FI "IMAGENAME eq progA.exe" 2>NUL | find /I /N "progA.exe">NUL
if "%ERRORLEVEL%"=="1" C:<progA path>
exit