LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LV6.0.2 still VISA class conflict errors

Hallo NG,

Using the german LV6.0 PDS I tried to build up a chain of VISA commands. I
discovered that I couldn't connect a VISA ResourceName to a VISA command. I
got the wire:ClassConflict error. Even selecting a VISA VI and right click
"CreateControl" produced this error. Also installed instrument drivers had
this error (LeCroy 9361 and LeCroy LC334) while others (HP 34401) didn't.
So far...

I checked out the knowledgebase on www.ni.com and found something suitable.
So I took their advice and updated the german version to 6.0.2.

Now I can connect a VISA ResourceName Control to a VISA command, but still
my LeCroy drivers are broken, still wire:ClassConflict error, although these
errors appear on a different position in my VISA c
hain. BTW: I masscompiled
all my VIs when updating to 6.0.2

1. What's the trick with that thing ? Does anybody knows about that?

2. I'm sure there are some more drivers from the CD that produce that error.

3. Do you know some more information to resolve this problem (especially
which links of VIs in the VISA chain produce that very error)

Thanks for your help

Oliver Friedrich
0 Kudos
Message 1 of 6
(3,555 Views)
Oliver,
Since LabVIEW checks not only a wire type, but also for application type with ActiveX functions, this may cause "Wire:Class Conflict" error. I am not familiar with the driver that you are using, but I would first try running the LabVIEW example that came with the driver. If that doesn't give you any errors, then you could try modifying your VIs by making Polymorphic VIs. These Polymorphic VIs would have two sets of ActiveX calls in two separate VIs.
There is a KnowledgeBase that talks about "Wire:Class Conflict" error:
KB 25I9GA2L
You can learn more on building a Polymorphic VI on:
http://zone.ni.com/devzone/devzoneweb.nsf/opendoc?openagent&359E270A5D5BCEDB862569220056F548&cat=2E4161187E3DEB30862568660020BCC8

Zvezdana S.
National Instruments
0 Kudos
Message 2 of 6
(3,555 Views)
"Zvezdana S." schrieb im Newsbeitrag
news:506500000005000000174B0000-1004225886000@exchange.ni.com...
> Oliver,
> Since LabVIEW checks not only a wire type, but also for application
> type with ActiveX

I don't have an ActiveX problem, but a VISA problem, and the driver is the
LeCroy 9361 and the LeCroy LC334 driver from a NI distribution.

> functions, this may cause "Wire:Class Conflict"
> error. I am not familiar with the driver that you are using, but I
> would first try running the LabVIEW example that came with the driver.
This driver is from the Driver CD that ships with the LV 6i PDS.

> If that doesn't give you any errors, then you could try modifying your
> VIs by making Polymorphic VIs. These Polymorphic VIs would have two

> sets of ActiveX calls in two separate VIs.
> There is a KnowledgeBase that talks about "Wire:Class Conflict" error:
> KB 25I9GA2L
> You can learn more on building a Polymorphic VI on:
>
http://zone.ni.com/devzone/devzoneweb.nsf/opendoc?openagent&359E270A5D5BCEDB
862569220056F548&cat=2E4161187E3DEB30862568660020BCC8
>
> Zvezdana S.
> National Instruments
0 Kudos
Message 3 of 6
(3,555 Views)
Oliver,
If you are wiring VISA resource references, Wire:ClassConflict error means that you have wired two VISA sessions together whose classes do not match or that the function to which you have wired the VISA session does not accept sessions of the given class.
To correct this error, change the VISA class of the signal input or output terminals to match. You can change the VISA session class of any front panel control or indicator by right-clicking it and selecting Select VISA Class from the shortcut menu. If both ends of the signal are connected to functions, you have to break the wire and choose a different function for either input or output.
I have attached a VI that has the same error, and the snapshot of the explanation of the
error.
LabVIEW 5.1 allowed strings for Visa Resource Name, and LabVIEW 6i doesn't, so the type of the control used for this input my also cause the error if the LV 5.1 VI was opened with LV 6i. This, however, should not happen if you simply create a control for VISA Resource Name input in a new LV 6i VI.
If changing the VISA Class doesn't solve this problem, please attach the VI with the error, so we can track down which VIs produce this error.

Zvezdana S.
National Instruments
Download All
Message 4 of 6
(3,556 Views)
Zvezdana, thanks for the reply to Oliver.  I have a similar situation that I am trying to resolve. At my client's labs they have several different home-grown test executives with a large body of code behind each.  I have been tasked with porting some code from one text exec (TE) to another.
 
The first TE uses VISA classes of "GPIB Instr" through out, the other uses only "Instr".  I need to get the two codes working together and it is not an option to make them both use the same class.
 
Is there a way to change to a more or less specific VISA class?
 
I tried to use the typecasts "To More Specific" "To More Generic" from the Application Control palette, but that did not work. I tried using the Type Cast from the Data Manipulation palette. That appears to work, in that you can run the VI, but when you get to the Type Cast node, more often than not I get "error: memory.cpp Line 352"  followed by "your toast!!" and LabVIEW dies. Well, it doesn't actually say that, but it might as well, cause LabVIEW really does die.
 
If there is a way to cast these classes and make them play together, could you CC to my emails, I'm often in a secure lab that I can't get to the NI forums.
 
Thanks!!
 
Mike Ashe
0 Kudos
Message 5 of 6
(3,383 Views)
I'm looking into reproducing this error.  I'll let you know as soon as I find anything.

Thanks for your patience,
Robert Mortensen
Software Engineer
National Instruments
0 Kudos
Message 6 of 6
(3,365 Views)