08-24-2020 07:43 AM
My new coworker took a copy of the folder containing my LabVIEW project. He made minor modifications to a few VI's. To merge his work and mine, we copied most of his modified VI's into my folder, and then he manually made his changes on the main program VI.
Suddenly there was a broken arrow. Underlying all the rest was this:
Tag-t'Response Cluster.ctl'.lvlib: TagData.lvclass
the private data control of this LabVIEW class is broken.
It seems unlikely that he modified any VI containing any reference to this tag channel. I am mystified. Something just randomly broke.
But here's what I wonder: under some circumstances LabVIEW will say "Regenerating channel files" or something along those lines. I have a feeling that if I could trigger that behavior, everything would get normal again. Is there a way to do that? Is there a place I could go to manually delete the channel support code so that it will be regenerated?
Using LabVIEW 2018.
08-24-2020 11:40 AM - edited 08-24-2020 11:42 AM
Yes, the Channel code is here:
C:\Users\<username>\Documents\LabVIEW Data\2018(32-bit)\ExtraVILib\ChannelInstances
There's one lvlib and one folder per type of channel.
08-24-2020 08:24 PM - edited 08-24-2020 08:27 PM
Oops, see next response ...
08-24-2020 08:25 PM
One "feature" of Channel Wires is that Channel Wire definitions and implementation are not "Project-specific", but "My Documents-specific". Channel Wires support code is defined by the name of the variable associated with the Channel Wire and the name of the type of Channel. It is easy to have two Projects with similarly-named Channel Wires that differ (for example, by being named for a TypeDef that differs between the two Projects), you will have a problem.
As has been mentioned here, you can "fix" this by simply deleting the ChannelInstances folder inside the ExtraVILib folder inside the "LabVIEW Version" (e.g. "2019(32-bit)") inside your default LabVIEW Data Folder, probably called "LabVIEW Data" in your My Documents folder. It is usually simplest to simply delete the entire ChannelInstances folder. When you re-open your Project, its Channel Wire support code need to be regenerated, but even with large programs with dozens of Channel Wires (I've written such routines), it takes a few tens of seconds (once).
Bob Schor