最近突然遇见一个问题,“没有找到MSVCR80D.dll,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题”,有时候重启计算机就好了,但不是根本解决方法,最后通过强大的搜索引擎,得到了答案:
出错原因:
微软采用了一个新的DLL方案, 一个exe还要配mainfest文件, 在fat32中时间戳会有问题. 在NTFS中不会。
解决方法:
1. 微软对于这个问题应该也有处理,不过感觉不是很人性化。在“属性-> 配置属性-> 清单工具-> 常规“下有一个”使用FAT32解决办法,把它选成是,就可以了。(注意:一定要先配置这个选项,然后再编译工程,要不然还是不好用:)
2. 找到你的工程的文件夹,如(myproject),找到其下的myproject/myproject/Debug/ myproject.rec,把它删掉(删掉整个Debug目录也可以),重新编译,搞定!
3. 首先找到你的vs.net安装目录(提示假如:D:/Program Files/Microsoft Visual Studio 8),定位到Microsoft Visual Studio 8/VC/VCWizards/AppWiz/Generic/Application/scripts/文件夹,里面只有一个文件default.js 打开修改它:(提示首先备份哦)
找到:
function AddSpecificConfig(proj, strProjectName, bEmptyProject, strAppType)
{
try
{
var bMFC = wizard.FindSymbol("SUPPORT_MFC");
var bATL = wizard.FindSymbol("SUPPORT_ATL");
var config = proj.Object.Configurations("Debug");
找到这个位置之后 往这加上代码:
var MFTool = config.Tools("VCManifestTool");
MFTool.UseFAT32Workaround = true;
之后保存 重新开启vs 2005 新建 项目之后看看 问题就消失了。来源