Why does MATLAB Runtime cache (CTF extraction path) get corrupted after running the executable for several number of times?

9 次查看(过去 30 天)
We have a .NET application where functions of a MATLAB Compiler SDK generated DLL are called.
It happens that the MATLAB Runtime cache gets corrupt, such that executing the DLL function always results in error.
This happens only after running the application for several number of times.  When I manually delete the entire MATLAB Runtime cache directory helps resolving the issue. I am wondering what could be the reason for corrupted CTF extraction.

采纳的回答

MathWorks Support Team
编辑:MathWorks Support Team 2024-8-1
The problem may occur to standalone applications created with MATLAB Compiler and libraries created with MATLAB Compiler SDK. The possible cause is that the MATLAB Runtime cache is by default somewhere below your TEMP directory. Certain system/network tools/services might try to "clean" TEMP directory. Possible solutions for this issue would be:
1. Use MCR_CACHE_ROOT environment variable to redirect the cache to a location not below TEMP
2. Do not embed the CTF. You can choose not to embed CTF by using 
flag or set EmbedArchive flag to off when using compiler.build CLI. The not-embedded CTF will then not be extracted to the MATLAB Runtime cache but rather to a directory below the directory containing the CTF.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

标签

产品


版本

R2010a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by