博客
关于我
"没有找到MSVCP80D.dll,因此这个应用程序未能启动。重新安装应用程序...
阅读量:800 次
发布时间: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/

    你可能感兴趣的文章
    oracle 抓包工具,shell 安装oracle和pfring(抓包) 及自动环境配置
    查看>>
    Oracle 拆分以逗号分隔的字符串为多行数据
    查看>>
    Oracle 排序中使用nulls first 或者nulls last 语法
    查看>>
    oracle 插入date日期类型的数据、插入从表中查出的数据,使用表中的默认数据
    查看>>
    Oracle 操作笔记
    查看>>
    oracle 数据库 安装 和优化
    查看>>
    oracle 数据库dg搭建规范1
    查看>>
    Oracle 数据库常用SQL语句(1)
    查看>>
    Oracle 数据库特殊查询总结
    查看>>
    Oracle 数据类型
    查看>>
    oracle 数据迁移 怎么保证 和原表的数据顺序一致_一个比传统数据库快 1001000 倍的数据库,来看一看?...
    查看>>
    oracle 时间函数
    查看>>
    oracle 时间转化函数及常见函数 .
    查看>>
    Oracle 权限(grant、revoke)
    查看>>
    oracle 查询clob
    查看>>
    Oracle 比较 B-tree 和 Bitmap 索引
    查看>>
    Oracle 注意点大全
    查看>>
    UML- 组件图(构件图)
    查看>>
    oracle 用户与锁
    查看>>
    oracle 由32位迁移到64位的问题
    查看>>