This is the problem, I can not connect to vb.net
Again, you've not really given us enough to see if there is a problem. You only have given us
1) The sent routine in VB, that seem to sent a minimum of 2 packets
a) A string encoded length with a 0 byte ending (in the style of C string handling)
b) The actual string you are sending
Note: Both seem to be encoded to bytes via some function called SB, but without code, I'm just guessing.
2) The sent routine in B4A which just seems to sent the contents of the string xEnvio
What you don't show is is the receiving code of either! On top of that, if 1) is an attempt to emulate the prefix mode that is available in B4X's AsyncStreams, then that is totally wrong. Again, I'm guessing here since you have not responded to my previous question(s).
Looking at your VB.NET code in post #1, your B4A code should receive a minimum of two NewData events, one for your encoded length, another (or more) for the string you are sending. But, again, I'm guessing since you have not shown us the NewData event code for the B4A side. Also, how are you determining the address to use in you VB.NET address to sent data to you B4A app?