我的目标是通过静态链接来避免安装Microsoft C ++ 2010。因为我不知道是否会在所有客户计算机上安装该软件包,并且他的IT部门不允许安装软件。
另一种选择是避免使用管理权限。 (例如,在我的程序所在的目录中提取dll)
我找到了一个可能的解决方案http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/ab187afb-3af0-44ba-a03c-dde9e5208a1a/,我尝试了参数/ MT。
我有2个错误:
Erreur 1错误LNK2019:symbole externenonrÚsolu__CrtDbgReportW rÚfÚrencddansla fonction“void __cdecl std :: _ Debug_message(wchar_t const *,wchar_t const *,unsigned int)“ (?_Debug_message @ std @@ YAXPB_W0I @ Z)C:\ Users \ philippe \ Downloads \ Portable 设备COM API示例\ C ++ \ libcpmtd.lib(stdthrow.obj)WpdApiSample
Erreur 2错误LNK1120:1 externes non rÚsolusC:\ Users \ philippe \ Downloads \ Portable Devices COM API 示例\ C ++ \ Debug \ WpdApiSample.exe 1 1 WpdApiSample
我是好的方式吗?我该如何解决这个问题?
答案 0 :(得分:2)
“要求”部分的_CrtDbgReportW
文档说明:
库:仅调试C运行时库的版本。
这意味着库的发布版本中不存在此类函数,因此,代码的发行版本不应该调用它们。
根据this table,您可以使用/MTd
,以便链接到静态调试版本。
答案 1 :(得分:1)
/ MT for release configuration,/ MTd for debug