[Lazarus] PAnsiChar to UTF8 issues

Martin lazarus at mfriebe.de
Tue Apr 9 16:28:56 CEST 2013


On 09/04/2013 15:22, Leonardo M. Ramé wrote:
> On 2013-04-09 15:20:33 +0100, Martin wrote:
>> On 09/04/2013 15:11, Leonardo M. Ramé wrote:
>>> Hi, I'm working with a "C" shared library that returns a pointer to
>>> char. It's all ok when not using special characters such as "ñ" or
>>> accents, but when I get these, they are replaced by "?" signs.
>>>
>>> For example, if I receive an "ñ", the debugger shows this:
>>>
>>> lStr := 'A'#209'oranza';
>>>
>>> The correct string is:
>>>
>>> lStr := 'Añoranza';
>>>
>>> What can I do to show accented characters?.
>>>
>> It's a known problem and already reported. here is no fix available
>> yet. The debugger does can not yet display this.
>>
>> Actually it is 2 problems.
>> 1) is the "?"
>> 2) the other is #209 etc
>>
> Well, I can live with the debugger problem, but is there a solution for
> the "?" sign end displaying in my app?.
>
If you get an ansi string, you must convert it to utf8 before giving it 
to the LCL

need to find the exact function

label.caption :- ansitoutf8(s) // assuming it is ansi in the system codepage




More information about the Lazarus mailing list