Вниз
Скачать: CL | DM;

Вопрос по OemToChar   Найти похожие ветки 

 
Марина   (2002-03-19 10:08) [0]

Подскажите, пожалуйста, почему вот такой код

Memo1.Lines.LoadFromFile("astra.cod");
Src := Memo1.Lines.GetText;
OemToChar(Src, Str);
Memo1.Lines.Text := StrPas(Str);

дает ошибку времени выполнения типа EAccessViolation на строке OemToChar(Src, Str), но после повторного нажатия на F9 тем не менее отрабатывает. Заранее спасибо.


 
Shaman_Naydak ©   (2002-03-19 10:36) [1]

ошибка вылетает из-за того, что под Str ты память не выделил.
Лови гитару
var S: string;
begin
Memo1.Lines.LoadFromFile("astra.cod");
S:=Memo1.Text;
OemToChar(PChar(S), PChar(S));
Memo1.Text:=S;
end;


 
McSimm ©   (2002-03-19 10:37) [2]

Это происходит потому, что под Str не выделена память. Необходимо перед вызовом oemtochar обеспечить необходимую длину Str, например SetLength.

Также можно воспользоваться самой Src для получения результата:
OemToChar(PChar(Src), PChar(Src));
Memo1.Lines.Text := Src



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
3-64558
SuperSmit
2002-04-24 14:58
2002.05.20
Paradox на Nowell


1-64597
Ascan
2002-05-07 02:36
2002.05.20
Как запретить сообщения в TWebBrowser ?


14-64811
alexandr
2002-04-11 08:57
2002.05.20
test


1-64642
RaZEr
2002-05-01 05:34
2002.05.20
Реализовать раскраску текста


3-64548
SONY
2002-04-23 15:12
2002.05.20
Суммировать время




   Наверх