Aug 11, 2011
I am writing a customized data acquisition application in VB2010. The maker of the data acquisition hardware has provided an ActiveX control that has methods, properties, and events that can be used to interface with the hardware device.My problem is that I'd like to reference the same control (ideally the same instance of the control) on multiple forms.
View 2 Replies
To begin, it is necessary to initialize the device, sending the control information like sample rate, number of channels, etc. Then you can use methods to start or stop getting data and read properties, like the number of samples taken, or an array of the
actual data. The device also provides events, like a DataReady event that fires when a certain number of samples have been taken, and a DeviceError event that fires if the device is not present.
My program will have several forms:
1) a main menu that opens on startup and that should initialize the unit and determine whether it is present.
2) a daily check form that will get values from the device to determine whether the electronics are good.
3) a test setup form that will get values from the device to zero (tare) the input channels.
4) a run test form that will acquire and process the actual test data.
If I include separate instances of the control on each form, I need to initialize and stop the control when the forms open and close. I started to build an interface class that the forms could share and that would deal with all of the methods, but I get tripped up trying to pass the control's events back to the form.