Software Archive
Read-only legacy content
17061 Discussions

restricted COM interface anyone?

rahzan
New Contributor I
739 Views
I have written a com server which uses assumed array inputs. however VBA (in ms access) givz the following compile error:
"Function or interface makred as restricted, Or the function uses an automation type not supported in Visual Basic"

Any hints as to wut the heck this means, will be most appreciated.

Tim
0 Kudos
3 Replies
Intel_C_Intel
Employee
739 Views
Hi,

It's probably the "automation type" that it is complaining about. I don't remember about VBA, but I thinlk VB Script requires most arguments to be of type VARIANT. If that is the problem, you would have to change the data type to be VARIANT and get the SAFEARRAY from the VARIANT and deal with it as a SAFEARRAY.

The other (easier) thing to check is to make sure that the intent of your array argument is INOUT.

Leo
0 Kudos
rahzan
New Contributor I
739 Views
Thanks,
Methinks, intent=IN did it though why would it even be an allowed option if it fails (perhaps just for VBA??). INOUT works now.

Tim
0 Kudos
Intel_C_Intel
Employee
739 Views
It's an option becuse it is only a VB restriction - VC, VF, and maybe other COM clients can handle an intent IN array just fine...

Leo
0 Kudos
Reply