正在做一个可视读卡器的接口程序 卡是M1卡,怎么才能把提取的卡序列号转换成字符串
code:array[0..10] of Char;function RfidCardRequestAndReadNum(m_hCom:THandle;Code:PChar):Integer;stdcall; external 'RCPV11_VCDLL.dll ';procedure TForm1.Button7Click(Sender: TObject);
var str:String;
    i,j:Integer;
begin
  j:=0;
  if RfidCardRequestAndReadNum(m_hCom,code)=0 then showmessage('寻卡成功');//提取卡序列号
  edit1.text:= 卡序列号(怎么转换)
end;

解决方案 »

  1.   

    如果都是可见字符,直接edit1.text:= Code
    如果不是可见字符,转换一下,转换成 16进制的数据显示即可
      

  2.   

    Edit1.Text :=  code;这样显示出来的是乱码
      

  3.   

    Text是String类型的。 跟Char数组(code)是兼容的
      

  4.   

    我是这样写的 转出来的是  ^0簃
    procedure TForm1.Button7Click(Sender: TObject);
    var str:String;
        i,j:Integer;
    begin
      j:=0;
      if RfidCardRequestAndReadNum(m_hCom,code)=0 then showmessage('寻卡成功');
      for i:=0 to length(Code) do
      str:= str + code[i];
      edit1.Text:=Str;end;