Automatically Run Script at End of Toolbox Installation

12 views (last 30 days)
I'm writing a toolbox and packaging it as described in Create and Share Toolboxes. At the end of the installation process, I want to automatically run a script. Is this possible? We are trying to support MATLAB R2016a onward.

Accepted Answer

Jan
Jan on 3 Oct 2021
I include a function, which runs once the first time the toolbox is called instead. This is "after the installation", but not directly after the installation, but before the first run. I use ispref and setpref to set a flag, which is persistent between Matlab sessions. But it matters as which user you run the toolbox.
  2 Comments
Paul Wintz
Paul Wintz on 5 Oct 2021
How do you handle this when there are many functions and classes in the toolbox? Do you just run the setup code at the beginning of every function?
Jan
Jan on 6 Oct 2021
If there are no "main functions", e.g. a GUI, this is not trivial. Adding a:
checkInstalled;
and
function checkInstalled
persistent runOnce
if isempty(runOnce)
runOnce = true;
callYourSetupRoutine;
end
end
takes about 0.5 seconds for 1e6 calls. But is this installation really required in all subfunctions?

Sign in to comment.

More Answers (0)

Categories

Find more on Introduction to Installation and Licensing in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!