Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];




Вниз

MessageBox() and ShowMessage() - some troubles или 


Raptor   (2002-02-12 22:44) [3]

2 Fellomena
Функция ShowMessage - это делфийская функция и потому она будет корректно работать при подстановке вместо строки String символа Char. Функция же MessageBox - виндовая. Ей нужно корректно задать в качестве строкового параметра строку, заканчивающуюся нулем. А при приведении Char к PChar не получится такая строка, так как пременная типа String есть ничто иное как указатель, а Char это статический тип.
То, что сообщения никакие не выводились, не означает, что ошибок не было. Если попробуешь этот же код:
MessageBox(0, PChar(Chr(param)), "Message from DLL", 0);
запустить в проекте из под делфы, сразу же получишь ошибку от user32.dll.
Посему надо сделать так, как указывали выше, или так (что то же самое):

Var
s:String;
...............
s:=Chr(param);
MessageBox(0, PChar(s), "Message from DLL", 0);
...............




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.016 c
3-46266           Марина                2002-03-26 08:24  2002.04.15  
EmptyTable


6-46473           kerrik                2002-02-01 01:11  2002.04.15  
Статистика соединения интернет


3-46279           Pete                  2002-03-24 12:59  2002.04.15  
ADO SQL


4-46540           АлексейФ              2002-02-14 13:07  2002.04.15  
Мне надо перерисовать TListView


1-46321           Cyrex                 2002-04-01 17:34  2002.04.15  
Обращение к объектам, созданным в Run-Time.