我正在使用DLL,它是一个称为Unity3d的游戏引擎的插件。我在Windows 7 64位旗舰版上的Visual C ++ Express 2010中创建了DLL。 DLL在最初创建它的计算机上可以正常运行。
问题是该DLL在另一台机器上的Unity3d编辑器中无法正常工作,并给出一个错误,该错误基本上表明该DLL缺少其某些依赖性。目标计算机正在运行Windows 7 Home 64位(如果相关)
Dependency Walker错误日志的结果:
错误:有关的并行配置信息
“ c:\ users \ dewayne \ desktop \ shared \ vrpnplugin \ unityplugin \ build \ release \ OPTITRACKPLUGIN.DLL”
包含错误。该应用程序无法启动,因为
并行配置不正确。请参阅申请
事件日志或使用命令行sxstrace.exe工具获取更多详细信息
(14001)。
错误:由于隐式相关模块中缺少导出功能,因此至少一个模块的导入无法解析。
错误:找到了具有不同CPU类型的模块。
警告:至少找不到一个延迟负载依赖性模块。
警告:由于依赖于延迟负载的模块缺少导出功能,因此至少一个模块的导入无法解析。
可以在here中找到Visual C ++ Express 2010项目和解决方案文件。该zip文件为79MB,还包含其依赖项。
有问题的DLL是OptiTrackPlugin.dll
最佳答案
检查dll中的依赖项。我使用depends.exe依赖项遍历器,它曾经与Visual C ++捆绑在一起,但是MS不再提供它。您可以单独下载:http://www.dependencywalker.com/
关于c++ - DLLNotFoundException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4466170/