P
PLS
I have a program that uses the OwlNext library. I am trying to get this
to compile with the /clr switch on. Needless to say, the program
compiles and works fine without this switch.
I end up with 12 errors, which are repetitions of these two:
1>vmonin.obj : error LNK2028: unresolved token (0A00056C) "protected:
virtual wchar_t const * __thiscall OWL::TEdit::GetClassName(void)" (?
GetClassName@TEdit@OWL@@$$FMAEPB_WXZ) referenced in function
"[thunk]rotected: virtual wchar_t const * __thiscall
OWL::TEdit::GetClassName`vtordisp{4294967292,0}' (void)" (?
GetClassName@TEdit@OWL@@$$F$2PPPPPPPM@A@AEPB_WXZ)
1>vmonwndw.obj : error LNK2028: unresolved token (0A0005C8) "public:
long __thiscall OWL::TWindow::SendMessage(unsigned int,unsigned
int,long)const " (?SendMessage@TWindow@OWL@@$$FQBEJIIJ@Z) referenced in
function "protected: virtual void __thiscall vmonWindow::SetupWindow
(void)" (?SetupWindow@vmonWindow@@$$FMAEXXZ)
Apparently the linker found a great many other functions, but not these
two. Both functions are class members. Here is the source for the two
functions:
Header:
LPCTSTR GetClassName();
Implementation:
LPCTSTR
TDialog::GetClassName()
{
return (LPCTSTR)WC_DIALOG;
}
Header:
TResult SendMessage(uint msg, TParam1 p1 = 0, TParam2 p2 = 0) const;
Implementation:
TResult
TWindow::SendMessage(uint msg, TParam1 param1, TParam2 param2) const
{
PRECONDITION(GetHandle());
TResult result = ::SendMessage(GetHandle(), msg, param1, param2);
return result;
}
I don't get it. Why would these functions have a problem and the many
others apparenty not?
Thanks,
++PLS
to compile with the /clr switch on. Needless to say, the program
compiles and works fine without this switch.
I end up with 12 errors, which are repetitions of these two:
1>vmonin.obj : error LNK2028: unresolved token (0A00056C) "protected:
virtual wchar_t const * __thiscall OWL::TEdit::GetClassName(void)" (?
GetClassName@TEdit@OWL@@$$FMAEPB_WXZ) referenced in function
"[thunk]rotected: virtual wchar_t const * __thiscall
OWL::TEdit::GetClassName`vtordisp{4294967292,0}' (void)" (?
GetClassName@TEdit@OWL@@$$F$2PPPPPPPM@A@AEPB_WXZ)
1>vmonwndw.obj : error LNK2028: unresolved token (0A0005C8) "public:
long __thiscall OWL::TWindow::SendMessage(unsigned int,unsigned
int,long)const " (?SendMessage@TWindow@OWL@@$$FQBEJIIJ@Z) referenced in
function "protected: virtual void __thiscall vmonWindow::SetupWindow
(void)" (?SetupWindow@vmonWindow@@$$FMAEXXZ)
Apparently the linker found a great many other functions, but not these
two. Both functions are class members. Here is the source for the two
functions:
Header:
LPCTSTR GetClassName();
Implementation:
LPCTSTR
TDialog::GetClassName()
{
return (LPCTSTR)WC_DIALOG;
}
Header:
TResult SendMessage(uint msg, TParam1 p1 = 0, TParam2 p2 = 0) const;
Implementation:
TResult
TWindow::SendMessage(uint msg, TParam1 param1, TParam2 param2) const
{
PRECONDITION(GetHandle());
TResult result = ::SendMessage(GetHandle(), msg, param1, param2);
return result;
}
I don't get it. Why would these functions have a problem and the many
others apparenty not?
Thanks,
++PLS