Вниз
Скачать: 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.009 c
6-64766
Cor
2002-02-19 07:12
2002.05.20
Блокирование портов


3-64450
zx
2002-04-19 14:44
2002.05.20
ADOUpdateSQL???


14-64789
Martyn
2002-04-08 15:34
2002.05.20
Delphi + Excel


1-64737
Programmer1
2002-05-07 10:37
2002.05.20
Как перетащить форму?


1-64675
Loxly
2002-05-06 07:58
2002.05.20
Положение панели задач




   Наверх