I am trying to run some of the NIDMM library functions without having to install the NIDMM library. What I am wondering is if I can do this by simply installing the necessary NI DLLs. I believe I have the DLL files I need. They are niModInst.dll, nidmxfu.dll, nimxpu.dll, nimhwcfu.dll, nimstsu.dll, and nimru2u.dll.
Whey I try to execute my program, I get what appears to be a registration error when I call my first NI DMM function (niModInst_OpenInstalledDevicesSession()).
The error message I get is "No driver registration files were found" . The error code returned is -250275 (0xfffc2e5d).
Is there a way of getting around this?
One point I had forgotten to mention - for our application, we have already installed licensed versions of NI VISA, VXI, NI-488.2 and Measurement & Automation. The NI DMM library, as I understand, is free to load on top of these other applications. We are not trying to get around NI licensing. We are simply trying to minimize what we have to install. Apologies if this was misunderstood.
The licensing is definitely free for all of the drivers you mentioned.
The issue is that NI-DMM uses quite a few components that aren't installed by simply dragging the DLLs into a particular directory (namely DAQmx). The NI-DMM driver libraries are quite small, but they depend on many components installed by DAQmx. If this is a deployed machine, you could install the minimal DAQmx runtime driver and then drag in the NI-DMM components, but this isn't technically supported.
Are you space constrained on a deployed machine?
Sorry. You do need to install NI-DMM. Copying DLLs is not enough.
The way the NI-DMM driver works, not only do you need DAQmx (which is composed of several components) and some NI-DMM specific DLLs, you also need several other files (INF, registration files for ModInst, etc) plus some registration steps that are performed by the installer.
Our DMMs are not simple instruments 🙂
Thanks John and Marcos.
It appears we will need to do an install of the NI DMM.
The main reason for trying to minimize the installation to just a handful of DLLs was to make the installation simpler and quicker and as automatic as possible with very little interaction from the user.
Do you know if there is a way of doing this for the NI DMM library?
This won't help with making the installtion quicker, but our installers can be automated. If you run "setup.exe /?" you'll get a dialog that lists the command line options. You can also go to ni.com/info and use info code 'InstallerAutomation' to get more information.