Visual studio 2008 无法在发布模式下构建我的项目!请帮帮我

Visual studio 2008 无法在发布模式下构建我的项目!请帮帮我,visual-studio-2008,mfc,Visual Studio 2008,Mfc,我在这里有一个非常复杂的情况…实际上我正在开发一个MFC项目。在我的项目中,我有另一个小项目,作为我主要项目的库输入。。我在我的项目设置中将“使用MFC”--设置为“在共享Dll中使用MFC”…它工作得很好..但是当我将“使用MFC”--设置为“在静态Dll中使用MFC”.我无法在调试/发布模式下构建项目。原因是我不想设置“使用MFC作为共享Dll”是因为我希望我的项目在不支持visual studio的计算机上运行…我收到以下错误: 错误LNK2005:“void*u cdecl运算符new(

我在这里有一个非常复杂的情况…实际上我正在开发一个MFC项目。在我的项目中,我有另一个小项目,作为我主要项目的库输入。。我在我的项目设置中将“使用MFC”--设置为“在共享Dll中使用MFC”…它工作得很好..但是当我将“使用MFC”--设置为“在静态Dll中使用MFC”.我无法在调试/发布模式下构建项目。原因是我不想设置“使用MFC作为共享Dll”是因为我希望我的项目在不支持visual studio的计算机上运行…我收到以下错误:

错误LNK2005:“void*u cdecl运算符new(unsigned int)”(??2@YAPAXI@Z) 已在Client7z.lib(NewHandler.obj)uafxcwd.lib SelfExtractor中定义
我读了一篇文章[^]…根据他们的建议,我试图忽略下面的库Nafxcwd.lib;Libcmtd.lib但仍然不起作用…如果你们知道任何解决方案,请帮助我

您还必须将C运行时更改为静态版本。它位于C/C++->代码生成->运行库中


将其设置为/MT(Release)或/MTd(Debug)。

您还必须将C运行时更改为静态版本。它位于C/C++->代码生成->运行库中


将其设置为/MT(发布)或/MTd(调试)。

在调试模式下查看这些设置:

Link->General:
Object/Libary modules: Nafxcwd.lib Libcmtd.lib Client7z.lib

Link->Input:
Object/Libary modules: Nafxcwd.lib Libcmtd.lib Client7z.lib
Ignore libraries: libcmtd.lib,libcd.lib

胡乱猜测,但至少你可以试试。

在调试模式下查看以下设置:

Link->General:
Object/Libary modules: Nafxcwd.lib Libcmtd.lib Client7z.lib

Link->Input:
Object/Libary modules: Nafxcwd.lib Libcmtd.lib Client7z.lib
Ignore libraries: libcmtd.lib,libcd.lib

一个疯狂的猜测,但至少你可以试试。

我这么做了……但仍然是同一个错误……疯狂的是,如果我将项目设置为发布模式,它仍然是/MT(调试)……我还尝试了所有其他模式……这对我没有帮助你一定链接了其他库,并且导致了额外的依赖关系。尽量消除任何“附加包含”和“忽略库”。另一种方法是强制链接,就像Nick D的示例一样。我所做的是将另一个库文件作为输入添加到我的项目中(需要它)…现在我所做的是删除库输入并将其转换为dll,然后将所需函数从该模块导出到我的项目中。。。它的工作gr8…没有必要排除Nafxcwd.lib Libcmtd.lib这些库我做到了…但它仍然是相同的错误…疯狂的是,如果我将我的项目设置为发布模式,它的still/MT(Debug)…我还尝试了所有其他模式…这对我没有帮助你必须链接其他库,这会导致额外的依赖关系。尽量消除任何“附加包含”和“忽略库”。另一种方法是强制链接,就像Nick D的示例一样。我所做的是将另一个库文件作为输入添加到我的项目中(需要它)…现在我所做的是删除库输入并将其转换为dll,然后将所需函数从该模块导出到我的项目中。。。而且它的工作gr8…没有必要排除Nafxcwd.lib Libcmtd.lib这些lib's我对这个错误感到厌烦:)如果你正确地遵循了说明,它应该可以工作。我过去做过很多次。每次更改设置时,也要尝试重建所有内容。我对这个错误感到厌烦:)如果您正确地按照说明操作,它应该会工作。我过去做过很多次。无论何时更改设置,也要尝试重建所有内容。