OCX 调试遇到问题

1.提示不是一个可执行的文件没有为这个文件类型注册的注册帮主程序  --- 缺少ocx依赖的dll 文件

2.1>正在生成代码
1>已完成代码的生成
1>正在嵌入清单...
1>正在注册输出...

编译到此处 程序卡住不动,我在DLL main 文件中添加了2个全局变量。注释掉 可以通过。
http://bbs.csdn.net/topics/340091362  来源这篇 问题。

2.未能注册输出 请确保您有修改注册表的相应权限
首先检查是否缺少DLL.


工程设置的问题,VS2005建的STL工程中默认的设置是:

ALT的使用:动态链接到 ATL

配置属性->链接器->常规->注册输出: 是

改为:

ALT的使用:静态链接到 ATL

配置属性->链接器->常规->注册输出: 否

就这么简单就解决了,不过倒花了我不少时间去找问题。

注:我已经是管理员登陆,对注册表有完全的操作权限。

附:


3. 经过第二步编译成功但是注册时 仍然出错。---重启。

出差原因.  出错的OCX 或者(dll)调用了另外一个DLL(记为AAA.DLL) 中的函数. 而这个函数式新添加到dll中.也就是在(AAA.DLL 中添加了一个新的导出函数.且这个函数被Ocx使用)
编译不会出错也就是 按照1方法修改后编译通过,但是注册这个DLL 时会提示找不到文件. 如果不安第一步修改,则问题就是
error PRJ0050: 未能注册输出。请确保您有修改注册表的相应权限。错误.

如何编写一个控件:

4> 另外一个情况也会导致同样的问题, 当前的OCX 控件已经通过其他的应用程序安装,到注册表中,此时 注册这个OCX 控件 仍然会导致提示这个错误.因此

如果检查到依赖的DLL 不缺少的情况下,可尝试 将之前安装的OCX 卸载.



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值