We have a VB6 server app that waits for an IBM i app to send it
requests. We are looking at Unicode-enabling it - so that UTF-16 data,
for instance, will be sent to the VB6 app and passed from there to
another Windows server.
We capture the stream with the GetData method of the WinSock control,
specifying a vbString type.
Problem is, the byte order on the i is big-endian, and it is
little-endian in Windows, and that's how VB sees it.
I need to keep the previous functionality, that doesn't use Unicode - we
want to ADD the ability to process Unicode data, not replace the old.
I've tried prepending the big-endian BOM, no good.
Do I need to flip the bytes to make the data stream little-endian? Is
there something easy in VB6 for doing that? I've googled quite a bit,
haven't come up with something "nice".
I can send a flag to indicate whether we are using Unicode. Then I could
use a different data type, such as byte array, I think, receive the data
in VB6.
I appreciate any insights - much of this is slicker than anything, just
having this initial hurdle.
I think this is a VB issue, not an IBM i matter, but that could be off.
Regards
Vern
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
[javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.