将 MFC 应用程序从 Visual Studio 2010 编译到 2012 RC 会导致 LNK2038

Compiling a MFC app from Visual Studio 2010 to 2012 RC results in LNK2038(将 MFC 应用程序从 Visual Studio 2010 编译到 2012 RC 会导致 LNK2038)

本文介绍了将 MFC 应用程序从 Visual Studio 2010 编译到 2012 RC 会导致 LNK2038的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的项目在 VS 2010 的调试和发布模式下编译和运行正常.今天我尝试用 VS 2012 编译它,我得到了这个错误:

My project is compiling and running OK in debug and release modes in VS 2010. Today I tried to compile it with VS 2012 and I got this error :

1>  Generating Code...
1>pcrecppd.lib(pcrecpp.obj) : error LNK2038: mismatch detected for '_MSC_VER': 
value '1600' doesn't match value '1700' in NamesEditorDlg.obj

我在代码中搜索了_MSC_VER",但找不到任何匹配项.我也找不到1600"或1700".

I searched for "_MSC_VER" in the code but I could not find any match. Neither could I find "1600" or "1700".

所以我想知道如何解决这个问题.

So I am wondering how I can solve this problem.

推荐答案

看起来你在 vc2012 中使用来自 vc2010 的 .lib(猜测它看起来像一个 PCRE 库).您需要使用 DLL 重新编译所有 .lib 或运行时链接(即 LoadLibrary、GetProcAddress 等).

Looks like you're using a .lib from vc2010 in vc2012 (at a guess it looks like a PCRE library). You'll need to recompile all your .libs or run-time link with the DLLs (ie LoadLibrary, GetProcAddress etc.).

这篇关于将 MFC 应用程序从 Visual Studio 2010 编译到 2012 RC 会导致 LNK2038的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:将 MFC 应用程序从 Visual Studio 2010 编译到 2012 RC 会导致 LNK2038

基础教程推荐