dll自注册失败提示找不到指定的程序 - 问题排查
2015-09-06 10:33
399 查看
今天重新下载代码编译打包一系列流程后,安装报错提示某个dll注册
看错误代码云里雾里,于是我启动cmd,使用regsvr32注册此dll,注册失败,提示
loadlibrary失败比较有思路解决,但是后面提示找不到指定的程序,我就晕了。我理解的是注册程序找不到TopVDAddin文件,但是文件明明存在啊!
于是我用Dependency Walker查看,解析的确出错,
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
看不懂,于是我看检查了下它的依赖dll
发现Advapi32的图片颜色和其它不同,于是我查看它被引用的导出函数,发现RegSetKeyValueW状态为红色,而检查Advapi32所有的导出函数并没有RegSetKeyValue,于是转而咨询帮助文档,发现Windows Vista及以后的版本才支持此函数,于是我在代码里加入了以下语句
#include<winsdkver.h>
#define _WIN32_WINNT _WIN32_WINNT_WINXP
并将 RegSetKeyValue改为RegSetValueEx,问题解决。
其实我想说你给我个提示个找不到指定的程序是卯意思!
看错误代码云里雾里,于是我启动cmd,使用regsvr32注册此dll,注册失败,提示
loadlibrary失败比较有思路解决,但是后面提示找不到指定的程序,我就晕了。我理解的是注册程序找不到TopVDAddin文件,但是文件明明存在啊!
于是我用Dependency Walker查看,解析的确出错,
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
看不懂,于是我看检查了下它的依赖dll
发现Advapi32的图片颜色和其它不同,于是我查看它被引用的导出函数,发现RegSetKeyValueW状态为红色,而检查Advapi32所有的导出函数并没有RegSetKeyValue,于是转而咨询帮助文档,发现Windows Vista及以后的版本才支持此函数,于是我在代码里加入了以下语句
#include<winsdkver.h>
#define _WIN32_WINNT _WIN32_WINNT_WINXP
并将 RegSetKeyValue改为RegSetValueEx,问题解决。
其实我想说你给我个提示个找不到指定的程序是卯意思!
相关文章推荐
- delphi开发:win8 图标问题
- 解决windows句柄不够用的问题
- 养成数据库关闭的好习惯
- Leetcode 编程训练
- mac下Myeclipse2015编写的第一个hibernate程序myHibernateUser及源码
- 微信ANDROID客户端-会话速度提升70%的背后
- error F002: Module for [X64] is not a component of active platform.
- c++ 深浅拷贝
- CentOS 6.6 下配置软RAID5
- Codeforces Gym 100341I Hungry Queen 2 Set+模拟
- 在自己的控件里面不能销毁自己
- 内嵌IE防止死掉
- Linux学习记录(9)Linux基本网络命令
- Android实用代码七段(五)
- 在html静态页面按钮链接,给button加上提交的链接等方法
- 依赖Aspose.Cells Excel 导出
- 第二次作业
- 内核添加对yaffs2文件系统的支持
- godaddy.com 注册域名 买卖域名
- json教程系列(1)-使用json所要用到的jar包下载