vahes, эм, эт что за бред
pck.bt[i], pck.ch[i] и pck.dbt[i-3] и так являются одним и тем же байтом, нахера их равнять друг другу?
ну и pck.id = pck.bt[2] = pck.ch[2] = pck.dbt[-1]
а pck.size это pck.bt[0] и pck.bt[1] или pck.ch[0] и pck.ch[1]
Добавлено через 11 минут
да кстати, если у тебя дельфя 2009+ то замени все string и char в которых храниться пакет на ansistring и ansichar
__________________
Я здесь практически не появляюсь!, Skype - ikskor
Последний раз редактировалось xkor, 27.07.2011 в 00:50.
Причина: Добавлено сообщение
TFixPck = packed record case Integer of
0:(ch: array[Word] of Char);
1:(bt: array[Word] of Byte);
2:(size: Word; id: Byte; dbt: array[0..65532] of Byte);
и решил заполнить все масивы с текста в Мемо, чтобы запись типа была полной (практического применения не предвиделось, просто для себя попрактиковаться хотел).
А по делу, я чет думал что нумерация элементов масива идет с 1цы, а не с 0. В этом скорее всего и ошибка. Спасибо за ответ.
Нет пока с 7й разбираюсь.
vahes, не, нумерация по умолчанию с единицы только у стрингов, у остальных массивов с 0.
А case в обьявлении типа используется чтобы указать что 3 массива располагаются в одном куске памяти и не подряд а прямо друг на друге.
__________________
Я здесь практически не появляюсь!, Skype - ikskor
А case в обьявлении типа используется чтобы указать что 3 массива располагаются в одном куске памяти и не подряд а прямо друг на друге.
тоесть заполнять надо только 1 массив? Остальные это типо, тот же массив только с разными типами данных?
Проверил, действительно так и есть, еще раз спс
Последний раз редактировалось vahes, 27.07.2011 в 01:52.
vahes, хм, смотрю вот счас на код и думаю, а какого у меня там размер фиксирован при том что везде он берётся из пакета и только блин в одном месте за каким то фигом указан жестко. Вот тут вот:
спс ща попробую, у меня еще вопросик, как я понимаю размер картинки идет сначала после 12 байтов мусора(или хз чего), и для PledgeCrest он будет 16х16 и поэтому применяется dw.Height-4 чтобы перейти к размеру 12х16 стандартному для креста правильно?