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

Пчему падает приложение при вызове BinToHex()   Найти похожие ветки 

← →
AIRDIGER   (2009-04-17 04:47) [0]

Причем при правильном вызове... неважно где ,, но при завершении приложения всегда вываливается кретическая ошибка и просьба отправить отчет.... при чем раньше такого небыло.. и рабочий код перестал работать причем все приложениях где эта функция используется завершаются критически... Я думаю что после обновления антивируса Касперского..это стало происходить..


← →
AIRDIGER   (2009-04-17 04:50) [1]

вот например даже посе такого вызова

function RandomHex(L: DWORD): String;
Var dw: DWORD;
   buf: array of Byte;
begin
 if L = 0 then Exit;
 Randomize;
 SetLength(buf,L);
 for dw:=0 to Pred(L) do buf[dw]:=Random(256);
 SetLength(Result,L*2);
 BinToHex(Pointer(buf),@Result[1],L*2);
end;


← →
Servy ©   (2009-04-17 05:14) [2]

Из справки:

procedure BinToHex(Buffer, Text: PChar; BufSize: Integer);

...

BufSize is the size of Buffer. Text needs to point to a sequence of characters that has at least 2*BufSize bytes because each hexadecimal character represents two bytes.


В твоем примере BufSize равен L*2, что неверно (массив у тебя длиной всего лишь в L байт, а не в L*2, и места в Result у тебя только для символьного представления L символов хватит, а никак не L*2).

Рекомендую почаще читать справку и не писать код в пятом часу утра ^_^


← →
Servy ©   (2009-04-17 05:15) [3]

> и места в Result у тебя только для символьного представления
> L символов хватит, а никак не L*2

имелось в виду:

и места в Result у тебя только для символьного представления L байт хватит, а никак не L*2


← →
AIRDIGER   (2009-04-17 05:42) [4]

Мда это все копипест долбанный .... а еще общие модули для все проектов...


← →
AIRDIGER   (2009-04-17 05:46) [5]


> и не писать код в пятом часу утра ^_^


жизнь така ... ака жестокое насилие над моZком


← →
Дмитрий Белькевич   (2009-04-17 13:35) [6]


> Я думаю что после обновления антивируса Касперского..это
> стало происходить..


Как обычно. Виноват кто угодно. Антивирусы, вирусы, Борланд, Майкрософт.

Поверь, в 95, а может и в 99% случаев виноват собственный кривой код.



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

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



Память: 0.46 MB
Время: 0.009 c
15-1239183575
rulllesss
2009-04-08 13:39
2009.06.21
SmartClient для Делфи


6-1203662268
Артем
2008-02-22 09:37
2009.06.21
проблема отображения картинок в WebBrowser


15-1240040122
@!!ex
2009-04-18 11:35
2009.06.21
Ищу материнку с Intel®AMT


15-1239374642
Igorek
2009-04-10 18:44
2009.06.21
Многомодульный клиент


1-1211363965
Kolan
2008-05-21 13:59
2009.06.21
Как унаследовать компонент из одного пакета в другом?




   Наверх