Показать сообщение отдельно
Старый 11.07.2010, 14:34   #6  
Alex_KD is offline
Alex_KD
Участник
AxAssist
MCBMSS
Соотечественники
 
522 / 362 (14) ++++++
Регистрация: 06.07.2006
Адрес: Melbourne, Down Under
Цитата:
Сообщение от George Nordic Посмотреть сообщение
1. installMessageProc не раегирует на SendMessage - только на PostMessage
2. Некоторые оповещения (клавиша, фокус, клипбоард) - проходят. А мышь, WM_COPYDATA и некоторые другие - "съедаются" ядром и игнорируются. Что проходит, а что нет - непонятно, описаний нет, только опытным путем.
При отсылки WM_COPYDATA через postMessage возвращает GetLastError() = 1159 , что расшифровывается как "The message can be used only with synchronous operations".
Другими словами WM_COPYDATA можно отослать только через SendMessage, который installMessageProc игнорирует.

OLE компонент изменить есть возможность? Аксапта отлично реагирует на WM_USER+X сообщения. Так же WM_COMMAND можно попробовать использовать.

Еще некоторые сообщения требуют указатель в параметре lParam вместо int. При отсылки таких сообщение через
X++:
WinApi::postMessage()/WinApi::sendMessage()
Акспта иногда очень быстро умирает.

ЗЫ AxAssist работает в одном треде с Аксаптой и слушает все сообщения до Аксапта, поэтому та м проще что-либо перехватить и обработать.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0