我有VS 2008,我希望我的应用程序能够在不需要包含MSVCR90.dll的情况下使用Windows 98.Win98自带MSVCR60,那我怎么能告诉MSVC这样做呢?是我追捕Visual Studio 6的唯一选择吗?
由于
*我也想避免静态链接msvcr
答案 0 :(得分:4)
您无法告诉Visual Studio使用早期版本的运行时库。即使您可以使用旧库进行编译,应用程序本身也无法正确运行,因为编译器将插入对它希望在库中的函数的调用,这可能不是这种情况。
我也想避免静态链接msvcr
为什么?这似乎是解决这个问题的完美有效方法。当然,你为它支付大约100kb的代码大小,但这是值得的,因为被迫使用Visual Studio 6的错误和不合格的编译器。
您也可以只包含MSVC ++可再发行组件,它包含正确的DLL,并且不需要标准库的静态链接。
答案 1 :(得分:1)
如果您想要定位Windows 98,您的选项是:
关于CRT发行:
如果您不是c ++特性(例如异常和STL)的“重度”用户,那么您可能无法在任何crt中进行链接。否则你的选择是:
答案 2 :(得分:0)
Low Overhead Microsoft Visual Studio C Runtime是一个静态可链接的C运行时,它最大限度地利用了已经与Windows一起分发的可用DLL。