"Failed to decrypt file" running standalone application
1 次查看(过去 30 天)
显示 更早的评论
Hello everybody, I use Matlab R2008b and the "deploytool" to create the .exe application. Sometimes, when I execute this application in other PC with the properly MCR installed I receive the error message "Failed to decrypt file".
I know this error is related to key in CTF file to access in deployed source code when the application is running. Does this deploy not happend if the folder structure exists yet? If I update the application I should delete the deployed folder to avoid this error?
Other question. There are others .exe application (Matlab) which deploy in MCR_CACHE_ROOT environment variable. Is it possible defining a "MCR_CACHE_ROOT local environment variable" for each application? I.e application1 --> MCR_CACHE_ROOT1= c:\temp1 application2 --> MCR_CACHE_ROOT2= c:\temp2 application3 --> MCR_CACHE_ROOT3= c:\temp3
Thank you very much in advance, Best Regards, Eusebio
0 个评论
回答(2 个)
Friedrich
2011-8-3
Hi,
I think your question is related to:
So first make sure you have write/read acces to the MCR_CACHE_ROOT. You don’t have to delete the folder when updating your application. The MCR generates some kind of a checksum on the already extracted files. If this checksum is different from the files related to your exe they will be overwritten so they match your application.
You can’t specifiy a MCR_CACHE_ROOT for an application it self and you actually don’t have to, because for every application a subfolder in MCR_CACHE_ROOT is created. Different application does not interfere with each other.
When you really like to have a different MCR_CACHE_ROOT for your application I would suggest writing a batch file in which you set up the MCR_CACHE_ROOT and than start your application.
3 个评论
Friedrich
2011-8-3
This is indeed strange. Do you have to delete it everytime you start the application? Do your applications have different names? Are you calling some addpath commands?
Image Analyst
2011-8-3
Actually you CAN specify a different MCR_CACHE_ROOT folder for every app, though you don't need to since it will, like Friederich said, automatically create a new one in that strange, secret hidden system folder that it uses if you let it do it automatically. If you want a separate one for each app, you can set MCR_CACHE_ROOT equal to . (dot) on your compiling computer and then it will unpack everything to your app's own individual folder on the target computer instead of that system folder in your settings folder. Another way is to just set it to some known, fixed folder that you change for every app you compile, though you'd need this folder to be on both the compiling computer and the target computer I believe. See the FAQ for more info or search the newsgroup where I've talked about this many times.
Image Analyst
2011-8-3
See the FAQ for several things to check: http://matlab.wikia.com/wiki/FAQ#My_standalone_executable_won.27t_run_on_the_target_computer._What_can_I_try.3F
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!