Тема: Необходимо преобразовать данные, полученные с COM-порта (с бесконтактной карты EmMarine, поднесенной к proximity-считывателю) в десятичный формат (должны получить числовой идентификатор типа
61281581286128254128696102152254128120128254)
Код:
procedure TMainForm.ReadDataClick(Sender: TObject);
Var
RCBuf:PChar; //Буфер данных для приема
nToRead:Cardinal; //Число байт для чтения
nRead:Cardinal; //Число прочитанных байт
ComStat:TComStat; //Состояние порта
Errs:Dword;
begin
ClearCommError(POrt,Errs,@ComStat); //Считываем состояние порта
nToRead:=ComStat.cbInQue; //Считываем число байт для чтения из структуры
nToReadLabel.Caption:=IntToStr(nToRead); //Выводим на форму число байт для чтения
ReadFile(Port,RCBuf^,nToRead,nRead,nil); //Считываем данные
nReadLabel.Caption:=IntToStr(nRead); //Выводим на форму число прочитанных байт
RcDataLabel.Caption:=RCBuf; //Выводим на форму считанные данные
end;
proximity-считыватель присоединен к порту COM №1
Порт открывается
Число байт для чтения: 11
Число прочитанных байт: 11
Данные принимаются, но в формате иероглифов (см. скрин)
Как эти данные преобразовать в человеческий вид. Типа в 61281581286128254128696102152254128120128254. Как реализовать это через массив, или другими способами?