Just thought I should post an update in the interest of adding a usefull chunk of information to the forum..... Thanks to both Jason N. and Micaela N. from NI for their support. Turns out when I went to use the DAQPad I already had Labview 6.1 Development suite installed on my PC. The traditional NIDAQ driver was 6.9.2 as mentioned. I plugged it in and it was instantly recognized so I thought "OK everything should be good to go". I could configure it from the test panel in Measurement Explorer also just fine
The C# example would not work however.
Turns out after installing the software from the NIDAQ CD that came with the DAQPad this updated the traditional NIDAQ to version 7.3
The C# example then worked fine!
So then to make the DAQ work in Visual Basic you have to host the ActiveX control somehow. Using a RCW as mentioned...... However if you do not access the ActiveX properties page for the object and select the device you are using from the drop down list of avaliable interfaces..... you still will not be able to make it work! Details on what happens :
When you attemp to use the DAQ it will allow you to read the device name fine but properties such as "Number Of Ports" or "Number Of Pins" always read back as "0" so when you go to read or write to the device and identify a port with an integer value it gives you an error "Invalid Index" because it thinks it has no ports for you to control.
So since I had to access the ActiveX properties which I am sure can be done by other means but what seemed easiest is to just do it from a form. However I had no intention of using a form anywhere for doing DAQ I/O operations.
So I simply created a blank form to host the object exclusively and dropped the CWDIO ActiveX control into the form. The form allows me to host the ActiveX object and open its properties to select the DAQPAD-6508 so it will work properly.
In code I never show the form however. I simply created a new module that has my I/O and Port Config code standalone by itself. The form is called "DAQHOSTFORM" and a variable is created as a new instance of the class in my Module's public declaration space. (See attached)
I then can access the ActiveX control through that variable for my various IO needs. And it works!!!!!!!!!! Finally!