Форум: "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.048 c
1-46428           Viktor1               2002-04-03 00:42  2002.04.15  
Помогите разобраться !!!


1-46424           Zeerov                2002-04-02 16:59  2002.04.15  
Помогите новичку


4-46536           Yonic                 2002-02-12 04:40  2002.04.15  
Как скопировать текст из листбокса?


14-46482          _Oleg                 2002-03-06 00:02  2002.04.15  
COM-port


1-46319           helga                 2002-04-02 18:00  2002.04.15  
CopyFile