MATLAB生成COM调用异常—没有找到mclmcrrt73.dll
来源:互联网 发布:北京博彦网鼎java面试 编辑:程序博客网 时间:2024/06/07 19:11
背景:
在程序中需要使用的一些复杂的算法,因此借助matlab强大的计算功能编写的响应的函数(.m文件),然后将函数打包成COM组件(包含MCR)。将matlab打包后的COM组件安装到系统中,然后安装自己的应用程序,之后一切运行正常,但两天后再使用就提示如下错误:
“没有找到mclmcrrt73.dll,因此这样应用程序未能启动。重新安装应用程序可能会修复此问题。”
解决方案:
1、重新安装MCR;
2、手动设置系统的环境变量。
参考:
1、http://www.ilovematlab.cn/thread-71366-1-1.html
2、http://www.mathworks.com/support/solutions/en/data/1-1IW46N/
***************************************************
参考2的原文如下:
Subject:
Why do I receive an error regarding missing mclmcrrt7x.dll when I run my stand-alone application compiled with MATLAB Compiler?
Problem Description:
When I run my stand-alone application that was compiled with MATLAB Compiler on my deployment machine, I receive an error message regarding a missing mclmcrrt7x.dll file (where x is the minor version of the MCR expected to be installed on the target system).
Solution:
mclmcrrt7x.dll is a run-time library needed to run MATLAB Compiler generated applications on deployment machines that do not have MATLAB and MATLAB Compiler installed. This library is installed during the course of the MATLAB Compiler Runtime (MCR) installation.
This error typically results from one of two situations:
1. The correct version of MATLAB Compiler Runtime (MCR) is not installed.
Applications generated with MATLAB Compiler depend on the version of the run-time library specific to the version of the MATLAB Compiler that generated the application.
You can find the install program for the MCR in the following sub directory of the MATLAB installation which created the program.
or
$MATLABROOT/toolbox/compiler/deploy/win32/mcrInstaller.exe
(where $MATLABROOT is the MATLAB root directory on your machine, as returned by typing:
$MATLABROOT/toolbox/compiler/deploy/win64/mcrInstaller.exe
matlabroot
at the MATLAB command prompt.)Instructions for installing the MCR are located in the documentation:
Deploying to End Users :: Deployment Process (MATLAB Compiler)
http://www.mathworks.com/access/helpdesk/help/toolbox/compiler/br2jauc-13.html
Running MCRInstaller.exe on the deployment machine will install the MCR, including the mclmcrrt7x.dll:
($MCRROOT is the MATLAB Compiler Runtime root directory that was chosen during the MATLAB Component Runtime installation process. This typically defaults to something like C:/Program Files/MATLAB/MATLAB Compiler Runtime. $VER is the MCR version number without the periods.)
$MCRROOT/v$VER/runtime/win32/mclmcrrt$VER.dll
The “missing mclmcrrt7x.dll” error message will result if you have not installed the version of the MCR that corresponds to the version of MATLAB Compiler the application was compiled with. For example, if you have installed the MCR for MATLAB Compiler 4.9 (R2008b), version 7.9 of the mclmccrt DLL will be installed in, for example:
C:/Program Files/MATLAB/MATLAB Compiler Runtime/v79/runtime/win32/mclmcrrt79.dll.
For releases prior to R2008a the runtime libraries will be located in a slightly different directory tree:
C:/Program Files/MATLAB/MATLAB Component Runtime/
Now, if an application generated using MATLAB Compiler 4.6 (R2007a) is executed on this computer without installing that version of the MCR, the "missing mclmcrrt76.dll" error would result.
2. A second option is that the system's PATH environment variable was not set correctly.
During the course of the MATLAB Compiler Runtime installation, the following directory should have been added to your system path:
To work around this issue, manually update the PATH environment variable on your deployment machine to include the following directory:
$MCRROOT/v$VER/runtime/win32
For instructions on modifying your system PATH environment variable, refer to the solution referenced below.
$MCRROOT/v$VER/runtime/win32
Also note that since these DLLs have different names for each version of the MCR, multiple versions of the MCR can be installed on the same machine.
- MATLAB生成COM调用异常—没有找到mclmcrrt73.dll
- c/c++调用matlab生成dll,exe,com组件
- VS2010中调用matlab文件,没有找到mclmcr.dll,应用程序未能启动
- vc调用matlab生成的dll实例
- VC调用Matlab生成的DLL
- VS2013调用matlab生成的dll
- matlab调用VS生成的DLL
- matlab调用c++生成的DLL
- matlab调用VS生成的DLL
- VC调用Matlab生成的dll
- 没有找到MSVCR80D.dll
- 没有找到msvcr80d.dll
- 没有找到MFC42D.DLL
- 没有找到msvcp80.dll
- 没有找到cutil32D.dll
- 没有找到LIBEAY32.DLL
- 没有找到cygwin1.dll
- 没有找到MFC42D.DLL
- Java培训笔记三
- 利用DBCONSOLE定位No ManagedConnections available问题
- 求教各位大侠,在数据库连接的时候,出现error: 26 - 定位指定的服务器/实例时出错,紧急救助!
- FLEX实例:几款滤镜效果实例.
- C++ styles
- MATLAB生成COM调用异常—没有找到mclmcrrt73.dll
- 大家好
- 正则表达式使模式匹配和数据提取变得更容易(David Banister)
- Java培训笔记四(开始正式培训)
- "/n"和"/012"还有"/015/012" 是什么
- Struts2工作原理(转)
- Java培训笔记五
- power law,small world,bow-tie理论
- Java培训笔记六