Measurement Studio .NET XCOPY Deployment Files

Measurement Studio 2015 Support for Visual Studio 2013 Help

Edition Date: May 2015

Part Number: 375857A-01

»View Product Info
Download Help (Windows Only)
Using XCOPY deployment for Measurement Studio applications is a multi-step process. Review each step carefully to ensure successful deployment:

Step 1: Determine the Files You Need to Copy

Use the following table to determine the necessary files to copy when deploying your Measurement Studio Windows Forms or Web Forms .NET application.

If you copy the Intel Math Kernel Library (MKL) libraries or mesa.dll with your deployment application, you need to also copy their respective license agreements and/or notices. Refer to <National Instruments>\_Legal Information.txt for information on where to find the license agreements and/or notices to include for each third-party component.

Measurement Studio Assembly File Dependencies
NationalInstruments.Analysis.Enterprise NationalInstruments.Analysis.Enterprise.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
nianlys.dll (unmanaged)
All Math Kernel Library (MKL) DLLs (unmanaged)
NationalInstruments.Analysis.Professional NationalInstruments.Analysis.Professional.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
nianlys.dll (unmanaged)
All Math Kernel Library (MKL) DLLs (unmanaged)
NationalInstruments.Analysis.Standard NationalInstruments.Analysis.Standard.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
nianlys.dll (unmanaged)
All Math Kernel Library (MKL) DLLs (unmanaged)
NationalInstruments.Common NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
msvcr100.dll (unmanaged)
NationalInstruments.Controls NationalInstruments.Controls.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.Controls.Booleans NationalInstruments.Controls.Booleans.dll
NationalInstruments.Controls.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.Controls.Graphs NationalInstruments.Controls.Graphs.dll
NationalInstruments.Controls.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.Controls.Numerics NationalInstruments.Controls.Numerics.dll
NationalInstruments.Controls.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.DAQmx NationalInstruments.DAQmx.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
msvcr100.dll (unmanaged)
NationalInstruments.DAQmx.ComponentModel NationalInstruments.Common.dll
NationalInstruments.DAQmx.dll
NationalInstruments.DAQmx.ComponentModel.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.ModularInstruments.NIDCPower.Fx45 NationalInstruments.ModularInstruments.NIDCPower.Fx45.dll
Ivi.Driver.dll
Ivi.DCPwr.dll
NationalInstruments.ModularInstruments.Common.dll
NationalInstruments.Common.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.ModularInstruments.NIRfsa.Fx45 NationalInstruments.ModularInstruments.NIRfsa.Fx45.dll
Ivi.Driver.dll
NationalInstruments.ModularInstruments.Common.dll
NationalInstruments.Common.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.ModularInstruments.NIRfsg.Fx45 NationalInstruments.ModularInstruments.NIRfsg.Fx45.dll
Ivi.Driver.dll
NationalInstruments.ModularInstruments.Common.dll
NationalInstruments.Common.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.ModularInstruments.NIScope.Fx45 NationalInstruments.ModularInstruments.NIScope.Fx45.dll
Ivi.Driver.dll
Ivi.Scope.dll
NationalInstruments.ModularInstruments.Common.dll
NationalInstruments.Common.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.ModularInstruments.NISwitch.Fx45 NationalInstruments.ModularInstruments.NISwitch.Fx45.dll
Ivi.Driver.dll
Ivi.Switch.dll
NationalInstruments.ModularInstruments.Common.dll
NationalInstruments.Common.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.Net Not applicable because DataSocket does not support XCOPY deployment. You can deploy applications that include DataSocket by building an installer. Refer to Deploying Measurement Studio Applications for more information.
NationalInstruments.NetworkVariable Not applicable because NetworkVariable does not support XCOPY deployment. Refer to Measurement Studio .NET Merge Modules and Deploying Measurement Studio Network Variable Applications for more information.
NationalInstruments.NI4882 NationalInstruments.NI4882.dll
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.Tdms cvitdms.dll (unmanaged)
tdms.dll (unmanaged)
NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.Tdms.dll
NationalInstruments.UI NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.UI.dll
NationalInstruments.UI.Styles3D.dll
mesa.dll (unmanaged)
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.UI.WebForms NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.UI.dll
NationalInstruments.UI.Styles3D.dll
NationalInstruments.UI.WebForms.dll
mesa.dll (unmanaged)
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.UI.WindowsForms NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.UI.dll
NationalInstruments.UI.Styles3D.dll
NationalInstruments.UI.WindowsForms.dll
mesa.dll (unmanaged)
msvcp100.dll (unmanaged)
msvcr100.dll (unmanaged)
msvcrt.dll (unmanaged)
NationalInstruments.VisaNS NationalInstruments.Common.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.VisaNS.dll

Step 2: Locate the Files You Need to Copy

Use the following table to locate the necessary files to copy when deploying your application.

File Dependency Location
NationalInstruments.Analysis.Enterprise.dll

The 32-bit version of the following assemblies is located in the Program Files\National Instruments\MeasurementStudioVS2013\DotNET\Assemblies\Current directory. The 64-bit version of the following assemblies is located in the Program Files\National Instruments\MeasurementStudioVS2013\DotNET\Assemblies (64-bit)\Current directory.

NationalInstruments.Analysis.Professional.dll
NationalInstruments.Analysis.Standard.dll
NationalInstruments.Common.dll
NationalInstruments.Controls.dll
NationalInstruments.Controls.Booleans.dll
NationalInstruments.Controls.Graphs.dll
NationalInstruments.Controls.Numerics.dll
NationalInstruments.DAQmx.dll
NationalInstruments.DAQmx.ComponentModel.dll
NationalInstruments.MStudioCLM.dll
NationalInstruments.NiLmClientDLL.dll
NationalInstruments.Tdms.dll
NationalInstruments.NI4882.dll
NationalInstruments.UI.dll
NationalInstruments.UI.Styles3D.dll
NationalInstruments.UI.WebForms.dll
NationalInstruments.UI.WindowsForms.dll
NationalInstruments.VisaNS.dll
NationalInstruments.ModularInstruments.NIDCPower.Fx45.dll  NationalInstruments.ModularInstruments.NIRfsa.Fx45.dll
NationalInstruments.ModularInstruments.NIRfsg.Fx45.dll
NationalInstruments.ModularInstruments.NIScope.Fx45.dll
NationalInstruments.ModularInstruments.NISwitch.Fx45.dll
NationalInstruments.ModularInstruments.Common.dll  NationalInstruments.ModularInstruments.ModularInstrumentsSystem.dll
NationalInstruments.ModularInstruments.TClock.dll
On 32-bit systems, these assemblies are located in the Program Files\National Instruments\MeasurementStudioVS2013\DotNET\Assemblies\Current directory.
On 64-bit systems, these assemblies are located in the Program Files (x86)\National Instruments\MeasurementStudioVS2013\DotNET\Assemblies\Current directory. While the location is different, these assemblies are built with the target platform set to Any CPU (AnyCPU for Visual Basic); therefore, there are no separate 32-bit and 64-bit file versions.
Ivi.Driver.dll
Ivi.DCPwr.dll
Ivi.Swtch.dll
Program Files\IVI Foundation\IVI\Microsoft.NET\Framework32\v2.0.50727
There are no separate 32-bit and 64-bit file versions.
tdms.dll Program Files\National Instruments\Shared\TDMS
cvitdms.dll Windows\System32
mesa.dll The mesa.dll is located in the Program Files\National Instruments\Shared\Mesa directory.

The mesa.dll is necessary only if 3D styles are used. If deploying a Web application, place mesa.dll in the SYSTEM32 directory.

You must install the Microsoft Visual C++ 2008 Redistributable Package on the target system when deploying projects that use 3D styles.
msvcp100.dll Program Files\Microsoft Visual Studio 11.0\VC\redist\x86\Microsoft.VC100.CRT

The msvcp100.dll is necessary only if you use 3D styles.
msvcr100.dll
msvcrt.dll SYSTEM32 directory; necessary only if you use 3D styles.
All Math Kernel Library (MKL) DLLs The Math Kernel Libraries (MKL) DLLs are located in the Program Files\National Instruments\Shared\MKL\ directory. Copy all MKL DLLs in the Program Files\National Instruments\Shared\MKL folder to your application's directory in a flat file structure.
nianlys.dll Program Files\National Instruments\Shared\Analysis

Step 3: Locate Device Drivers

The following assemblies require a device driver that is located on the National Instruments Device Drivers DVD included with Measurement Studio. Refer to National Instruments .NET Driver Support for more information on using .NET hardware driver APIs and for download locations for both the underlying hardware drivers and the .NET API for your NI hardware.

  • NationalInstruments.DAQmx
  • NationalInstruments.DAQmx.ComponentModel
  • NationalInstruments.ModularInstruments.Common
  • NationalInstruments.ModularInstruments.ModularInstrumentsSystem
  • NationalInstruments.ModularInstruments.NIDCPower.Fx45
  • NationalInstruments.ModularInstruments.NIRfsa.Fx45
  • NationalInstruments.ModularInstruments.NIRfsg.Fx45
  • NationalInstruments.ModularInstruments.NIScope.Fx45
  • NationalInstruments.ModularInstruments.NISwitch.Fx45
  • NationalInstruments.ModularInstruments.TClock
  • NationalInstruments.NI4882
  • NationalInstruments.VisaNS

Step 4: Review Special Considerations for NationalInstruments.Common.dll

NationalInstruments.Common.dll uses a publisher policy file to redirect applications to always use the newest version of NationalInstruments.Common.dll installed on the system. However, if you XCOPY an application without a configuration file and the assemblies included in the application were built with an older version of NationalInstruments.Common.dll, deployment does not work. To ensure the correct configuration file is deployed, you can create an installer that installs the NationalInstruments.Common.dll component.

With Web Forms, if you do not create an installer, you also can add the following example snippet to the web.config file; however, you need to update the versions listed in the example. Run a tool, such as Ildasm.exe, on a dependent assembly, such as NationalInstruments.UI or NationalInstruments.UI.WebForms, to determine the older version of NationalInstruments.Common that should be redirected.
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="NationalInstruments.Common">
                        publicKeyToken="18cbae0f9955702a"
                        culture="neutral"  />
      <bindingRedirect oldVersion="12.0.40.145">
                        newVersion="12.0.45.149"  />
      </dependentAssembly>
    </assemblyBinding
  </runtime>
</configuration>

With Windows Forms, if you do not create an installer, you also can add the following example snippet to the app.config file; however, you need to update the versions listed in the example. Run a tool, such as Ildasm.exe, on a dependent assembly, such as NationalInstruments.UI or NationalInstruments.UI.WindowsForms, to determine the older version of NationalInstruments.Common that should be redirected.
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="NationalInstruments.Common">
                        publicKeyToken="18cbae0f9955702a"
                        culture="neutral"  />
      <bindingRedirect oldVersion="12.0.40.145">
                        newVersion="15.0.45.149"  />
      </dependentAssembly>
    </assemblyBinding
  </runtime>
</configuration>

Note:
Measurement Studio support for Visual Studio 2013, Visual Studio 2012, and Visual Studio 2010 uses the same NationalInstruments.Common.dll assembly, which is built against the .NET Framework version 4.0.

Step 5: Understand the Difference Between 32-bit and 64-bit File Versions

  • When you deploy a Measurement Studio .NET application, you must copy the file dependencies for the assemblies (DLLs) used in the application. 64-bit versions of files are located in a slightly different location than 32-bit versions. For example, 64-bit versions of DLLs are located in Program Files on a 64-bit operating system. In contrast, 32-bit versions of DLLs are located in the Program Files folder when you are using a 32-bit operating system, but they are located in the Program Files (x86) folder when you are using a 64-bit operating system.
  • .NET applications created on a 32-bit operating system using Measurement Studio libraries that depend on unmanaged parts do not support XCOPY deployment of 64-bit .NET applications because the 64-bit versions of unmanaged DLLs are not installed to a 32-bit operating system. You must create 64-bit applications using a 64-bit operating system for 64-bit Measurement Studio XCOPY deployment to be supported.
  • For Any CPU (AnyCPU in Visual Basic) applications, you must ensure that you include 32-bit or 64-bit versions of files when deploying to a 32-bit operating system or a 64-bit operating system, respectively.
  • The NI-SCOPE .NET assemblies version 1.1.1 and earlier do not support XCOPY deployment for 64-bit applications. All other Modular Instrument assemblies support XCOPY for 64-bit applications.
  • For .NET Framework 4.5.1, NationalInstruments.Common.Native.dll, NationalInstruments.DAQmx.dll, and NationalInstruments.UI.Styles3D.dll assemblies are platform-specific, meaning that the assembly includes 32-bit and 64-bit versions of assemblies that target the x86 and x64 platforms, respectively; however, all other Measurement Studio .NET assemblies are platform-agnostic and target the Any CPU platform. If you are deploying a 32-bit or Any CPU application, the 32-bit or Any CPU version of the assembly is located in the Program Files\National Instruments\MeasurementStudioVS2013\DotNET\Assemblies\Current directory. If you are deploying a 64-bit application, the 64-bit version of the assembly is located in the Program Files\National Instruments\MeasurementStudioVS2013\DotNET\Assemblies (64-bit)\Current directory.

Step 6: Include Design Time Functionality of Measurement Studio UI Controls at Run Time

If your application uses Measurement Studio UI controls run-time property editors, you must include the NationalInstruments.UI.Design assembly in your XCOPY deployment. For example, if your application includes the property editor control or a UI control that has a property grid, you must include the NationalInstruments.UI.Design assembly in your XCOPY deployment. The NationalInstruments.UI.Design assembly is located in the InstallDir>\DotNET\Assemblies\<NationalInstruments.UI.Design.assemblyversion>\ folder. By default, the InstallDir file path is: Program Files\National Instruments\<MeasurementStudio>.

See Also

WAS THIS ARTICLE HELPFUL?

Not Helpful