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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.07.2004, 17:58   #1  
andreynikolai is offline
andreynikolai
Участник
 
133 / 10 (1) +
Регистрация: 11.04.2002
Раскладка и Аксапта
Народ, кто знает как из Аксапты программно узнать текущую раскладку
клавиатуры (RU or EN) ? если вообще это реально .

И соответственно можно ли ее и программно менять ?
Старый 29.07.2004, 19:42   #2  
Yprit is offline
Yprit
Злыдни
Аватар для Yprit
Злыдни
 
419 / 93 (4) ++++
Регистрация: 22.02.2004
Адрес: СПб
Через АПИ, наверное...
Старый 30.07.2004, 10:03   #3  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
Можно, через апи.
Только насколько я помню есть там некая кривизна, но не помню какая.

Вопрос только - зачем?
Старый 30.07.2004, 14:43   #4  
andreynikolai is offline
andreynikolai
Участник
 
133 / 10 (1) +
Регистрация: 11.04.2002
А как функция называется winApi:: ???
Старый 30.07.2004, 15:11   #5  
maxsmirnov is offline
maxsmirnov
экс-модератор
 
268 / 25 (1) +++
Регистрация: 08.07.2003
Адрес: Москва
в WinAPI обернуты, мягко говоря, не все винапишные функции.
такой там, боюсь, нет.
используйте как методологию.

извиняюсь, а зачем вам это?
Старый 30.07.2004, 15:46   #6  
Prof is offline
Prof
Участник
 
732 / 64 (4) ++++
Регистрация: 18.10.2002
Адрес: Москва
А как функция называется winApi:: ???

хы-хы она так вообще не называется
RTFM = MSDN
Старый 30.07.2004, 16:11   #7  
dn is offline
dn
Участник
Самостоятельные клиенты AX
 
486 / 159 (6) ++++++
Регистрация: 26.03.2003
Адрес: Москва
GetKeyboardLayout. Обертку надо писать самому.
Старый 02.08.2004, 12:38   #8  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
В принципе, идея хорошая... (если я правильно понял Вашу затею)..

Но, возможно, можно обойтись и этим:
Основное / Настройки / Данные о компании / Прочее / Языки / Код языка по умолчанию.
И без программирования, как ни странно...
Старый 02.08.2004, 17:48   #9  
simply is offline
simply
Участник
 
84 / 10 (1) +
Регистрация: 24.05.2004
Адрес: москва
Цитата:
Изначально опубликовано George Nordic
В принципе, идея хорошая... (если я правильно понял Вашу затею)..

Но, возможно, можно обойтись и этим:
Основное / Настройки / Данные о компании / Прочее / Языки / Код языка по умолчанию.
И без программирования, как ни странно...
нет... он же просил программно...
Старый 16.08.2004, 14:31   #10  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
//02.06.04 DDemidov Включает английскую раскладку клавиатуры
void English()
{
DLL _winApiDLL = new DLL('USER32');
DLLFunction ActivateKeyboardLayout = new DLLFunction(_winApiDLL, 'ActivateKeyboardLayout');
;

ActivateKeyboardLayout.returns(ExtTypes:Word);
ActivateKeyboardLayout.arg(ExtTypes:Word,
ExtTypes:Word);

ActivateKeyboardLayout.call(67699721, 0);
}

//02.06.04 DDemidov Включает русскую раскладку клавиатуры
void Russian()
{
DLL _winApiDLL = new DLL('USER32');
DLLFunction ActivateKeyboardLayout = new DLLFunction(_winApiDLL, 'ActivateKeyboardLayout');
;

ActivateKeyboardLayout.returns(ExtTypes:Word);
ActivateKeyboardLayout.arg(ExtTypes:Word,
ExtTypes:Word);

ActivateKeyboardLayout.call(68748313, 0);
}
Старый 22.08.2006, 12:49   #11  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
?
Не могу понять почему этот job не срабатывает.. (должен переключить на русскую раскладку)

PHP код:
static void testKeuBoardLayout(Args _args)
{
    
DLL         winApiDLL = new DLL('USER32');
    
DLLFunction activateKeyboardLayout = new DLLFunction(winApiDLL'ActivateKeyboardLayout');
    ;
    
activateKeyboardLayout.returns(ExtTypes::Word);
    
activateKeyboardLayout.arg(ExtTypes::Word,ExtTypes::Word);
    
activateKeyboardLayout.call(687483130);

Старый 22.08.2006, 13:04   #12  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Попробуй так
X++:
            void LoadKeyboardLayout()
            {
                dll dll = new dll("user32");
                dllFunction dllFunction = new dllFunction(dll, "LoadKeyboardLayoutA");
                #define.KLF_ACTIVATE(1)
                ;
                dllFunction.arg(ExtTypes::String, ExtTypes::DWord);
                dllFunction.returns(ExtTypes::DWord);
                dllFunction.call("00000419", #KLF_ACTIVATE);
            }
PS А в твоем коде надо заменить Word'ы на DWord'ы
__________________
Axapta v.3.0 sp5 kr2

Последний раз редактировалось AndyD; 22.08.2006 в 13:20.
За это сообщение автора поблагодарили: DreamCreator (1).
Старый 22.08.2006, 13:12   #13  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
Большое Спасибо!
Теги
winapi, ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Каков процент внедрений "стандартной" поставки системы Аксапта? coolibin DAX: Прочие вопросы 17 10.02.2009 12:45
Запросы в Аксапта ibc DAX: Программирование 5 08.08.2005 22:47
Аксапта 3.0 SP 3 падает Wamr DAX: Программирование 13 12.10.2004 17:35
Научите программировать в Аксапта на лету. Плиз. Hobo DAX: Программирование 1 03.03.2004 15:00
Аксапта виснет... Peter Savintsev DAX: Администрирование 10 26.11.2002 10:24

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

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

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