Visual Studio CRT - 如何与静态和动态CRT共享客户端使用的静态库?

时间:2013-08-29 15:49:56

标签: c++ visual-studio-2010 visual-studio msvcrt

如果您有以下项目结构:

 -Shared
 - Exe_Proj1
 - Exe_Proj2

以下列方式使用CRT:

-Shared (Dynamic CRT /MD)
  - Exe_Proj1 (Dynamic CRT /MD)
  - Exe_Proj2 (Static CRT /MT)

那么如何与“Exe_Proj2”共享“共享”项目?

我考虑过在共享中使用/ NODEFAULTLIB,但这不会改变“代码生成”项目设置区域下的CRT设置。

1 个答案:

答案 0 :(得分:1)

如果Shared是静态库,则无法执行此操作。让Exe_Proj2使用动态CRT或尝试死。

如果Shared是动态库,它应该可以工作,只要你不传递任何需要CRT服务(任何C ++标准库类型,文件句柄等)的库,但是在这种情况下,链接器不应该抱怨。