02-11-2007 04:23 PM
We are in the process of converting our products from LabVIEW 7.1 to LabVIEW 8.2. In this process we have experienced some problems with ActiveX and Event handling. In one of our most complex application that we developed some years ago, we are using several ActiveX components that we have developed in Visual Basic 6.0 with the “old” LV method for handling events from these ActiveX.
Everything worked out fine in LabVIEW 7.1 but when we converted the code to LabVIEW 8.2 it causes LabVIEW to crash every time we run the code.
We are short of time for our new release, so we would very much like to do a plain upgrade of the LV 7.1 code to LV 8.2. Due to the size of the application, it would take us a lot of time converting the ActiveX event handling to the "new" event handling structure.
Attached to this mail is a tiny code example that reproduces the LabVIEW crash. To run the code do the following:
- Register the ActiveX in the OCX folder by typing regsvr32 “Event_Test.ocx” in the Windows Run meny.
- Start the VI called EventTest.vi
- Push the Execute Event button several times to make LabVIEW crash
We appreciate your feedbacks on how we can solve this problem in the short run. In the longer run we would of course use the "new" event handling mechanism.
Best Regards,
Marius Kvitnes
Chief System Architect - CARDIAC AS
(+47) 97 58 55 24
02-22-2007 04:19 AM
Hi,
I tested your VI and I see the same error as you; the functions you are using were replaced in LabVIEW 6.1 (or 7.0), so the best solution would (of course) be to replace them with "new" ones. However, I understand that for this project this might not be a solution since you're running out of time; I played around a little and found one way that at least seems to make this VI run ok; solution is to turn of multithreading. Can't guarantee it will work for your project, but its worth a try.
For more information about turning of multithreading, see this link:
http://digital.ni.com/public.nsf/websearch/87D02BA4155A0076862565BC006C2DD7?OpenDocument
Regards,
Frode