Nav*_*Nav 11 activex openscenegraph visual-studio-2010
一个奇怪的错误:
错误MSB8011:无法注册输出.请尝试启用每用户重定向或使用提升的权限从命令提示符注册该组件.C:\ Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets 744
尝试在ActiveX控件中使用OpenSceneGraph(OSG)时出现此错误.谷歌搜索显示各种解决方案并没有真正解决问题或找到错误的确切原因,所以我想把解决方案放在一个地方:这里.
我找到了它的解决方案,并将很快回答我自己的问题,以便人们可以找到他们遇到相同问题的解决方案.
Nav*_*Nav 23
当Visual Studio(2010)无法找到程序创建OCX所需的依赖dll文件时,会发生此错误.OCX是在项目的Debug目录中创建的(对于Debug版本),并且将"工作目录"(在项目设置中)指定为依赖DLL所在的文件夹,将无法帮助Visual Studio查找DLL.
现在问题是(这就是解决问题的难题),有时,如果没有Visual Studio能够创建OCX,您将无法在OCX上运行Dependency Walker.所以你永远不会发现丢失的DLL是问题所在.
如果您知道需要将哪个DLL放在Debug文件夹中,只需将它们放在那里,错误就会消失.如果您不知道,并且未创建OCX,请转到项目设置>链接器>常规>注册输出,并将值设置为"否".这将为您创建OCX,但不会完成注册过程,即需要依赖DLL的过程.
双击OCX后,Dependency Walker会显示缺少的带有黄色圆圈图标的DLL,只需将这些DLL放在与OCX相同的文件夹中,您的程序就能正常工作.就这么简单.
问题可能是您的项目尝试注册COM对象,但没有足够的权限来执行此操作.在Windows 7和8上,regsvr32需要管理权限.
你能做的是以下几点.在桌面上创建一个快捷方式到C:\ Windows\SysWOW64\cmd.exe(32位控制台).右键单击,属性 - >高级 - >选中以管理员身份运行.启动快捷方式,确保弹出"用户访问控制",然后单击"是".从这个特殊的控制台窗口开始构建.
| 归档时间: |
|
| 查看次数: |
30752 次 |
| 最近记录: |