2009-06-30 2 views
0

매개 변수로 ANSI 문자열 (코드 페이지 1252)을 허용하는 기존 Delphi COM 라이브러리가 있습니다.
생성 된 .net 래퍼는이 매개 변수의 문자열을 허용합니다. 그러나 일반적인 문자열을 전달하는 것은 잘 끝나지 않습니다. '°'문자를 사용하면 물음표가 그 자리를 차지합니다.Com 래퍼 및 코드 페이지

어떻게 가서 디버깅 할 수 있습니까? com 래퍼가 올바른 인코딩을 인식하지 못합니까? 어떻게하면 ANSI 문자열을 전달할 수 있습니까 (바이트로 변환 할 수 있지만 API는 문자열을 필요로하므로 UTF16으로 다시 변환됩니다)

답변

0

하나의 대안은 중간 계층을 다음과 같은 방법으로 관리되지 않는 언어로 작성하는 것입니다. 호출을 원래 라이브러리로 리디렉션하고 변환을 위해 MultiByteToWideChar를 사용합니다. 래퍼를 다른 방법으로 납득시키지 않으면 아주 쉽고 좋은 해결책입니다.

+0

래퍼가 올바르게 래핑되지 않는 이유는 무엇입니까? –