MATLAB / Simulink第三方目标编译错误HRESULT = 80040154

时间:2017-09-20 09:59:42

标签: c# c++ matlab dll simulink

早上好,

我遇到了尝试为第三方目标编译Simulink模型的问题,在本例中为vTAG。每当我尝试构建我的应用程序时,a ### Making extended map file extended_vc.map CoCreateInstance failed - HRESULT = 80040154 make: *** [extended_vc.map] Error -1 The make command returned an error of 2. An error occurred during the call to make. 显示错误消息。我正在使用MATLAB 2016b 64位运行Visual Studio 2013编译器。

现在,我不是一个Windows强大的用户,但到目前为止,我的研究表明,与Windows 64d编译器中的.dll注册表问题相关的此错误消息未成功尝试访问32 -bit .dll。因此,我尝试使用32位版本的MATLAB(2015b使用Visual Studio 2010编译器)编译我的应用程序,但我收到了完全相同的错误消息。鉴于HRESULT = 80040154错误代码的性质,这让我觉得很奇怪。

我正在尝试编译的Simulink模型已被验证为正常并已在其他计算机上编译,因此我可以将其作为问题的原因进行折扣。此外,我构建的其他模型在我的机器上成功导出到vTAG之前现在不会导出并返回相同的HRESULT = 80040154错误消息。我联系了MATLAB支持,他们说他们无法帮助,因为它是关于第三方.dll。他们让我运行一个示例编译到一个通用目标(运行正常),但由于模型的性质和它使用的其他第三方组件,这是一个不合适的目标。我试图避免联系vTAG支持。

在我看来,修复此问题的简单方法是运行Regsvr32并正确重新注册违规.dll。但是我不知道如何找到正确的.dll来注册它。我尝试在我提到的Visual Studio版本上使用内置修复功能,虽然这还没有解决问题。

因此,我的问题是如何定位此违规.dll以部署Regsvr32命令进行注册?我很乐意跳到应用这里列出的有关错误消息的修复程序,因为我已经尝试使用32位版本的MATLAB作为解决方法,但这没有用。有任何其他MATLAB / Simulink用户之前遇到此问题,并知道任何其他解决方法,以使用此错误消息导出应用程序?

提前感谢任何人可以解决这个问题!

1 个答案:

答案 0 :(得分:0)

我设法让问题得到解决。

对于遇到MATLAB问题并使用第三方编译器为第三方目标构建的任何其他人,导致问题的.dll将位于负责编译到第3方的工具集的安装目录中党的目标。使用Regsvr32注册.dll可以实现预期的技巧。