2016-02-08 26 views
5

Ho scritto un programma HelloApp con Matlab e l'ho confezionato come .NET Assembly utilizzando deploytool come descritto here. Come risultato ho la libreria helloapp.dll, che ho incluso nel mio Visual Studio 2015 come riferimento, quindi posso eseguire i metodi Matlab direttamente da C#. Per eseguire il codice senza Matlab installato, l'utente finale deve aver installato almeno Matlab Runtime (MCR).Installare Matlab MCR come parte della procedura guidata dell'installatore C#

Ora voglio creare un programma di installazione per il mio programma C#. Mi sono imbattuto in Visual Studio 2015 Installer Projects che fornisce alcuni strumenti per creare il programma di installazione guidata. Il problema è che non so come includere il download e l'installazione di MCR package come una fase del processo di installazione per garantire che l'utente abbia tutti i prerequisiti necessari per l'esecuzione del programma.

+0

È necessario installare MCR sempre o dovrebbe verificare se l'installazione Matlab corrispondente esiste e saltare l'installazione se la versione corretta è già installata? Per quanto ne so, hai bisogno di MCR o MATLAB nella versione giusta. – Daniel

risposta

2

Beh questo non è davvero una risposta, ma il commento area in questione era troppo breve ...

io non so molto di VS2015 Installer come io personalmente uso innosetup. In ogni caso per verificare se il runtime è installato sul computer di destinazione si può guardare se seguente chiave nel Registro di sistema:

HKEY_LOCAL_MACHINE\SOFTWARE\MathWorks\MATLAB Runtime\9.0 

Vedere i miei post here e here per ulteriori dettagli.

NB1: Si noti che il programma di installazione per il runtime Matlab è molto grande (circa 1 GB). Non lo impacchetterei con l'applicazione da distribuire, ma semplicemente avvisare l'utente di installarlo separatamente.

NB2: Penso Mathworks è il packaging C:\Program Files\MATLAB\R2015b\toolbox\compiler\deploy\win64\InstallAgent.zip (~ 66MB) piuttosto che MCRInstall.exe (~ 1 GB) durante la distribuzione di installer standalone con deploytool per scaricare il runtime durante l'installazione, ma non so come funziona.

+0

Ciao, grazie! In realtà, ho già trovato i tuoi post prima di rispondere e sono riuscito a comprimerlo con InnoSetup :) Non sono sicuro di InstallAgent.zip, l'ho impacchettato con l'installer online MCR, che ho ottenuto durante l'implementazione. è di circa 2 MB di dimensioni e l'ho incluso come passo nell'installazione guidata. Sta scaricando e installando circa 500 MB e impiega per sempre anche con la rete da 100 mbit/s –

+0

Sì, l'ammontare dei file da installare sui computer di destinazione affinché il runtime funzioni è davvero enorme! Quasi la dimensione dell'ambiente stesso di Matlab + necessità di installare side-by-side tutte le versioni rutime se la compilazione con diverse versioni di MCR;) – CitizenInsane