Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

NI VisaNS dll released with NI=-488.2 Rev 15 references an older NI Common dll

It seems that NI VisaNS 13.0.40.167 references Common DLL revision 13.0.40.188 whereas the Common DLL that comes with rev 15 of 8/2015 is at 15.0.14.49154.

 

This causes the warning message:

Found conflicts between different versions of the same dependent assembly. Please set the "AutoGenerateBindingRedirects" property to true in the project file. For more information, see http://go.microsoft.com/fwlink/?LinkId=294190.

 

With the build output:
19> Consider app.config remapping of assembly "NationalInstruments.Common, Culture=neutral, PublicKeyToken=dc6ad606294fc298" from Version "13.0.40.188" [] to Version "15.0.40.49154" [C:\Program Files (x86)\National Instruments\MeasurementStudioVS2010\DotNET\Assemblies\Current\NationalInstruments.Common.dll] to solve conflict and get rid of warning.

Running AsmSpy (from http://mikehadlow.blogspot.com/2011/02/asmspy-little-tool-to-help-fix-assembly.html) reveals the referece:

Reference: NationalInstruments.Common
13.0.40.188 by NationalInstruments.VisaNS

 

These kind of issues occurred in earlier releases.   Whlle a workaround exists, this requires fixing the config files with each new release.

 

Would it make sense to have future released be more congruent all referencing DLLs of the same release?

 

Thanks

 

David

 

 

0 Kudos
Message 1 of 5
(5,744 Views)

Hello DavidHary,

 

Are you using Visual Studio environment or something similar? this is a common issue on text based programming. I wasn't able to open the link that you attached on the comment. When you install the driver it's supposed that all the references are ok. Just in case that you are using a text based environment you will need to install the support for the environment.

 

Regards

Miraquesa

0 Kudos
Message 2 of 5
(5,691 Views)
  • The build errors are generated by MS Build;
  • The environment is Visual Studio 2015; 
  • The dependency of the VISA NS assembly on a missing reference is a blemish on an otherwise a very good library;
  • Obviously, the build error, which exposes the missing reference, is not a show stopper;
  • Still, developers are likely to be mystified and spend precious time searching for the ghost in the DLL;
  • Hopefully, this can be fixed on the next release. 
0 Kudos
Message 3 of 5
(5,684 Views)

Sadly, I'm getting the same error using VS 2017. 

0 Kudos
Message 4 of 5
(3,195 Views)

VisaNS (NS=Non-Standard) is being phased out.
NI now supports the IVI standard. The 2017 release requires binding for revision mismatches such as this (from App.Config)

  <runtime>
    <assemblyBinding>
      <dependentAssembly>
        <assemblyIdentity name="NationalInstruments.Common" publicKeyToken="dc6ad606294fc298" culture="neutral"/>
        <bindingRedirect oldVersion="13.0.40.168"  newVersion="13.5.40.173"/>
      </dependentAssembly>
    </assemblyBinding>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Ivi.Visa" publicKeyToken="a128c98f1d7717c1" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.8.0.0" newVersion="5.8.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

These issues must stem from NI having to keep compatibility with a multitude of legacy libraries which builds are out of sync. One way to retire these mismatches would have been for IVI to open source VISA thus allowing us to sync our builds.

0 Kudos
Message 5 of 5
(3,191 Views)