编译出EXE在其他的机器上运行后提示:无法定位程序输入点到_ftol2于动态链接库msvcrt.dll上

    前些天我编译的一个程序在其他的机器上都可以运行的好好的,这些天更新了一些代码,因为重装了系统,用VS2008编

译出新的EXE程序,发现在其他的机器上运行后提示:无法定位程序输入点到_ftol2于动态链接库msvcrt.dll上

    查资料查了很久也没找到可用的办法,于是我把前些天代码重新编译了下,居然也提示说:无法定位程序输入点到_ftol2于动

态链接库msvcrt.dll上。

    最后用同学的XP下+VC2008来编译,结果在其他的机器上又可以运行了。

    如果有和我一样遇到这种情况的同学可以试试。

 

    其他的办法(我没有成功,但有些机器上应该是可以):1.把winsxs下的WinSxS目录下的VC9的文件打包,还有C:/WINDOWS/WinSxS/Manifests、C:/WINDOWS/WinSxS/Policies目录下,全部拷到目标机器上(这个是论坛上的fibbery大哥说的)

    2.用高版本的msvcrt.dll  替换windows/system32/下的msvcrt.dll (这个是百度的)

    3.用系统还原还原不能运行的机器,特别是一开始可以运行的那种

 

 

        刚刚再次做了下试验,终于发现出问题的真正原因了,原来不是编译问题,也不是msvcrt.dll的问题,而是因为我把VISTA下的IPHLPAPI.DLL拷到了程序目录下,而IPHLPAPI.DLL的版本和xp自带的版本不一致所以导致出错,删除IPHLPAPI.DLL后,一切都恢复了~~~囧

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值