COM OLE Automation DATE type

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

COM OLE Automation DATE type

Hideo Mizoguchi
Hi,

I'm having a trouble using COM object some of whose properties are of DATE
type.
One thing I noticed was in DATE class >> typeName, which simply returns
#date.
This typename string is used when Dolphin generates a wrapper class.

The problem is 'date' is not supported as a parameter type for <virtual
stdcall ....> primitive.
Because of that, wrapper generator fails to generate necessary methods.
When you try importing a type library in the ActiveX Component Wizard, you
can actually see the generator failing and writing some error messages in
the Transcript.

Please advise me how to fix this. Is simply changing '^#date' into '^#DATE'
in the class method mentioned above enough?

Hideo Mizoguchi


Reply | Threaded
Open this post in threaded view
|

Re: COM OLE Automation DATE type

Blair McGlashan
"Hideo Mizoguchi" <[hidden email]> wrote in message
news:9a25sm$36dh1$[hidden email]...

> Hi,
>
> I'm having a trouble using COM object some of whose properties are of DATE
> type.
> One thing I noticed was in DATE class >> typeName, which simply returns
> #date.
> This typename string is used when Dolphin generates a wrapper class.
>
> The problem is 'date' is not supported as a parameter type for <virtual
> stdcall ....> primitive.
> Because of that, wrapper generator fails to generate necessary methods.
> When you try importing a type library in the ActiveX Component Wizard, you
> can actually see the generator failing and writing some error messages in
> the Transcript.
>
> Please advise me how to fix this. Is simply changing '^#date' into
'^#DATE'
> in the class method mentioned above enough?

The VM does internally support OLE Automation DATEs as one of its "native"
types for external calls and it is recognised by the image code which
constructs callback type descriptors (see ExternalDescriptor), but
unfortunately it has been missed out of the compiler which does not
recognise it.

I think you will find that your suggested solution of just using #DATE (or
^self name) will work just fine,  - the #date external call type is really
just a minor optimization.

Thanks for the bug report.

Regards

Blair