C++ 在同一visual studio解决方案中使用\MDd和\MTd?

C++ 在同一visual studio解决方案中使用\MDd和\MTd?,c++,visual-studio,casablanca,C++,Visual Studio,Casablanca,我有一个很大的预先存在的代码库,它依赖于许多外部库,这些库都使用\MTd作为运行时设置。这个代码库是稳定的,并且在这个配置中经过了很好的测试。我宁愿保持原样 我正在尝试将一个新的外部库集成到代码库中,以防它是卡萨布兰卡REST SDK,但我刚刚发现它似乎需要与\MDd设置一起使用。当我发现这个问题时,我在std:shared\u ptr中发现了一些奇怪的无法追踪的bug。当我将我的独立项目改为使用\MDd卡萨布兰卡时,效果要好得多 Visual studio似乎不允许我使用不同的设置—在一个解决

我有一个很大的预先存在的代码库,它依赖于许多外部库,这些库都使用\MTd作为运行时设置。这个代码库是稳定的,并且在这个配置中经过了很好的测试。我宁愿保持原样

我正在尝试将一个新的外部库集成到代码库中,以防它是卡萨布兰卡REST SDK,但我刚刚发现它似乎需要与\MDd设置一起使用。当我发现这个问题时,我在std:shared\u ptr中发现了一些奇怪的无法追踪的bug。当我将我的独立项目改为使用\MDd卡萨布兰卡时,效果要好得多

Visual studio似乎不允许我使用不同的设置—在一个解决方案中似乎是全部还是全部

有人知道这种情况下的好办法吗?有什么建议吗?我甚至不知道该把注意力集中在哪里? 1我可以伪造Visual studio并同时使用两者吗?如果是这样,我真的应该这样做吗? 或者我应该尝试获得一个卡萨布兰卡的工作静态库?在讨论论坛上似乎不可能? 3还是我应该咬紧牙关,将整个解决方案移动到\MDd? 4最后,我是否应该减少我的损失,尝试不同的客户机-服务器框架?一个快速搜索显示了Windows C++客户端服务器解决方案,我可以使用Boost Asio,谷歌客户端API,WinSock?
这是我的第一个客户机-服务器实现,非常欢迎发表意见。

我们实际上将整个代码库移动到动态链接。还有其他库引起了一些问题,现在似乎是迁移代码库的好时机。问题解决了,至少现在是这样。谢谢您的反馈。

您看到了吗?这里有关于如何使用静态运行时构建它的详细说明。至于您的问题:您可以在“项目选项”窗口中指定每个项目的运行时。但是,如果需要在纯C ABI之外进行集成,则不能混合运行时模块。您提到的库具有完全不同的级别—这一个通过HTTP提供REST能力。使用boost asio,您将只有现成的TCP套接字—如果您需要HTTP,您需要自己完成。WinSock-是纯C Windows API。