c# - intellisense in vb6 doens't work with Interop and UnmanagedType.Struct -
this question has answer here:
- how pass decimal c# vb6 interop 1 answer
i have c# interop class property:
decimal importodocumento { [return: marshalas(unmanagedtype.struct)] get; [param: marshalas(unmanagedtype.struct)] set; }
in vb6 should variant/decimal. if try use it, works. can assign value , can value. problem vb6 intellisense doesn't work. can see other properties of class not importodocumento. intellisense important because class used other people.
how can do?
thanks
the reason why method missing intellisense because type library exporter gives 2 warnings:
type library exporter warning processing 'classlibrary1.class1.get_importodocumento(#0), classlibrary1'.
warning: method or field has invalid element_type/native_type combination.type library exporter warning processing 'classlibrary1.class1.set_importodocumento(value), classlibrary1'.
warning: method or field has invalid element_type/native_type combination.
unable generate proper tlb information property, exporter omits entirely, if used [classinterface(classinterfacetype.autodispatch)]
. without information, property available late binding, why still works.
you need declare property object
have marshaled variant.
Comments
Post a Comment