error PRJ0050: 未能注册输出。请尝试用提升的权限从命令提示窗口中注册该组件。

m504055331 2014-05-15 05:03:26
如题,
我用vs2005向导建立的ATL工程,在debug模式下编译注册成功
在release模式下提示:error PRJ0050: 未能注册输出。请尝试用提升的权限从命令提示窗口中注册该组件。错误
搜了好长时间,没有解决,
对于解答:
1.管理员权限注册
2,看看你的硬盘格式是不是FAT32的,如果是的话就在 属性 的 清单工具 把 使用FAT32解决办法选是!应该OK!
3,使用Dependcy观察缺少atl80.dll和msvcr80d.dll,在VS2005安装目录下找到缺少的库拷贝到System32下去就可以了。
之上的方法都试过了,还是没有解决,
现求大神帮忙解决!!!
急求!!!!!!!
...全文
1138 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_35537557 2016-07-07
  • 打赏
  • 举报
回复
依赖的dll没放倒运行目录
m504055331 2014-05-16
  • 打赏
  • 举报
回复
引用 7 楼 zhao4zhong1 的回复:
[quote=引用 6 楼 miao504 的回复:] [quote=引用 5 楼 zhao4zhong1 的回复:] [quote=引用 4 楼 miao504 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
太谢谢您了,成功了 但是我还想再问下,为什么我debug的时候直接编译就可以注册成功,不用手动注册 release下直接编译不成功,还要手动注册呢?[/quote] 使用OleView.exe查看dll或ocx的注册情况。[/quote] 我用OleView.exe查看dll的注册,发现是debug目录下的,release目录下的还是没有注册出来, 然后我又查看了一下,发现我刚刚注册的是debug目录下的,没有注册release目录下的dll 又用上面的方法试着注册release目录下的dll,发现还是注册不上。为什么呢?[/quote] 用syswow64\regsvr32取消注册debug版的dll 用depends.exe查看release版dll依赖的dll[/quote] 谢谢了,已经解决了,感谢您的解答。。。
赵4老师 2014-05-15
  • 打赏
  • 举报
回复
引用 6 楼 miao504 的回复:
[quote=引用 5 楼 zhao4zhong1 的回复:] [quote=引用 4 楼 miao504 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
太谢谢您了,成功了 但是我还想再问下,为什么我debug的时候直接编译就可以注册成功,不用手动注册 release下直接编译不成功,还要手动注册呢?[/quote] 使用OleView.exe查看dll或ocx的注册情况。[/quote] 我用OleView.exe查看dll的注册,发现是debug目录下的,release目录下的还是没有注册出来, 然后我又查看了一下,发现我刚刚注册的是debug目录下的,没有注册release目录下的dll 又用上面的方法试着注册release目录下的dll,发现还是注册不上。为什么呢?[/quote] 用syswow64\regsvr32取消注册debug版的dll 用depends.exe查看release版dll依赖的dll
m504055331 2014-05-15
  • 打赏
  • 举报
回复
引用 5 楼 zhao4zhong1 的回复:
[quote=引用 4 楼 miao504 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
太谢谢您了,成功了 但是我还想再问下,为什么我debug的时候直接编译就可以注册成功,不用手动注册 release下直接编译不成功,还要手动注册呢?[/quote] 使用OleView.exe查看dll或ocx的注册情况。[/quote] 我用OleView.exe查看dll的注册,发现是debug目录下的,release目录下的还是没有注册出来, 然后我又查看了一下,发现我刚刚注册的是debug目录下的,没有注册release目录下的dll 又用上面的方法试着注册release目录下的dll,发现还是注册不上。为什么呢?
赵4老师 2014-05-15
  • 打赏
  • 举报
回复
引用 4 楼 miao504 的回复:
[quote=引用 1 楼 zhao4zhong1 的回复:] 在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
太谢谢您了,成功了 但是我还想再问下,为什么我debug的时候直接编译就可以注册成功,不用手动注册 release下直接编译不成功,还要手动注册呢?[/quote] 使用OleView.exe查看dll或ocx的注册情况。
m504055331 2014-05-15
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
太谢谢您了,成功了 但是我还想再问下,为什么我debug的时候直接编译就可以注册成功,不用手动注册 release下直接编译不成功,还要手动注册呢?
m504055331 2014-05-15
  • 打赏
  • 举报
回复
引用 2 楼 miao504 的回复:
[quote=引用 1 楼 zhao4zhong1 的回复:] 在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
但是我的程序是32位的程序啊,这个也要把atl80.dll和msvcr80d.dll copy到c:\windows\syswow64下?[/quote] 不好意思,没有看清楚,我去试下。。
m504055331 2014-05-15
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
但是我的程序是32位的程序啊,这个也要把atl80.dll和msvcr80d.dll copy到c:\windows\syswow64下?
赵4老师 2014-05-15
  • 打赏
  • 举报
回复
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;

64,676

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧