Listing 1: sobj.idl Sample Interface Definition Language file
typedef struct { short size; [size_is(size)] unsigned char *pData; } wireCOMPARR; typedef [unique] wireCOMPARR * LPCOMPARR; typedef [wire_marshal(LPCOMPARR)] void * LPMYARRAY; [ object, uuid(005763A0-2850-11d1-ADCD-006097731D51) ] interface ISimpleObject : IUnknown { import "unknwn.idl"; import "oaidl.idl"; HRESULT DisplayArray([in]LPMYARRAY lpArr); }