2015-01-26 121 views
0

我有一个庞大的预先存在的代码库,这取决于许多外部库,它们都使用\ MTd作为运行时设置。这个代码库是稳定的,并且在这个配置中经过了很好的测试。我宁愿保持原样。在相同的visual studio解决方案中使用 MDd和 MTd?

我正试图将一个新的外部库集成到代码库(重要的是它是卡萨布兰卡REST SDK),但是我刚刚发现它似乎需要与\ MDd设置一起使用。当我发现这个问题时,我在std:shared_ptr深处发现了一些奇怪的不可思议的错误。当我改变我的孤立项目使用\ MDd卡萨布兰卡效果更好。

视觉工作室似乎不允许我有不同的设置,它似乎是在一个解决方案中全部或没有?

有没有人知道这种情况很好的解决办法?有什么建议么?我甚至不确定在哪里集中我的注意力? 1)我可以伪造Visual Studio并同时使用它们吗?如果是的话,我应该这样做吗? 2)或者我应该试图获得卡萨布兰卡的静态工作库?它在论坛上不可能出现? 3)或者我应该咬紧牙关并将整个解决方案移至\ MDd? 4)最后,我应该减少失败并试用不同的客户端服务器框架吗?快速搜索显示我可以使用Boost Asio,Google客户端API,WinSock的Windows C++客户端服务器解决方案?

这是我第一个客户端服务器的实现和意见非常受欢迎。

+0

你见过[这个讨论](https://casablanca.codeplex.com/workitem/18)吗?有详细的说明如何使用静态运行时来构建它。至于你的问题:你可以在项目选项窗口中指定每个项目的运行时间。但是如果你需要整合到普通的C ABI之外,你就不能混合使用模块运行时。你提到的库是完全不同的级别 - 这一级通过HTTP提供REST功能。使用boost asio,你将只有TCP套接字开箱 - 如果你需要HTTP,你需要自己动手。 WinSock - 是纯C的Windows API。 – dewaffled 2015-01-26 20:05:15

回答

0

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

相关问题