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

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

Stdcall - необходимость его использования [D5, NT4]


oomneeq ©   (2003-02-06 13:41:00) 

Приветствую вас,

помогите сообразить.

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

есть ли еще случаи, где без stdcall нельзя?
не связано ли это как то с разными (дин/стат) способами загрузки
Dll.

правильно ли утверждение, что способ передачи параметров может быть в принципе любым, лишь бы он был известен

развейте плиз сомненья


Юрий Зотов   (2003-02-06 23:33:00) [1]

StdCall - стандартное виндовое соглашение о вызове. Соответственно, если Вашу DLL будут использовать чужие программы и/или программы, откомпилированные с других языков, то нужно придерживаться стандарта. И если Вы пишете callback, который будет вызывать сама система - то же самое. Это обеспечит совместимость.

В остальных случаях (т.е., когда Ваша Deplhi-программа использует Вашу же Delphi-DLL) соглашение о вызове может быть любым - но строго одинаковым на вызываемой и вызывающей стороне.


icWasya   (2003-02-06 13:53:00) [2]

просто все Windows DLL объявлены как stdcall


Anatoly Podgoretsky   (2003-02-06 13:49:00) [3]

Правильно, лишь бы использовался один и тот же


Наверх

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