Passing binary data via dispatch interface


 I've written a COM server/client using a dispatch interface.
It seems to be working fine so far, the I've come across
a problem when I want to pass a block of binary data
between the server and client.

 I can't use a custom interface since it's important for me
to support languages like VB/VBA.  I've seen solutions
that use horribly complicated workarounds
but I can't belive there isn't an easier way.

 Can't you pass eg. a reference to a Byte array, or use
a BSTR?  The latter includes a length count, so in
theory it can contain binary data.

 Thanks for any suggestions,