我是在开发环境中出现的这个问题。我这里出现这个问题的原因是硬盘分区格式不对,应该为NTFS格式,这样清单就可以潜入到生成的exe文件中。也可以在项目属性中,进行设置:项目->属性->清单工具->常规->使用FAT32解决办法。
如果在部署的机器上出现这个问题,请参考网络中的其他的文章,如何部署项目。
产生这个问题的原因,是因为在VS2005中强制使用了清单,在你的debug/release目录中,会找到.manifest文件,使用VS打开它,里面标有所调用的动态库的版本号,几遍找到了相同名称的动态库文件,如果版本号不对,也会提示找不到文件。
之前在网上搜过windowsXP系统中搜索动态库的方式,但是msvcr80d.dll/msvcr80.dll这两个文件,都不在指定的目录中,而是在windows/winSxS目录(微软大力推崇的side-by-side)中,并且不同的版本号对应响应的目录。 不知这是如何找到的,值得进一步探讨。