암호 기능이있는 D6 PAS 라이브러리가 있습니다. 오늘 XE3에서 사용하려고했는데 유니 코드 때문에 많은 버그를 발견했습니다. AnsiString으로 포팅을 시도했지만, Delphi6에서 8 비트로 제한된 chr (nnn)에서 실패했습니다.Delphi XE3 : Chr Ansi 버전?
내가 문제를 설명하기 위해 노력하고있어 :
Str := chr(hchar);
AStr := Str;
str을 - 문자열; AStr - ansistring.
hchar가 216 (입체 음향) 일 때 AStr이 "O"로 변경되면 Ascii 79는 무엇입니까 ... 그리고이 순간 원래 값을 잃었습니다.
Ansi Chr에는 어떤 기능이 있습니까? 예 : "AChr (xxxx)"
또는 내부 섹션에서 문자열을 사용하지 않고 바이트 만 변경하고 나중에이 바이트를 AnsiString로 변환해야합니다.
의견, 도움, 정보 주셔서 감사합니다!
DD
암호화는 문자가 아닌 약 바이트입니다. Delphi 6에서 바이트 구조 (바이트 배열)로 코드가 작동하는지 확인하십시오 (DUnit과 같은 테스트 프레임 워크를 사용하여 정확성을 확인하십시오). 그런 다음 코드를 최신 Delphi 버전으로 이식하십시오. –