In suggesting that I could post a VB6 app here I was forgetting that it would be futile since a lot of you wouldn't have access to the VB6 programming environment and therefore could not build nor run the app for testing. Besides that, you would need my Vision-120 ladder program as well. As I said in an earlier post my app does fine as long as I use UnCmDrv1.DLL, so I will stick with it.
There are two reasons I wanted to avoid using the DLL. First, my app can use a variety of PLC's, Arduino's, Stamps, etc., and I would like to standardize on mscomm32.ocx for serial communications. Second, I want to keep my users from having to install VisiLogic just to get the drivers on their machines. For some strange reason Unitronics didn't write a com driver from scratch but rather based it on the Allen Bradley com driver without which it will not operate. Allen Bradley doesn't offer this driver free to developers so VisiLogic must be installed to get it. Since my app provides all the logic that would normally be the domain of the PLC ( I am using the Vision-120 as a simple I/O module at present ) users don't explicitly need VisiLogic for anything other than the Allen Bradley drivers. Of course, selecting a comport is made easier by VisiLogic and that could be a very good reason for installing it.
I will continue studying the command structure for reading values and try to uncover what is happening, but as long as the DLL works I won't put too much effort into it. If I find the answer I will post it.