MATLAB: Doesnt deployed .exe application recognize NI as a vendor when using DAQ toolbox

daq toolboxdata acquisitionMATLABmcrnational instrumentsnisession based interface

I am trying to deploy a standalone application which uses the DAQ toolbox and session-based interface. The compiled program thows an exception on the line:
handles.s = daq.createSession('ni');
with the error message:
The vendor 'ni' is not known. Use 'daq.getVendors()' for a list of vendors.
The application runs fine in Matlab, but will not with MCR.
I have tried running as administrator, as I have read to be one solution, but it did not work for me. I also tried registering the mwnidaq.dll with regsvr32 in the command prompt, as I found that to be another possible solution. However, trying this also yielded an error (The module 'mwnidaq.dll' failed to load./~/The specified module could not be found). The dll file was in three different locations buried in the AppData folder (none of which were in a folder ending in _mcr). I tried all three without success.
I should also mention that the application does not run on the machine on which it was developed nor the deployed machine.
I am using MATLAB R2012b and the program was compiled using the built-in app from the APPS ribbon menu.

Best Answer

  • Answered in a previous thread using a patch for version 2012b
    note: I had to change the extension of the attachment to .zip and extract the mcc.enc file manually due to administrative/privilege restrictions.