AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.03.2009, 12:47   #1  
online
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,690 / 1192 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Замена Ctrl+Break на другую комбинацию клавиш
Существует ли возможность в Axapta 2.5 изменить настройку комбинации клавиш Ctrl+Break на какую-либо другую комбинацию?

Объясню, в чем проблема.

У нас организована работа с Axapta через бездисковые станции. Физически это происходит примерно так. При включении клиентского компьютера по сети ему закачивается операционная система на базе Linux (в оперативную память, поскольку диска нет - бездисковая станция). Далее эта операционка осуществляет подключение к терминальной сессии и идет обычная работа в терминальном сеансе.

Проблема заключается в том, что используемая версия клиента Linux вообще никак не обрабатывает нажатие клавиш PrintScreen, Lock, Break. Т.е. 3 клавиш в правом верхнем углу стандартной клавиатуры. Можно считать, что их как бы не существует.

Вот и встал вопрос, что делать? Либо искать нового клиента, либо как-то переключить функционал на работу с другими клавишами. В данном случае пока надо перенастроить именно прерывание обработки. То, что выполняется по Ctrl+Break
Старый 25.03.2009, 13:24   #2  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,164 / 1293 (48) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
У меня на нет-буке стоит SUsE Linux. При коннекте к стандартному терминалу Windows 2003 была такая-же проблема с некоторыми комбинациями клавиш. В результате нашел в инете файл, который добавил к конфигурации rTerminal и Linux стал посылать на терминал нормальные коды сочетаний клавиш.
Может для вашей версии Linux тоже есть подобные файлы настроек для вашего клиента, которым конектитесь к терминалу?
За это сообщение автора поблагодарили: Logger (1).
Старый 25.03.2009, 13:30   #3  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1238 (44) ++++++++
Регистрация: 11.04.2008
есть метод \Classes\Info\onEventGoingIdle, который система вызывает каждый N ms. Идея такая:
в этом методе проверять желаемые клавиши на нажатие (как же как WinAPI::isControlButtonDown) и если они нажаты - посылать главному окну системы сообщение, генерируемое по ctrl+break или что-нить в этом духе.

P.S. Да, не уверен, что в 2.5 присутствует onEventGoingIdle, - в любом случае, можно "взвести" свой таймер (setTimeOut, с периодом ~80 ms) на классе info.
У меня таким образом реализована функциональность hotKeys в аксапте, без привлечения внешних dll

Последний раз редактировалось DSPIC; 25.03.2009 в 13:33.
Старый 25.03.2009, 14:24   #4  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1238 (44) ++++++++
Регистрация: 11.04.2008
Пардон, не работает.

Когда сис-ма отрабатывает каки-нить операции, onEventGoingIdle() не отрабатывает.
Для ctrl+break данный способ не подойдет.
Теги
горячие клавиши, терминал

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
staticsax: Restore(ctrl-F5) and access control (AllowEdit) problem Blog bot DAX Blogs 0 19.01.2009 20:05
gatesasbait: Exception::Break in while loop Blog bot DAX Blogs 0 13.01.2009 20:05
Cамопроизвольное срабатывание [Ctrl] + [Break] Silence DAX: Прочие вопросы 8 28.10.2008 18:17
Не срабатывает Ctrl + Break Arahnid DAX: Программирование 6 28.06.2007 15:06
Ctrl+Break art DAX: Программирование 2 27.08.2002 11:30

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 13:25.