博客
关于我
"没有找到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 中开启二进制日志(Binlog)
    查看>>
    MySQL 中文问题
    查看>>
    MySQL 中日志的面试题总结
    查看>>
    mysql 中的all,5分钟了解MySQL5.7中union all用法的黑科技
    查看>>
    Mysql 中的日期时间字符串查询
    查看>>
    MySQL 中锁的面试题总结
    查看>>
    MySQL 中随机抽样:order by rand limit 的替代方案
    查看>>
    MySQL 为什么需要两阶段提交?
    查看>>
    mysql 为某个字段的值加前缀、去掉前缀
    查看>>
    mysql 主从
    查看>>
    mysql 主从 lock_mysql 主从同步权限mysql 行锁的实现
    查看>>
    mysql 主从互备份_mysql互为主从实战设置详解及自动化备份(Centos7.2)
    查看>>
    mysql 主从关系切换
    查看>>
    mysql 主键重复则覆盖_数据库主键不能重复
    查看>>
    Mysql 优化 or
    查看>>
    mysql 优化器 key_mysql – 选择*和查询优化器
    查看>>
    MySQL 优化:Explain 执行计划详解
    查看>>
    Mysql 会导致锁表的语法
    查看>>
    mysql 使用sql文件恢复数据库
    查看>>
    mysql 修改默认字符集为utf8
    查看>>