Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

NI-MAX requires 32-bit VISA, missing in 64-bit installs

Solved!
Go to solution

I did a fresh, clean install of LabView 2018 and NI-VISA 18.5. Then I run NI-MAX, and I see the error in the screenshot complaining that C:\Windows\System32\visa32.dll is missing.

 

Of course, the file is there, it's just that the error message is misleading. A little messing around with dumpbin reveals that nimax.exe is a 32-bit executable (I suppose the giveaway was that it was located under C:\Program Files (x86)\), and despite the name, C:\Windows\System32\visa32.dll is a 64-bit DLL. In fact, (believe it or not), the 32-bit compatibility DLLs are supposed to live under C:\Windows\SysWOW64\. That's right, the 64-bit DLLs are under System32 and the 32-bit DLLs are under SysWOW64. As if multilib weren't complicated enough already.

 

So, my question is, is there any way to coerce the NI-VISA (version 18.5) installer to install the 32-bit libraries in parallel, so that NI-MAX works? I really like that tool.

 

0 Kudos
Message 1 of 4
(5,804 Views)

One more tidbit: In NI-MAX, if I expand the "Software" tree and then select "NI-VISA 18.5" (see attached screenshot) it shows the path as "C:\WINDOWS\SysWOW64\visa32.dll". That is where I would expect a 32-bit compatibility library to be, but it is inconsistent with the path displayed in the "VISA Error" tree (second attachment), which says "C:\WINDOWS\system32\visa32.dll could not be found." 

 

On my system, "C:\Windows\System32\visa32.dll" and "C:\Windows\System32\visa64.dll" both exist (and are 64-bit DLLs, per dumpbin) but "C:\Windows\SysWOW64\visa32.dll" does not exist.

 

So I would refine my request to say that the error message should be fixed, and the 32-bit compatibility library should be installed (in "C:\Winodws\SysWOW64") with NI-MAX, which is otherwise pretty crippled without it.

Download All
0 Kudos
Message 2 of 4
(5,760 Views)
Solution
Accepted by Bitdiddle

Hello,

 

Have you been able to resolve this issue? I'm not sure if you still have questions on this.

 

I have NI-VISA 18.5 with the same path you said but I am not getting any errors. If the issue persists you could try force reinstalling to make sure everything is where it should be. 

 

Force Reinstall Non-Working or Corrupt NI Software

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P8U0SAK&l=en-US 

Message 3 of 4
(5,743 Views)

So "setup.exe /reinstall" definitely helped. The (misleading) error message is gone from NI-MAX, I find visa32.dll and visa64.dll in "C:\Windows\System32" and both are 64-bit binaries (despite the misleading file and directory names), and there is another visa32.dll in "C:\Windows\SysWOW64" that is a 32-bit binary. Better still, an oscilloscope I connected to via USB shows up on the list of "Devices and Interfaces" (first attached screenshot).

 

But there's still a problem. When I open the VISA test panel and try to "*IDN\n" the scope, the write half of the query succeeds but the read half times out (second attached screenshot). This may be an idiosyncrasy of the LeCroy 'scope, however, because a Tek 'scope plugged into the same USB port did work (third, and last attachment). So I'll accept your solution, thanks.

 

I still think someone should change the error message that says "C:\Windows\System32\visa32.dll" could not be found when in reality the missing file was "C:\Windows\SysWOW64\visa32.dll".

Download All
0 Kudos
Message 4 of 4
(5,736 Views)