Пытаюсь сделать вот что:
Есть такая строка:
Код:
proxyserver := proxyinfo^.lpszproxy;
Edit5.Text:=proxyserver;
Тип proxyserver: string;
lpszproxy: widechar.
Edit присваиваем Widechar. В результате в Edit получаются квадраты. Как сделать так, чтобы отображалось нормально?
Пытался делать
Код:
proxyserver :=AnsiString(proxyinfo^.lpszproxy);
Edit5.Text:=proxyserver;
Вместо квадратов получаются вопросы.
Функцию типа Widechartostr нашел.
В примере сказано, что:
http://www.delphibasics.co.uk/RTL.as...deCharToString
Код:
var
wideCharArray : array[0..5] of WideChar;
myString : String;
begin
// Set up our WideChar array
wideCharArray[0] := 'H';
wideCharArray[1] := 'e';
wideCharArray[2] := 'l';
wideCharArray[3] := 'l';
wideCharArray[4] := 'o';
wideCharArray[5] := #0; // Terminates WideChar strings
// Copy to a normal string
myString := WideCharToString(wideCharArray);
// Show what the copy gave
ShowMessage(myString);
end;
После попыток что-то сделать оказалось, что на вариант:
Код:
Buffer2[0]:=proxyinfo^.lpszproxy; где Buffer2[0]:array[0..5] of WideChar
- ругается как "Incompatible types: 'Char' and 'PWideChar'".
Обьявил Buffer2:PWideChar и присвоил:
Код:
var
Buffer4:PWideChar;
proxyserver:string;
.
.
Buffer4:=proxyinfo^.lpszproxy;
proxyserver := WideCharToString(Buffer4);
Edit5.Text:=proxyserver;
Всё компилируется, но в окне Edit выводится "ㄱ⸴㈱⸷㐲⸶㘳㠺㠰0ㄱ⸴㈱⸷㐲⸶㘳㠺㠰0₰" вместо цифр и букв.
Версия Delphi 2009. Помогите, пожалуйста!
lmikle: пользуемся тегами!!!