How do I suppress the splash screen for compiled applications in 2014b?

조회 수: 57 (최근 30일)
Tawnly . 2014년 10월 15일
댓글: Alain . 2022년 2월 18일
I generally compile MATLAB applications to run calculations in the background. I was previously doing this without an issue in 2013a. In 2014b, the splash screen comes as a default behavior when compiling an application. How do I turn this off? It is quite disruptive when trying to run things in the background.

답변 (4개)

Siddharth Sundar
Siddharth Sundar 2014년 10월 16일
This is not possible directly. As a workaround, do NOT distribute the splash screen image file from the for_redistribution_files_only folder together with your application. You could just delete the "splash.png" file from the for_redistribution_files_only folder.
  댓글 수: 4
Tawnly 2014년 10월 16일
I could try to not provide the splash.png file, but I am concerned that it will cause the program to crash when it can't find it. It certainly is not an elegant solution to the issue. I had hoped that adding the -R -nosplash option would work, but apparently the graphic interface to the compiler ignores that particular flag.

댓글을 달려면 로그인하십시오.

Adam 2014년 10월 16일
If you are using Matlab Compiler (the App) there is a section at the bottom entitled 'Files installed for your end user'.
One of these is 'splash.png'. You can right-click and delete this which I assume would result in no splash screen when the user opens the tool. I don't really want to test it out on my compiled projects as I want the splash screen and don't know how to get it back if I remove it, but I asume it can't show a splash screen if there is no png for it.
  댓글 수: 2
Tawnly 2014년 10월 16일
I have tried to remove the splash.png file from the list of files. The program adds it back in. Repeatedly. I gave up after multiple attempts to do it that way.
Adding my own image is not helpful as I am trying to run the programs as background processes. Having random graphics popping up would be disruptive.

댓글을 달려면 로그인하십시오.

Robert Cumming
Robert Cumming 2015년 8월 3일
I had a similar issue (not wanting the splashscreen to be displayed every time you run an exe).
One way to resolve this is to delete the splash.png from the installation folder - rather than do this manually I do this in my primary m-file, it does mean that the first time the exe is run the splashscreen is displayed, but subsequent times it is not, so for my purpose its an acceptable work around:
if isdeployed() % only run if in deployed mode
% Get the installation path
[status, result] = system('path');
installpath = char(regexpi(result, 'Path=(.*?);', 'tokens', 'once'));
% build the full filename of the splash image
splashpng = fullfile ( installpath, 'splash.png' );
if exist ( splashpng, 'file' ) == 2
delete ( splashpng );
  댓글 수: 1
Alain 2022년 2월 18일
I tried it but says "permission denied" because the file is in program files after installation

댓글을 달려면 로그인하십시오.

Charles Askew
Charles Askew 2017년 2월 9일
I had a slightly different problem in that I was writing an application which only uses the system tray FEX systray and in this situation the slash screen persists until the user kills it. I had to open a figure (offscreen) and then delete it during program startup. I tried starting the figure with Visible='off' but this didn't have the desired effect. I still get the splash screen while the program is starting up, but it disappears as soon as it has got going.


Help CenterFile Exchange에서 C Shared Library Integration에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by