.net - C#: How to call a method while forcing different marshalling? -


The method declared in one of Microsoft's primary interop assembly is incorrect.

It has been declared:

  Write zero (object [] Rangora);  

That's wrong, and in fact it should be declared in this form:

  Write zero ([Marshal AS (uncertain type, cypheryer)] Object [] Psarray);  

I need to compile the compiler to use the [in, unmanagedType.SafeArray]] while calling the original code.

I do not resist doing something like

  object [] parameter = new object [1]; Parameter [0] = theStringIWantedToPass; talk. Gate type () InvokeMethod ("Write", Binding Flex. Invocomath, Empty, Object, Parameter);  

But I have to know how to override InvokeMethod to use Marshalling. Unmanaged. SafeArray .

Note: I say "like" because I do not know what I need from using reflection to use a method. The issue was that I do not oppose methods for long periods, or to issue registers and issue assembly JMP instructions, as long as the .NET allows this kind of thing.

Note: I can not declare the class again with a different sign, because then there is a separate class.

Comments