IT정보공유

[VB6] 소켓 통신시 주로 사용되는 함수 (바이트배열 문자열 변환 관련)

알지오™ 2019. 3. 14.

vb6에서 소켓으로 수신된 바이트배열을 문자열로 변환할때 사용하는 함수이다.

vb6은 유니코드를 사용하므로 vbUnicode 상수를 이용한다.


'//
Function StrConv(String, Conversion As VbStrConv, [LocaleID As Long])


'//sample source 소켓데이터 수신부 

Dim RcvStr As String
Dim rcvBytes() As Byte

tcpLprClient.GetData rcvBytes, vbArray + vbByte
RcvStr = StrConv(rcvBytes, vbUnicode)

'//



반대로 문자열을 바이트 배열로 할때도 같은 함수를 사용합니다. 

두번째 인자에 붙는 상수만 vbFromUnicode로 바꾸면 됩니다. 


rcvBytes = StrConv(RcvStr, vbFromUnicode)



vb6에서 정의된 구조체에 소켓으로 수신된 바이트 배열을 복사할때는 CopyMemory API를 사용합니다.


Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)


CopyMemory 정의된구조체, rcvBytes(0), Len(구조체사이즈)


♡ 여러분의 공감이 빅에너지에게 에너지원입니다. 공감, 좋아요 부탁합니다~ 

댓글

💲 추천 글