Measurement Studio for .NET Languages

cancel
Showing results for 
Search instead for 
Did you mean: 

Distributing VISA Driver Installation in .Net Application Deployment

I have developed an application that uses NI's serial communication based on VISA to talk to equipment.

Upon attempting to deploy the application to test stations within my company, I discovered that the VISA driver needs to be installed before the application will work, although this dependency is not exposed by NI's .Net libraries.

Is there an easy way to install the driver during the Setup process for my application? (I'm referring to the Setup supported by the Standard version of the Visual Studio .Net 2003.) What are the license restrictions on distributing the VISA driver and installer?

Thanks,
Paul Alley
0 Kudos
Message 1 of 10
(5,177 Views)
You will probably need to use custom actions to run the VISA runtime installer after the installation of your app. Check out this link and here for more information.

If the systems that you are distributing to do not use any NI hardware, then you can only distribute the runtime to upto 100 systems for free. After that, you would need additional licenses.

Hope this helps
Bilal Durrani
NI
0 Kudos
Message 2 of 10
(5,165 Views)
Bilal,

So when not using any NI hardware, I can only distribute the VISA driver on 100 units? Does that also apply when using only serial port IO?
Because if that is the case, I might have to revert back to the serial port driver used in Labview 6.1.

Why did they not offer the option (in 7.1) to still use the old driver. It has been working great, and was very easy to install. Also much smaller to install (VISA > 13Mb... serpdrv < 1mb).

Oskar
0 Kudos
Message 3 of 10
(5,080 Views)
Yes, that restriction applies as long as you are installing the VISA runtime on systems that do not have any NI hardware. If you have a NI serial board, then you don't have that restriction.

If you go the route of creating LabVIEW DLLs to talk to serial, then you will add a depedencies of requiring the LabVIEW runtime on your deployment systems. If the systems already have LV on them, then its ok. Otherwise you will need to distribute the LV RTE with your application.

If you are just going to be using VISA for serial, this document describes one way you can do serial communication using .NET with the ActiveX MSComm control. This is probably a little more light weight.

http://msmvps.com/coad/archive/2005/03/23/39466.aspx

In .NET 2.0, Microsoft is adding a serial I/O component like they had for VB 6.0. So using serial from .NET will become simpler in the future.

I hope this helps
Bilal Durrani
NI
0 Kudos
Message 4 of 10
(5,058 Views)
Bilal,

Its getting interesting. I asked NI support. And it seems confusing them also.
First they indicated that there is no license issues (since free download from
NI web-site). Then he quickly send another e-mail indicating that there is a
charge for every copy of NI-VISA. I'm going to check the web-link he send.
But it sounds like not good documented change of distribution policy!

Oskar
0 Kudos
Message 5 of 10
(5,046 Views)
I guess going back to the LV6.1 serial driver might also be a good solution. This driver always worked nice for us (and easy to install also). So why bother with NI-VISA if only using serial? (or even this .NET component).

Oskar
0 Kudos
Message 6 of 10
(5,044 Views)
Hello Oskar,

The information Bilal was giving you was correct at the time. Because of a lot of confusion and frustration in our user community over the licensing rules for NI-VISA, we have listened to all the feedback and have greatly simplified our NI-VISA distribution licensing rules and requirements. In a nutshell, you have a right to include NI-VISA runtime on any deployed system that contains:
1) Any NI hardware; or
2) Any NI development software (i.e., LV FDS, CVI FDS, etc.); or
3) Any application written using NI development software (i.e., a LV .exe)

There is no limit to the number of times you can distribute NI-VISA. We hope that this change greatly simplifies the distribution rules for NI-VISA, especially for applications using Serial communication.

There will be a lot more details on the new distribution rules for NI-VISA on our web site at ni.com/visa within a week or two.

Regards,
Dany Cheij
Instrument Control Product Manager
0 Kudos
Message 7 of 10
(5,029 Views)
Hi Oskar,

So a couple of things. As of today, April 25th, the licensing rules for NI-VISA have changed. Basically to create an application in a NI ADE (such as LabVIEW), you need a Developement License. Assuming you are using the NI ADE and creating an executable or deployable application, you need a Deployment License. As of today, here are the simplified rules for each (for your application):

If you have purchased NI hardware or software ADE (which you have), the Development License is included.
If you are deploying an application and communicating across a standard PC bus - Serial, Ethernet, Firewire, etc - that is built into a system (which you are), the Deployment License is included, for unlimited systems.

This information is working on being posted on the web but probably will not be available for another day or three. The end resolution to your question is simply, since you have LabVIEW, and you are planning on using the application builder to build a distributable application, you already have both licenses.

With regards to your last post, let me give a little history of why we decided to do away with the old Serial VIs in LabVIEW 7.x. One big reason for this is that the old VIs simply referenced the Windows SDK, so developing a platform independent application wasn't really possible. Users could take an application from a Windows system to a Macintosh or a Linux machine, but accessing the serial port was not really easy, and fixes and workarounds were not the greatest. VISA is platform independent, and so creating and distributing applications across platforms is much more effective and efficient.

Anyhow, hopefully this information helps, and gets you moving! Have a great day!

Logan S.
0 Kudos
Message 8 of 10
(5,025 Views)
Here is an update on the NI-VISA License Requirements.
0 Kudos
Message 9 of 10
(4,952 Views)
It seems a straightforward excercise to implement the "old" serial port drivers (from Labview 6.1) into Labview 7.1 (or 7.1.1 for that matter). This will eliminate all this VISA discussion, or the need for VISA.
I understand that there were some platform compatibility issues with this "old" driver. Yet before I got it working fine under linux (with LV6.1). I don't have the linux version of 7.1 yet, so can't test that part.

It is good to hear though that National changed its policy, since it is a free download from their web-site. So asking license money for a free download seems asking for trouble.

Oskar
0 Kudos
Message 10 of 10
(4,948 Views)