I have written some software to control a CCD camera (attached via
SCSI). This involves calling a DLL supplied by the manufacturer.
All was good, all was running until I tried to "improve" the
communication. To be exact, I needed a feedback from my "Server"
VI which was running in the background. I was getting race
conditions between how I believed the instrument was set up and how it
was really set up.
Then suddenly the program wouldn't work any more. Most of the DLL
calls are still working as expected, but the most important (reading
the data from the CCD) is suddenly broken and brings a nice exception
error when the function is called in the DLL. I've tried setting
to UI thread execution (It WAS working as a reentrant DLL call), and
I've looked and looked, but I can't find the problem. I've also
already tried copying the entire block diagram to a new VI. No
help.
I include my code here for anyone kind enough to have a lok at
it. It's a work in progress (proof of principle thing) so it's
not too clear to understand unfortunately. If someone sees what
I'm doing wrong, please tell me. I'll buy you a beer.
Honest.
The problem seems to reside in the "C7557 mini IO.vi" in the version
which isn't working. The corresponding VI in the working version
is "C7557 IO.vi".
Many many thanks to anyone who can help me.....
Shane.
Using LV 6.1 and 8.2.1 on W2k (SP4) and WXP (SP2)