应用程序配置不正确或初始化失败.docx

上传人:李医生 文档编号:8614115 上传时间:2020-12-07 格式:DOCX 页数:2 大小:65.73KB
返回 下载 相关 举报
应用程序配置不正确或初始化失败.docx_第1页
第1页 / 共2页
应用程序配置不正确或初始化失败.docx_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《应用程序配置不正确或初始化失败.docx》由会员分享,可在线阅读,更多相关《应用程序配置不正确或初始化失败.docx(2页珍藏版)》请在三一文库上搜索。

1、与 VC6 不同 , VC2003 、VC2005 、 VC2008及其后续版本,引入了manifest清单的概念,即应用程序编译后会同时生成对应的.manifest文件 ,并将该 .manifest文件作为资源编译到 dll 或者 exe 中去。 manifest 文件实际上是一个XML 格式的文本文件,里面记录了dll 或exe 中要引用的CRT 、 MFC 、 ATL 库的版本和名称。VC6 编译的应用程序对CRT 、MFC 、ATL 的 dll 都是直接调用, 而 VC2003 、VC2005 、VC2008编译的程序都是先查询编译到资源中的manifest中的记录,然后按照记录提供的

2、版本和名称去搜寻对应的CRT 、MFC 、 ATL 库,搜索路径为环境变量中定义的路径,若搜索到的 文件版本号不匹配,则不会调用 ,从而导致应用程序配置不正确,程序无法启动或初始化失败等错误(相关信息可以在电脑日志中查看得知)。DLL 的版本信息可以使用HA-eXeScope650-moming.exe软件查看, 如下图所示 (红色框内既为版本号):至于你系统内的版本号,可以到VS 安装目录下的查看,本文以VS2008CRT库为例:可以看到,其版本号均为,于上面DLL 的一致,故不会存在问题VS2008的使用库目前为止分为三个版本:没有打过任何补丁的VS2008该版本对应的CRT/MFC/AT

3、L库的版本号为2、打过 SP1 补丁的 VS2008和 KB973675补丁打过该补丁后, 系统中存在着两个版本的CRT/MFC/ATL库,版本号分别为, 这导致了manifest 文件中记录的版本号和实际库的版本号不一致(程序要求它们的版本号一致才能运行)。这时 需要在工程设置中增加一个宏定义_BIND_TO_CURRENT_VCLIBS_VERSION,该宏定义于C:Program FilesMicrosoft Visual Studio 9.0VCincludecrtassem.h文件中,然后重新编译程序。然后还得将VS 安装目录下的 相对应库以及对应的manifest文件拷贝到执行程序同目录下。13、打过 SP1 补丁、 KB973675补丁与 KB971092补丁这是最新的更新, 将 CRT/MFC/ATL库的版本号升级到了,仍需在工程设置中增加一个宏定义 _BIND_TO_CURRENT_VCLIBS_VERSION,以及将对应的库文件和manifest 文件拷贝到执行程序同目录下,这样程序到任何机器上都能够正常运行了。2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1