Automatically Run Script at End of Toolbox Installation

5 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

Jan
Jan il 3 Ott 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 Commenti
Paul Wintz
Paul Wintz il 5 Ott 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 il 6 Ott 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?

Accedi per commentare.

Più risposte (1)

Lars Lindner
Lars Lindner il 5 Feb 2025
Hello everybody, we have the same issue.
We build a custom library, which we want to distribute as a toolbox (.mltbx file). I want to simple run a custom Matlab script (.m file), when installing this toolbox with right-click -> Install.
What is the correct approach to this?
Thank you everybody and with best wishes,
Lars

Categorie

Scopri di più su Introduction to Installation and Licensing in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by