博客
关于我
"没有找到MSVCP80D.dll,因此这个应用程序未能启动。重新安装应用程序...
阅读量:798 次
发布时间:2023-04-16

本文共 987 字,大约阅读时间需要 3 分钟。

在使用VS 2005(中文版)创建Win32工程时,可能会遇到如“未找到MSVCP80D.dll,程序无法启动”等错误。这种问题通常与生成的清单文件(manifest)有关,尤其是在FAT32文件系统环境下。

问题分析

这个错误类似的问题还包括MSVCR80D.dll和MSVCM80D.dll等。问题的根本原因是VS 2005默认采用增量链接技术,生成的可执行文件会嵌入清单文件(清单文件是XML格式的文本文件,由清单工具生成)。在FAT32文件系统下,当增量链接时,无法有效更新清单文件,最终导致清单文件无法嵌入到可执行文件中,从而引发错误。

解决方案

针对这一问题,以下是几种可行的解决方法:

方法一:禁用增量链接

在项目属性中,选择“属性” > “配置属性” > “链接器” > “常规”,将“启用增量链接”设置为“否”。这样每次生成可执行文件时,系统会直接嵌入清单文件,而不是依赖增量链接来更新清单文件。这种方式简单易行,适用于需要定期生成可执行文件的情况。

方法二:不嵌入清单文件

在项目属性中,选择“属性” > “配置属性” > “清单工具” > “输入和输出”,将“嵌入清单”设置为“否”。这样生成的可执行文件会伴随一个清单文件(文件名为*.manifest),但程序运行时需要使用该清单文件。这种方式增加了程序的依赖性,不建议长期使用。

方法三:禁用FAT32解决方案

在项目属性中,选择“属性” > “配置属性” > “清单工具” > “清单工具” > “使用FAT32解决方案”,将其设置为“否”。默认情况下,这一选项设置为“否”,但如果之前修改过,可以重新设置为“否”以确保清单工具正常工作。

方法四:手动清理旧文件

作为临时解决方案,可以在每次生成可执行文件前手动清理旧的*.ilk文件(增量链接文件)。可以通过在项目属性中添加额外的清理命令来实现,确保生成的可执行文件环境干净。

总结

这个问题主要出现在以下几种情况下:

  • 项目使用默认的增量链接模式。
  • 项目未启用FAT32解决方案。
  • 生成的可执行文件不是第一次(即在增量链接模式下更新清单文件时)。
  • 项目嵌入清单文件(默认情况下)。
  • 推荐使用方法一或方法三,因为它们不仅解决问题,还能保持程序的完整性和可靠性。如果需要更详细的配置,可以参考官方文档或社区资源,确保项目设置与开发环境的需求相匹配。

    转载地址:http://migfk.baihongyu.com/

    你可能感兴趣的文章
    mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
    查看>>
    mysql如何删除数据表,被关联的数据表如何删除呢
    查看>>
    MySQL如何实现ACID ?
    查看>>
    mysql如何记录数据库响应时间
    查看>>
    MySQL子查询
    查看>>
    Mysql字段、索引操作
    查看>>
    mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
    查看>>
    mysql字段类型不一致导致的索引失效
    查看>>
    mysql字段类型介绍
    查看>>
    mysql字段解析逗号分割_MySQL逗号分割字段的行列转换技巧
    查看>>
    MySQL字符集与排序规则
    查看>>
    MySQL字符集乱码
    查看>>
    mysql字符集设置
    查看>>
    mysql存储IP地址的数据类型
    查看>>
    mysql存储中文 但是读取乱码_mysql存储中文乱码
    查看>>
    MySQL存储引擎
    查看>>
    MySQL存储引擎
    查看>>
    MySQL存储引擎--MYSIAM和INNODB引擎区别
    查看>>
    Mysql存储引擎(1):存储引擎体系结构和介绍
    查看>>
    Mysql存储引擎(2):存储引擎特点
    查看>>