unresolved token/symbol in MC++ wrapper class calling native code
- by rediVider
I'm new to MC++ and have basically no idea what's going on yet.
In trying to get this working i've determined many things that don't work, i'm just looking for one of the ways that will work.
I have a mc++ class as follows that seems to have to be a "ref" class to allow me to see any methods/properties.
public ref class EmCeePlusPlus
{
static void Open(void)
{
Testor* t = new Testor();
Testor::Open();
};
};
extern public class Testor
{
public:
Testor()
{
};
static void Open(void)
{
int x = 3;
int xx = cli_lock(x);
};
};
Now, the only reason i created the class Testor, and moved the call to cli_open to it, is because i was getting a unresolved external symbol if i put the same call in the ref class. In this current code, however, I get an uresolved token error and unresolved symbol error ONLY if i have the call to Testor::Open(). If that line is commented then it compiles fine. As it is I get the errors below.
cli_lock() is native code that is able to be called externally by other native DLLs with not problems. Any ideas where i should be looking?
error LNK2028: unresolved token (0A000056) "extern "C" int __cdecl cli_lock(int)" (?cli_lock@@$$J0YAHH@Z) referenced in function "public: static void __cdecl Giga::Testor::Open(void)" (?Open@Testor@Giga@@$$FSAXXZ)
error LNK2019: unresolved external symbol "extern "C" int __cdecl cli_lock(int)" (?cli_lock@@$$J0YAHH@Z) referenced in function "public: static void __cdecl Giga::Testor::Open(void)" (?Open@Testor@Giga@@$$FSAXXZ)