Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно передать строку в DLL? [D6, Win2k]


Plumbum ©   (2002-02-28 03:34:00) 

Мож я совсем тупой, или только на половину?

Program Use;

procedure ErrMsg(mess: PChar); external "msg.dll";

var
mystr: string;
mess: PChar;

begin
mystr := "Hello world!";
mess := PChar(mystr));
ErrMsg(mess);
end.

и бибилиотека

library msg;

uses
Windows;

procedure ErrMsg(mess: PChar); stdcall;
begin
MessageBox (0, mess, "Error", MB_OK or MB_ICONERROR);
end;

exports
ErrMsg;

end.

и получаю вместо приветствия нечто вроде "ая"...


Plumbum   (2002-02-28 12:15:00) [1]

Точечно =))) Спасибо... И в книге тоже так, а я эту мелочь пропустил, причем везде. Сейчас прийду домой попробую на примере.


Alx2   (2002-02-28 09:30:00) [2]

>Юрий Федоров © (28.02.02 09:26)
Блин, слона то я и не приметил :((


Юрий Федоров   (2002-02-28 09:26:00) [3]

procedure ErrMsg(mess: PChar); external "msg.dll";
тоже нужно stdcall объявить?

shareMem вроде не при чем


Alx2   (2002-02-28 07:45:00) [4]

sharemem?


Наверх

Титульная страница Поиск, карта сайта Написать письмо