2017-09-20 64 views
0

早上好,MATLAB/Simulink的第三方目标编译错误HRESULT = 80040154

我运行到尝试编译Simulink模型的第三方目标,在这种情况下VTAG问题。每当我尝试构建我的应用程序时,都会显示一条 ### 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中的.dll注册表问题相关,涉及64位编译器未能成功访问32位.dll。因此,我尝试使用32位版本的MATLAB(使用Visual Studio 2010编译器的2015b)编译我的应用程序,但是我收到了完全相同的错误消息。考虑到HRESULT = 80040154错误代码的性质,这在我看来很奇怪。

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

在我看来,解决这个问题的简单方法是运行Regsvr32并正确地重新注册有问题的.dll文件。但是我不知道如何找到正确的.dll来注册它。我试过在Visual Studio的版本中使用内置的修复功能,尽管这还没有解决问题。

因此,我的问题是我将如何去找到这个有问题的.dll为了部署Regsvr32命令来注册它?我不愿意跳过应用这里列出的有关错误信息的修复程序,因为我曾尝试使用MATLAB的32位版本作为解决方法,但这种方法无效。有任何其他的MATLAB/Simulink用户之前遇到过这个问题,并知道任何其他解决方法,以获取应用程序导出此错误消息?

预先感谢任何人都可以摆脱这个光!

回答

0

我设法解决了这个问题。

对于任何遇到MATLAB问题并使用第三方编译器为第三方目标构建的人,导致问题的.dll将位于工具集的安装目录中,负责编译为第三方目标。按照预期注册与Regsvr32的.dll。