Visual Studio 2010编译的C++程序如何支持Windows 2000
时间:2011-03-19 来源:Gao Peng
最近用了一下VS2010,发现居然不支持Win2000了,网上查了一下,有几篇参考文章,可以绕过微软的这个限制:
How to get Visual C++ 2010 MFC applications to run on Windows 2000
http://tedwvc.wordpress.com/2010/11/07/how-to-get-visual-c-2010-mfc-applications-to-run-on-windows-2000/
Can I use Visual Studio 2010's C++ compiler with Visual Studio 2008's C++ Runtime Library?
http://stackoverflow.com/questions/2484511/can-i-use-visual-studio-2010s-c-compiler-with-visual-studio-2008s-c-runtime/
Targeting Windows 2000/XP RTM/XP SP1 from Visual Studio 2010
http://www.zachburlingame.com/2011/03/targeting-windows-2000xp-rtmxp-sp1-from-visual-studio-2010/
其实就是通过汇编来创建dummy函数:
.model flat
.data
__imp__EncodePointer@4 dd dummy
__imp__DecodePointer@4 dd dummy
EXTERNDEF __imp__EncodePointer@4 : DWORD
EXTERNDEF __imp__DecodePointer@4 : DWORD
.code
dummy proc
mov eax, [esp+4]
ret 4
dummy endp
end
很奇怪,如果能够这样容易的重新对Win2000进行支持,为什么微软不这么做呢?难道就是为了逐步淘汰旧版本Windows而故意不支持了?