vs2010编译程序无法在XP SP2以前运行的解决方案

 .686p 
.model flat, stdcall
public _imp__DecodePointer@4
public _imp__EncodePointer@4
.data
_imp__DecodePointer@4 dq dummy32
_imp__EncodePointer@4 dq dummy32
.code
dummy32 PROC p: DWORD
mov eax, p
ret sizeof(DWORD)
dummy32 ENDP
end

vs2010编译的程序无法在XP SP2以前的平台上运行,这是由于MS在处理(有可能有意)库函数的时候出现了问题,试过多种解决方案,最后还是得上汇编,把上面的代码保存成vs10port.asm加到项目中用masm编译然后生成的obj和主程序链在一起即可。

x64显然不用兼容这些。

其它的奇技淫巧未能奏效。这里没测试win 2000,只测试了xp sp0和2003 sp0,如果在win 2000上还缺别的函数,同样的方式加入即可。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值