![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Record в Type Library [Delphi, Windows]
cargo © (2006-04-28 03:58:00)Вот значит, никогда не доводилось использовать тип Record в Type Library, и с удивлением обнаружил что не оно работает. Например:
Record1 имеет поле Field1
COM-объект Obj имеет read-only свойство Rec, которое возвращает запись Record1. Обработка метода GetRec показана ниже
function TObj.Get_Rec: Record1;
begin
Result.Field1 := 1;
end;
Но когда я пытаюсь посмотреть значение поля в ASP (Response.Write MyObj.Rec.Field1), оно мне говорит "An unhandled data type was encountered.". В чем может быть проблема?
cargo (2006-04-28 12:49:00) [1]В TLB Record1 определен вот так,
Record1 = packed record
Field1: Integer;
end;
а свойство объекта Rec вот так:
IObj = interface(IDispatch)
['{3E5EA4A0-65C4-4B92-BE70-695187F2349B}']
function Get_Rec: Record1; safecall;
property Rec: Record1 read Get_Rec;
end;
IObjDisp = dispinterface
['{3E5EA4A0-65C4-4B92-BE70-695187F2349B}']
property Rec: {??Record1}OleVariant readonly dispid 203;
end;
isasa (2006-04-28 10:41:00) [2]А что, в TLB(IDL) тоже тип record1 ?
Среди поддерживаемых стандартных, его нет, а стоит, скорее всего, variant.