Показать сообщение отдельно
  #1  
Старый 10.02.2011, 20:27
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
Вопрос D7: Illegal message method index

Всем доброго!
По сабжу:
Есть программа, которая по выполнению некоторой операции отправляет сообщение. WinSight32 из Delphi и Spy+ из VisualStudio идентифицируют это сообщение как $C0B5 (WinSight32) и $C0BE (Spy+).
Вопрос в следующем:
Код:
const
   PROGRAMM_MESSAGE=49333;// (или WM_APP+16565 или $C0B5)
...
  procedure InMessage(var a:TMessage); message PROGRAMM_MESSAGE;// собственно ошибка компиляции в сабже
хотя
Код:
...
begin
   SendMessage(ProgrammHandle,PROGRAMM_MESSAGE,0,0);// тут все в порядке
т.е. отправить такое сообщение можно, а обработать получение нельзя?
Ф1 говорит, что такое может быть только при отрицательном значении message (вернее <=0), а тут...
за рамки integer (max 2 млрд с копейками), а уж тем более cardinal (4 млрд с копейками) явно не выхожу. И еще, все компилируется нормально, если
Код:
 PROGRAMM_MESSAGE<=WM_APP+16383;
(16383=2^14-1) - и ни с чем это не вяжется.
Как можно обработать получение данного сообщения?
Ответить с цитированием