Is it possible to use the vaCapture component with a start string, but with a fixed packet length instead of a finish string?
This
is something that's commonly done with the AsyncPro TApdDataPacket and
would be a worthwhile addition to vaCapture in my opinion.
The
data packets I'm receiving are all the same length and start with the
same string. The end character is a checksum so is not constant.
Did you try by not specifying VaCapture.DataFinish but specify VaCapture.MaxMsgLen?
No I didn't. I read the documentation but got the impression that property was something to do with the buffer size. I'll try that today. Thanks.
I can't get that to work at all. Has it actually been tested to work that way?
We've investigated this deeper and saw an issue with this approach. We'll introduce it as a property to have the capability for a fixed message length. The next update will have this.
OK, thanks for that. I look forward to testing it.
On a related note, is it possible to have more than one vaCapture connected to a vaComm component?
The reason I ask is that for another application there could be more than one type of packet arriving. Each would have a different datastart string and packet length.
It should be possible to attach multiple vaCapture instances.
Any chance this update can be released soon please?
We'll try to plan this for first week of Sept.
Hello,
I'am using the V2.10 version of VCL Async :
I try to use the TVaCapture component with TVaComm component and it works correctly
With Character detection.
TVaCapture configuration :
DataFinish : 8
DataFinishCase : dcCaseSensitive
DataFinishType : dtString
DataFixedLen : -1
DataStart : 1
DataStartCase : dcCaseSensitive
DataStartType : dtString
DataType : daString
So when i receive ? 12345678 ? i find in the Data buffer ? 23456 ? it?s ok
But now i would like to receive the same data in binary mode, so i program this
New configuration :
TVaCapture configuration :
DataFinish :
DataFinishCase : dcCaseSensitive
DataFinishType : dtString
DataFixedLen : 7
DataStart : #31
DataStartCase : dcCaseSensitive
DataStartType : dtExpression
DataType : daBinary
Now when i receive ? 12345678 ? the Data buffer is empty (NULL), where is my error ?
And is it possible in binary mode to receive data with 0 (zero) Inside ?
Thank you for your help.
You sent the same question by email.
We have replied to your email.
Still waiting for an update please so I can continue on with this project.
You set DataStart = #31 but I assume you sent the character sequence 12345678 so I would expect that VaCapture.DataStart = #49
Your reply seems to be to the person who crashed my thread?
I'm asking if there will be an updated release of the Async components soon.
The latest release is v2.1 from November last.
https://www.tmssoftware.com/site/tmsasync.asp
This latest release has all latest improvements.
Ah, I see that now. For some reason in "My Products" it shows:
Latest available release 2.0.3.2 (Friday, April 28, 2017)
Further down the page it does list the newer version:
Latest registered version
Monday, November 26, 2018