Mfc VS2005 nafxcw.lib(appcore.obj):错误LNK2001:未解析的外部符号

Mfc VS2005 nafxcw.lib(appcore.obj):错误LNK2001:未解析的外部符号,mfc,release-mode,Mfc,Release Mode,当我构建一个具有静态库输入(.lib)的项目时,会出现此错误。问题是我可以在调试模式下成功运行项目,但无法在发布模式下运行。它显示错误为 nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argv nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argc 请帮我解决这个问题。可能有答案给你: 在构建MFC应用程

当我构建一个具有静态库输入(.lib)的项目时,会出现此错误。问题是我可以在调试模式下成功运行项目,但无法在发布模式下运行。它显示错误为

nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argv
nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argc
请帮我解决这个问题。

可能有答案给你:

在构建MFC应用程序或DLL时,需要确保 相关图书馆同步:

  • 如果选择在共享库中使用MFC构建应用程序,则还必须使用动态版本的MFC 运行时(MSVCRT.DLL)
  • 如果选择构建调试MFC应用程序,则还必须使用调试版本的C运行时。同样,释放 MFC应用程序必须使用C运行时的非调试版本
  • 如果调试MFC应用程序使用扩展DLL,则每个扩展DLL也必须是调试版本。同样,发布应用程序必须匹配 释放扩展DLL。C运行时库的类型是固定的。 扩展DLL和使用它们的应用程序都必须在中使用MFC 共享库,它需要C语言的动态DLL版本 运行时
  • 如果要链接到任何也链接到MFC或CRT的静态库,则应确保每个静态库共享 属性(调试/发布、CRT静态/动态)与 应用程序
决议

更改应用程序或应用程序使用的C运行时库的类型 DLL,转到“生成/项目设置”属性页并切换到 C/C++选项卡。在C/C++页面上,选择“代码生成”类别。 更改“使用运行时库”列表框的值。小心 注意针对每种配置使其具体化;只有一个 配置时,应选择“Win32(80x86)Debug” 您可以更改此值

  • 调试,共享库MFC应用程序-“调试多线程Dll”

  • 发布,共享库MFC应用程序-“多线程Dll”

  • 调试,静态库MFC应用程序-“调试多线程”

  • 发布,静态库MFC应用程序-“多线程”


您无法运行它或无法生成它?可能与“调试”与“发布”中的项目设置有关。打开“项目-->设置”菜单并比较两种设置。请特别注意链接器下的设置。