i'm adding functionality to an existing C++ DLL that will be called from a C# interface. the code is open on both ends.
i need to pass a simple fixed size multidimensional array from the interface to the DLL.
for example in C#:
byte[, ,] arrayKeys = new byte[3, 2, 4] {
{ {0x01, 0x23, 0x45, 0x55}, {0xCD, 0xEF, 0x12} },
{ {0x9A, 0xBC, 0xDE, 0xAA}, {0x78, 0x90, 0xCD} },
{ {0x67, 0x89, 0xA0, 0x98}, {0x90, 0x11, 0x22} }};
i've researched online, but haven't really found anything that fits my parameters exactly. most i've found is 2D arrays. if i've missed something, please don't hesitate to provide an existing link.
is there marshaling involved? can i pass the array directly or is there some type of array pointer necessary for the C++?