Difference between revisions of "Updating the Matlab Interface after Matlab Upgrade"

From BESA® Wiki
Jump to: navigation, search
Line 9: Line 9:
 
# Make sure that the correct <span style="color:#ff9c00;">Matlab.dll</span> is installed by starting the tool "<span style="color:#ff9c00;">ConfigureBesaMatlabInterface.exe</span>" and selecting the corresponding Matlab version and architecture.
 
# Make sure that the correct <span style="color:#ff9c00;">Matlab.dll</span> is installed by starting the tool "<span style="color:#ff9c00;">ConfigureBesaMatlabInterface.exe</span>" and selecting the corresponding Matlab version and architecture.
 
# In the DOS command prompt execute the following command with administrator rights <source lang="dos">matlab -regserver</source> (registers MATLAB as a Component Object Model (COM) server).
 
# In the DOS command prompt execute the following command with administrator rights <source lang="dos">matlab -regserver</source> (registers MATLAB as a Component Object Model (COM) server).
# Sometimes if the Matlab license is connected to a specific user account and the user account does not have administrator rights it could be problematic to execute that command. In that case change the corresponding account to an administrator account and then perform the actions again. After that the account could be made to regular user account again. Alternatively, you can also run the attached [ftp://h1772544.stratoserver.net/public/Matlab/BESA_Utilities/UserRegMATLAB.p UserRegMATLAB.p] function to manually register your MATLAB version as a COM Automation Server. To switch the version of MATLAB that is registered, simply run the "UserRegMATLAB" command on the new version so that it becomes the new COM Automation Server.
+
# Sometimes if the Matlab license is connected to a specific user account and the user account does not have administrator rights it could be problematic to execute that command. In that case change the corresponding account to an administrator account and then perform the actions again. After that the account could be made to regular user account again. Alternatively, you can also run the attached [ftp://h1772544.stratoserver.net/public/Matlab/BESA_Utilities/UserRegMATLAB.p UserRegMATLAB.p] function to manually register your MATLAB version as a COM Automation Server. To switch the version of MATLAB that is registered, simply run the ''UserRegMATLAB'' command on the new version so that it becomes the new COM Automation Server. Finally for MATLAB 2020a and above you can just type ''comserver('register')'' in the desired MATLAB command line.
 
[[Category:Setup]]
 
[[Category:Setup]]

Revision as of 15:58, 1 October 2020

Module information
Modules BESA Research Basic or higher
Version 5.2 or higher

Sometimes after installation of new/additional Matlab version on one computer the BESA to Matlab interface stops working. The reason is the registry change/corruption caused by the newly installed version. In order to correct this one has to perform the following steps:

  1. Make sure that in the "Path" environment variable only the path to one Matlab version exists.
  2. Make sure that the correct Matlab.dll is installed by starting the tool "ConfigureBesaMatlabInterface.exe" and selecting the corresponding Matlab version and architecture.
  3. In the DOS command prompt execute the following command with administrator rights
    matlab -regserver
    (registers MATLAB as a Component Object Model (COM) server).
  4. Sometimes if the Matlab license is connected to a specific user account and the user account does not have administrator rights it could be problematic to execute that command. In that case change the corresponding account to an administrator account and then perform the actions again. After that the account could be made to regular user account again. Alternatively, you can also run the attached UserRegMATLAB.p function to manually register your MATLAB version as a COM Automation Server. To switch the version of MATLAB that is registered, simply run the UserRegMATLAB command on the new version so that it becomes the new COM Automation Server. Finally for MATLAB 2020a and above you can just type comserver('register') in the desired MATLAB command line.