Can we compile C library as .Net dll (containing and opening access to all C libs functions) by just compiling cpp project containing code like
extern "C" {
#include <library.h>
}
with /clr:pure
argument with VS? (VS10)
Or we should do something more trickey?
I found it is the best to use the old style Managed C++ for this.
CLR:PURE
just wont cut it.
Example:
extern "C" int _foo(int bar)
{
return bar;
}
namespace Bar
{
public __gc class Foo
{
public:
Foo() {}
static int foo(int bar)
{
return _foo(bar);
}
};
};
Compile with: /clr:oldSyntax
Now you can reference the assebmly, and call Bar.Foo.foo()
from .NET.