From: Drew on
In order to be compatible with a 3rd party library we need to
compile our projects with /MT this has resulted in lots of unresolved
externals (e.g.):

unresolved external symbol "char const * const _afxPchNil"
nresolved external symbol "public: static struct CRuntimeClass const
CWnd::classCWnd"
unresolved external symbol "protected: static struct AFX_MSGMAP const
CDialog::messageMap"
unresolved external symbol "protected: static struct AFX_MSGMAP const
CPropertyPage::messageMap"

etc... for a total of 59 unresolved externals. These particular unresolved
externals are all coming from files that are part of our projects. There
are
also some coming from 3rd party libraries (which I can understand). What
is the trick to make this work?

Thanks,
Drew


From: Igor Tandetnik on
Drew <drew.nospam.myers(a)esrd.com> wrote:
> In order to be compatible with a 3rd party library we need to
> compile our projects with /MT this has resulted in lots of unresolved
> externals (e.g.):
>
> unresolved external symbol "char const * const _afxPchNil"

You need to make sure that your CRT usage agrees with MFC usage. I bet
you switched from Multithreaded DLL (/MD) to Multithreaded (/MT), but
have not changed "Use of MFC" from "Use MFC in a Shared DLL" to "Use MFC
in a Static Library".
--
With best wishes,
Igor Tandetnik

With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going to
land, and it could be dangerous sitting under them as they fly
overhead. -- RFC 1925


From: Drew on

"Igor Tandetnik" <itandetnik(a)mvps.org> wrote in message
news:O8UcfzFVGHA.4900(a)TK2MSFTNGP12.phx.gbl...

> You need to make sure that your CRT usage agrees with MFC usage. I bet you
> switched from Multithreaded DLL (/MD) to Multithreaded (/MT), but have not
> changed "Use of MFC" from "Use MFC in a Shared DLL" to "Use MFC in a
> Static Library".

Unfortunately, that is not the case. I am using the "Use MFC in a Static
Library"
setting for the projects that use MFC and "Not using MFC" for those that
don't.
I should mention that I am using VS6 (if that makes a difference) and
the Platform SDK from February 2003. I appreciate any suggestions.

Thanks,
Drew