我需要修改VS2010附带的C运行时,因为2010 CRT依赖于Windows XP SP2中发布的功能,我需要能够部署到Windows 2000。
具体来说,我需要删除对EncodePointer
和DecodePointer
的所有来电。
C运行时的源代码包含在C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ VC \ crt \ src中,因此在稍微修改源代码后似乎应该可以构建运行时。
哦,我不需要能够构建运行时的动态版本 - 仅限静态版本。 (我不能依赖用户在他们的系统上安装CRT。)
使用VS2008及更早版本,MSDN中有一个教程描述如何构建CRT,但我似乎无法在2010年找到它。
这样的事情可能吗?
答案 0 :(得分:6)
这是一个MSDN link。看起来你必须自己在VS2010中做到这一点。
您可以使用以下编译器和链接器选项来重建MFC,CRT和ATL库。从Visual C ++ 2010开始,不再提供用于重建这些库的脚本。
答案 1 :(得分:0)
如果是选项,我会考虑在VS2010中使用VC ++ 2008工具集,而不是构建自定义CRT。该程序解释为here。
答案 2 :(得分:0)
"哦,我不需要能够构建运行时的动态版本 - 仅限静态版本。"
由于您只需要静态链接,您可以尝试使用this技巧来提供EncodePointer和DecodePointer的实现。