I've been browsing the web for over 48 hours reading up on interoperability and playing around with Pinvoke and C++/Cli (very limited the latter). There is an unmanaged c++ api (a namespace containing a lot of exported structs which contain methods, all pure virtual and implemented across several cpp files as classes and what not) and I would like to call into them from .NET. I do not really have access to the source code, only to the resulting dll and so It seems c++/cli would not work. But on the other hand, I have not been able to find examples, tutorials, or documentation of using Pinvoke for non c-style like apis which have namespace and structs and classes containing methods. I believe if they are exposed, the dll SHOULD contain entrypoints albeit mangled up in name...is my only choice without source code access then to do this? And if I may also ask..supposing i had access to the source code, what would be the most non-intrusive way (i.e. requiring the least modification if any) to wrap the api for .net use?
Thanks