(非常之郁闷的一个下午,睡完午觉,发现早上搭好的代码没办法调试了。顿时抓狂了下,后来还是想了下早上干过什么。隐隐约约记得把一个MSVCR90.DLL拖到虚拟机去的感觉,然后还改过shared的项目属性,不过只是个预编译头开关。)
——————
更新,最近发现这个问题可能是由于我的VS2008出问题,有个项目包含stdlib.h就报丢失MSVCR90.DLL。
——2012/04/16
——————
然后就针对性的,先把整个项目重新解压,恢复原来的配置。再者,搜查一下MSVCR90.DLL,发现机子里面还有几个……这是个VS2008相关的Debug用的dll。就郁闷,不是有MSVCR90.DLL了么。怎么会不行。所以就将一个MSVCR90.DLL直接拷到了工程目录。这个时候就报另一个错误,Debug Error。当时第一反应是和之前丢失pthread的情况相同,遂用DLL工具,不过不行,总是说服务端信息不足。之后,再Google了N遍后,看到了如下这么个解决方案:
1. 在“属性”->“C/C++”->“代码生成”->“运行时库”里面设为“多线程DLL”
2. 在程序里添代码:
#pragma comment(linker, "\"/manifestdependency:type='Win32' name='Microsoft.VC90.CRT