Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.20;
Скачать: 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 вся ветка

Текущий архив: 2002.05.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
3-64520
ATLANTIDO
2002-04-20 22:00
2002.05.20
БАЗЫ ДЛЯ ЧАЙНИКОВ


1-64599
Windeus
2002-05-05 12:13
2002.05.20
Win->Koi, Koi->Win


4-64886
socket
2002-03-15 22:11
2002.05.20
Хук на GETMESSAGE


3-64472
RM
2002-04-21 21:59
2002.05.20
Ошибка


1-64601
MisterBin
2002-05-07 15:41
2002.05.20
При повторном запуске программы, чтобы форма была на том же месте