This is exactly why I dropped using C# and wend back to Java. Documentation on Microsoft products is really bad sometimes.
EDIT: Thanks for the downvotes. I am a professional software engineer for hire and in each company this is EXACTLY the issue: documentation. You want me to help you build software? Fine: give me your documentation. Complain about the fact that it takes 2 months to properly understand your software and business rules? Improve your documentation.
I agree that the DCOM interface by IBM (20 years ago?) was just as bad... but if the source does not provide any documentation how can you be more clearer if you open it up in another language?
Around ten years ago I would have agreed, MSDN was fairly nice, pretty comprehensive even if a bit full of seemingly autogenerated descriptions like "FrobnicateBar: Frobnicates the bar and return result" at the edges. Nowadays? Not so much.
With MSDN docs the older the doc the better it is. Pick something from the early days of win32 and it is a 10 page doc, very well done. Pick something they made up last month and you usually get very basic things. It has been that way for a long time. I remember the orig .NET docs were terrible to use. They have improved decently over the years. I can not prove it but I suspect the docs are only improved when a support case necessitates it.
The args have to be object/variants, as it is the values for the sub that will be called and they can have any type. You would use generics today but keep in mind this is 1990s API.
EDIT: Thanks for the downvotes. I am a professional software engineer for hire and in each company this is EXACTLY the issue: documentation. You want me to help you build software? Fine: give me your documentation. Complain about the fact that it takes 2 months to properly understand your software and business rules? Improve your documentation.