Q&A

  • Byte 를 Char로 변환 (MSComm 관련)
안녕하세요
MSComm 을 이용하여 바코드 스캐너로 데이터를 읽어들이면 그것을 텍스트박스에 보여주는 프로그램을 작성하는 중입니다.

바코드 스캐너에서 데이터를 읽으면 마지막 문자열에 엔터값이 들어가서 텍스트박스 OnEnter 이벤트에서 특정 작업을 하는데요...

바코드 스캐너에서 읽어들인 바이너리가 엔터값이 아니면 char 배열에 저장하려 하는데

바이너리 => 바이트에 저장, 바이트 => char에 저장....  타입 캐스팅이 안되네요...

알고 계시는분 도움을 바랍니다.
2  COMMENTS
  • Profile
    최용일 2010.01.13 19:13
    바이너리가 뭔지는 잘 모르겠지만... 암튼 델파이에서 특정한 형태를 가지겠죠? 배열이든 포인터든...
    그냥 범용적으로 할 수 있는 방법은 Move함수를 이용해서 데이터를 옮기는 것이 좋을듯하네요.
  • Profile
    이용벽 2010.01.15 22:14
    RS232C에서 받은 코드를 아래 프로그램으로 변환했는데 참조해보세요.

    var
    Buff: array[0..1023] of Char;
    RLen: Word;
    I: Integer;
    Str: String;


    for I := 0 to RLen - 1 do begin
    if (Buff[I] < ' ') or (Buff[I] >= #127) then
    Str := Str + '(#' + IntToHex(Byte(Buff[I]), 2) + ') '
    else
    Str := Str + String(Buff[I]) + ' ';
    end;