Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

Будет ли работать PostMessage из dll?   Найти похожие ветки 

 
Aleksandr.   (2005-05-24 17:51) [0]

в библиотечке слишком дофига получилось переменных типа функция, которым присваиваются из программы обработчики разных событий. Подумал, может, ну его нафиг все и через PostMessage главному окну программы посылать, да только можно ли такое делать - раньше о таком не слыхал...


 
alpet ©   (2005-05-24 17:55) [1]

Будет, этому нет никаких препятствий.


 
Marser ©   (2005-05-24 17:59) [2]

Я бы скорее засомневался, можнно ли SendMessage использовать...


 
Игорь Шевченко ©   (2005-05-24 18:01) [3]


> Подумал, может, ну его нафиг все и через PostMessage главному
> окну программы посылать, да только можно ли такое делать
> - раньше о таком не слыхал...


А зачем ?


 
Aleksandr.   (2005-05-24 18:08) [4]

Игорь Шевченко © :

Ну как же зачем. Приходится объявлять кучу переменных типа:


var
 vSesDllLog          : procedure(Msg : shortstring);
 vTCPOnError         : function(iStatus : integer; pErrorStr : PChar) : longbool; stdcall;
 vTCPOnStatus        : function(iStatus : integer) : longbool; stdcall;
 vTCPFileInfo        : function(pFileName : PChar; iPos, iSize, iStatus : integer) : longbool; stdcall;
 vTCPRASError        : function(pRASErrror : PChar) : longbool; stdcall;
 vSessionFinish      : function(const iIssue : integer=0) : longbool; stdcall;
 vTCPRASStatusChange : function(pRASMessage : PChar) : longbool; stdcall;

объявлять в библиотеке функцию, через которую можно назначить им функции программы, в библиотеке везде втыкать проверку, не nil ли нужная переменная и вызывать ее, а так большинство просто зарегистрировал сообщение и гоняй его с параметрами...


 
Eraser ©   (2005-05-24 18:10) [5]

Aleksandr.   (24.05.05 18:08) [4]
просто зарегистрировал сообщение и гоняй его с параметрами...


Сомительное приемущество.


 
Игорь Шевченко ©   (2005-05-24 18:14) [6]

Aleksandr.   (24.05.05 18:08) [4]


> объявлять в библиотеке функцию, через которую можно назначить
> им функции программы, в библиотеке везде втыкать проверку,
> не nil ли нужная переменная и вызывать ее, а так большинство
> просто зарегистрировал сообщение и гоняй его с параметрами...


Сдается мне, что это совершенно разные вещи - сообщения и функции


 
Aleksandr.   (2005-05-24 18:39) [7]

Игорь Шевченко ©  :
В чем же разница? В использующей библиотеку программе по-любому нужно будет создавать методы, обрабатывающие все изменения и сообщения, так проще ведь им вешать (var Msg : TMessage); message  такая-то, чем гонять их адреса в dll. В смысле, кода меньше.


 
Игорь Шевченко ©   (2005-05-25 10:29) [8]

Aleksandr.   (24.05.05 18:39) [7]

И все-таки, сдается мне, что ты здорово путаешь. Не тот механизм пытаешься использовать. Ты приведи для образца, что ты хочешь заменить передачей сообщения и каким образом.



Страницы: 1 вся ветка

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.035 c
1-1119604820
heckfy1
2005-06-24 13:20
2005.07.18
Свойства принтера


14-1119952514
CatAndCAt
2005-06-28 13:55
2005.07.18
Издатели ПО


8-1111505240
savva
2005-03-22 18:27
2005.07.18
DirectX: "GetFrontBuffer ..... This function is very slow ..."


8-1111657859
Barloggg
2005-03-24 12:50
2005.07.18
Почему это глючит?


5-1091092638
Mellon
2004-07-29 13:17
2005.07.18
cm_mousewheel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский