I'm calling a COM DLL from a C# application. The DLL is an SDK for an application. When called from the application itself it works correctly, so I'm happy it's installed okay. I'm trying to call it from a C# console application though, and I'm getting the error below when I try to create an object defined in the DLL:
System.Runtime.InteropServices.COMException: CoInitialize has not been called. (Exception from HRESULT: 0x800401F0 (CO_E_NOTINITIALIZED))
How do I call CoInitialize from C#, and should I even do so? From what I've read, this should have been done automatically for a C# app. Also the code I'm running is from the vendor's sample file, so presumably should be valid as is.
Please note, the vendor is no longer available, so the obvious first step isn't an option! I'm really just looking for any general suggestions as to why a COM DLL would raise this error when called from a .Net language.