in reply to Passing a pointer to a .NET DLL
What does oleview tell you?
Maybe you have to use something https://metacpan.org/pod/Win32::OLE::Variant#Variant-arrays?