07-06-2012 05:07 PM
Not sure if this is the right area to ask this, but here it goes...I downloaded the trial copy of MAX onto Windows7 x64 and had "Windows Installer is corrupt" errors when installing the Device Drivers (I suspect x86/x64 issues). I have been trying to follow the guide on http://www.ni.com/white-paper/4558/en#toc6 to set up a scope in MAX, then initialize it to a handle in the code with the following:
IviScope_Initialize("SCOPE1", &devicePointer);
I've added a bunch of IVI COM References to my project, but none of them contain this initialize method for MAX instruments I'm looking for. Is this related to the Device Drivers not installing properly with the MAX install? If so, how can I get them in a serparate installer? Or is there a x64 specific installer somewhere?
Thanks!
Solved! Go to Solution.
07-06-2012 05:36 PM
UPDATE: Attempting to establish connection to function generator revealed a missing IviFgen_32.dll. I now suspect the Device Drivers not being installed are the root of the problem. Re-install is having same error. Ideas?
07-09-2012 04:52 PM
What devices are you trying to iterface with Max? If you need them, NI drivers are available at the following link.
Regards,
Isaac S.
07-09-2012 05:15 PM
I'm trying to communicate with a Tektronix AFG3101 function generator. i found the correct DLL on your drivers page, and I was able to use Measurement Studio to correctly wrap the drivers into a .NET class, but during the initialization of the driver it cannot find iviFGen_32.dll. I am using the evaluation version of Management Studio, and during installation it couldn't find the NI Device Drivers DVD. I downloaded the latest NI Device Drivers package, and re-installed Measurement Studio, but it won't accept any of the paths to my install location for the Device Drivers during this phase of installaton. I can't find the missing iviFGen_32.dll in this Device Driver package, but I'm wondering if this install problem is the cause of the missing dll. Otherwise, how do I get the DLL because I've already installed the following packages:
Shared Components (IVIFoundation.org)
IVICompliance Package (NI)
NI_VISA Package (NI)
07-11-2012 09:57 AM
Geoff V,
Did you install Measurement Studio before you installed the Device Drivers? There is an installation order that NI recommends to ensure that everything functions properly. Here is an article that discusses the proper installation order:
Order of Installation for Multiple National Instruments Hardware and Software Products
http://digital.ni.com/public.nsf/allkb/779E54A45478FA2C86256D0500774FCB?OpenDocument
You mentioned that you got an error that said the "Windows Installer is corrupt." Did the Device Drivers ever actually get installed? If you are still getting the same error, I would recommend downloading the installer from our website again and trying to install from that one. Perhaps the original file was corrupted in the download process.
07-11-2012 11:43 AM
I installed MeasurementStudio 2010 SP1 first. During the end of this installation I was prompted for the Device Drivers DVD which I do not have as I downloaded the eval copy of measurement Studio. At this point, I attempted to redirect the installer to the path which I had downloaded and installed the NI Device Drivers pack to (downloaded from NI site). It wouldn't accept any of these paths as a valid location, so I had to continue with installation. Next I Installed the NI-VISA 5.2.1 pack (downloaded from NI site), followed by the Device Drivers pack (downloaded from NI site) and last the MAX pack (downloaded from NI site). I'm still having the same issue, cannot locate ivifgen_32.dll, so I guess the real question is what install pack is this supposed to be part of?
07-12-2012 04:31 PM
Hi Geoff V,
This dll is a part of the IVI Compliance Package. On my 32-bit machine the file is called ivifgen.dll and is located here "C:\Program Files\IVI Foundation\IVI\Bin". You mentioned that you already installed the IVI Compliance Package. Is the file in the location I mentioned?
07-12-2012 05:32 PM
Thanks for the reply, I don't see it in my C:\Program Files (x86)\IVI Foundation\IVI\Bin, only iviFgenTypeLib.dll. However when I open C:\Program Files\IVI Foundation\IVI\Bin, I see iviFgen_64.dll, which looks like the one it should be getting.
The IVI driver Idownloaded said 32 and 64 bit compatible, but appears to be looking for that 32bit driver. I downloaded the compliance package from
http://joule.ni.com/nidu/cds/view/p/id/2589/lang/en (main NI site) and it said its a 32/64 bit package.
I can change the call from the IVI driver Idownloaded to call the 64 bit one instead, however I'd rather not get in the habbit of adjusting every IVI driver I download. The IVI driver is the one seen here:
http://sine.ni.com/apps/utf8/niid_web_display.model_page?p_model_id=7377
So either the driver was incorrectly distributed and should be making the 64 bit dll call, or the 32 bit dll should be there anyway and wasn't installed by the compliance pack. Thoughts?
Thanks again for your time,
Geoff
07-13-2012 12:26 PM
Geoff V,
Can you successfully initialize a session with the function generator when you change the IVI driver's call from ivifgen_32.dll to ivifgen_64.dll? The issue is likely related to the driver itself rather than the IVI Compliance Package.
07-13-2012 01:42 PM
I changed all the calls to 64 and was able to find the .dll with the PInvoke call. However the init call returns an error code of -1074135040 and the instrument handle comes out null. During this process, I had the corresponding hardware plugged into the machine and the MAX open and running.
I attempted the do the same process (download the IVI driver, wrap it with Measurement Studio .NET wrapper) with a new IVI driver from the NI site, a different driver, the hp33120a driver. I found that the same error arises at the same spot.
To make the init work with the first one I had to edit project settings to target: Any CPU.
To make the init work with the second one I had to edit project settings to target: x86.
But like I said, in both cases I got this error on the PInvoke call.
This error code and the exception that goes with it gives no information as to why it occurs. I tried looking up this error but can't seem to find anything giving a description. Does it sound like a target platform issue or missing more IVI type drivers?