MATLAB: Can I run the .NET executable on the deployment machine without using the package utility in MATLAB Builder for .NET 2.0 (R2006a)

builderMATLAB Builder NEnet

I would like to have the ability to deploy my .NET application without using the package utility in the dotnettool or deploytool.

Best Answer

To run your .NET application on the deployment machine without MATLAB installed you will need to copy the following files onto the deployment machine
a. Application.exe (compiled executable generated from Microsoft Visual Studio .NET)
b. Component_name.dll (generated by the MATLAB .NET builder)
c. Component_name.ctf (generated by the MATLAB .NET builder)
d. MWArray.dll (MathWorks Assembly located in
$MATLABROOT\bin\win32
In the recent releases of MATLAB it is located in:
$MATLABROOT\toolbox\dotnetbuilder\bin\win32\v2.0
Also, please note that MWArray.dll is available in MATLAB Compiler Runtime. You can find it in the same path as above, but you have to replace MATLABROOT by the MCR installation directory.
e. MCRInstaller.exe (MATLAB Component Runtime located in $MATLABROOT\toolbox\compiler\deploy)
$MATLABROOT can be found by issuing the following command:
matlabroot
in the MATLAB Command Prompt.
Perform the following steps:
1. Run the MCRInstaller.exe on the deployment machine in order to install the MCR.
2. Install the supported compiler by referencing the page below:
3. You need to install .net framework on the target machine, this does not come with 'gacutil.exe'; but development environment comes with 'gacutil.exe'. After that you follow the steps below in the system command prompt:
gacutil.exe /i MWArray.dll
gacutil.exe /i component_name.dll
Please note that recent versions of MATLAB are shipped along with 'gacInstaller.exe'. If your MATLAB version does not have gacInstaller, then you should have Microsoft Visual Studio development environment along with .net framework.
Note that Microsoft says "Gacutil.exe is only for development purposes and should not be used to install production assemblies into the global assembly cache." For more information please see the following website: