Форум: "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.029 c
1-46311           Алекс555              2002-04-03 12:37  2002.04.15  
Друзья, подскажите для чего нужны указатели, на простом примере


3-46228           michael_B             2002-03-23 16:46  2002.04.15  
Как создать базу данных Access во время выполнения


1-46349           KAA                   2002-04-01 15:31  2002.04.15  
DecisionCube


3-46253           Orion                 2002-03-24 16:13  2002.04.15  
Отображение данных из нескольких DataSet ов одновременно.


1-46364           Alibaba               2002-04-04 12:48  2002.04.15  
xlReport