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

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

Необязательный параметр в библиотеке типов. [D7, WinXP]


GanibalLector ©   (2006-08-14 18:05:00) 

Ставлю значек в "Has Default Value",естественно ставлю значение в "Default Value'.
В *_TLB.pas это не отобразилось.

function Fuck(Param1: Integer; Param2: Integer): Integer; safecall;

Хотя  в IDL пишут

[
id(0x000000CC)
]
HRESULT _stdcall Fuck([in] long Param1, [in, defaultvalue(2)] long Param2, [out, retval] long * VAlue );


Вызывая,все это без параметра получаю ошибку(недопустимое число параметров) :

var Obj:Variant;
begin
 Obj:=CreateOleObject('T2k.General');
 ShowMessage(IntToStr(Obj.Fuck(3)));// !! с 2 параметрами все на ура
end;


Вопрос : как заставить библиотеку типов понять необязательный параметр в некотором методе???


DiamondShark   (2006-08-14 18:39:00) [1]

Понятное дело, в визуальном редакторе флажок соответсвующий есть.
;)


DiamondShark   (2006-08-14 18:37:00) [2]


> [
> id(0x000000CC)
> ]
> HRESULT _stdcall Fuck([in] long Param1, [in, defaultvalue(2)]
> long Param2, [out, retval] long * VAlue );

HRESULT _stdcall Fuck([in] long Param1, [in, optional, defaultvalue(2)] long Param2, [out, retval] long * VAlue );


Наверх

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