how do I know which toolboxes are installed?

At the moment we are using a sort of temporary file "alderadyInstalledToolboxes.txt" to deploy toolboxes on demand, but we wondering if there is an easy way to see which toolboxes are already installed into a windows workstation. Registry? File system? how does the installer know which are already there?
Edit: We would like to get this information outside Matlab, from an external query to some "hidden" xml, file, registry or whatever.
Thanks,
alessio

 Respuesta aceptada

Stephen23
Stephen23 el 17 de Nov. de 2021
Editada: Stephen23 el 17 de Nov. de 2021

0 votos

"...an easy way to see which toolboxes are already installed into a windows workstation"
" We would like to get this information outside Matlab, from an external query to some "hidden" xml, file, registry or whatever"
I can find two options:
  1. From within MATLAB the command that shows installed** toolboxes is VER: taking a look at its code shows that it works by simply getting a list of the folders on the MATLABPATH (i.e. basically in the "toolbox" subfolder under where MATLAB is installed) and then massaging that list slightly. What it does is not very complex and could be replicated using an external script.
  2. In the PREFDIR there is a toolbox cache XML file which seems to list all of the installed toolboxes and files. It uses some proprietary XML format which you would have to figure out... and making any changes to this file leads to part/all of MATLAB being unusable (see REHASH).
I would stick to simply parsing the toolbox directories, just like VER does.
** installed does not mean that you have a valid license!

1 comentario

Alessio
Alessio el 17 de Nov. de 2021
OK, thanks for the inspiration! While I had a look inside the mess of "toolbox" folder and gave it up I have not thought looking inside the "ver.m" function to see what it is doing (and it is parsing each Contents.m found there)
I will try to replicate this into powershell to fit our needs.
Thanks
alessio

Iniciar sesión para comentar.

Más respuestas (1)

KSSV
KSSV el 17 de Nov. de 2021

0 votos

4 comentarios

Alessio
Alessio el 17 de Nov. de 2021
Thanks for your prompt reply! Unfortunately those do not solve our problem, which is to retrieve the installed toolbox list from an external query. I have updated my question because I see that this point was not clear.
Rik
Rik el 17 de Nov. de 2021
Most Matlab installations will allow you to run code. You could use any of the suggested links to run Matlab code that will determine what you need.
There is no officially supported external method to detect this, although you are correct there must be a way (otherwise the installer wouldn't know either).
toolboxName = 'Signal_Toolbox' ;
license('test',toolboxName)
Alos try
ver
Rik
Rik el 17 de Nov. de 2021
I seem to recall Walter has posted a full list of the toolboxes with old names and variants etc. I'm sure you would be able to find that list relatively easily.

Iniciar sesión para comentar.

Categorías

Más información sobre Introduction to Installation and Licensing en Centro de ayuda y File Exchange.

Productos

Versión

R2019b

Preguntada:

el 17 de Nov. de 2021

Comentada:

el 17 de Nov. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by