![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать сколько байт в памяти занимает TreeView.Items[n].Data?
Иван Петров © (2016-06-21 20:15:00)Создаю в Data StringList и добавляю в него строки:
TreeView1.Items[0].Data := TStringList.Create;
TStringList(TreeView1.Items[0].Data).Add('строка');
Далее нужно зашифровать Data как набор байт. Как узнать размер Data (читай - StringList) в байтах?
Inovet (2016-06-26 20:28:00) [1]> [17] Иван Петров (26.06.16 13:45)
> Значит придется шифровать только Text.
Ты осмысли что значит "Значит". Шифровать указатели зачем надо - это же всё временно.
Иван Петров (2016-06-26 13:45:00) [2]Всем спасибо за разъяснения. Значит придется шифровать только Text.
KSergey (2016-06-26 11:59:00) [3]Иван Петров,
то, что ты хочешь сделать - невозможно.
Если ты опишешь задачу, которую на самом деле хочешь решить - то наверняка найдётся способ.
Rouse_ (2016-06-24 13:06:00) [4]
> Иван Петров (21.06.16 21:20) [6]
> И данные и объект. Т.е, чтобы после шифрования Data уже
> не имела ничего общего с StringList.
Это разные области памяти вообще, причем меняющиеся в динамике практически на каждый чих
Dimka Maslov (2016-06-24 10:51:00) [5]Если возьмём и зашифруем память, выделенную под объект это приведёт к тому, что возникнет access violation.
iop (2016-06-22 10:33:00) [6]чорт
у меня все tbuttons не зашифрованы
пойду криптану их от греха подальше......
sniknik (2016-06-22 10:26:00) [7]> словно кроме текста в стринглисте можно хотеть зашифровать сам экземпляр стринглиста.
почему нет? хотеть можно все, медицина не запрещает. получить все нельзя, а хотеть можно.
тем боле он явно прямо так и пишет (читай внимательно)
> TStringList(TreeView1.Items[0].Data).Add('строка');
> Далее нужно зашифровать Dataкак набор байт. Как узнать размер Data (читай - StringList)в байтах?
> Мне нужно зашифровать не просто текст, а весь блок памяти, выделенный под этот StringList. Т.е Lenth(Text) тут недостаточно.
iop (2016-06-22 08:24:00) [8]все так интересуются
словно не ясно что на самом деле он хочет зашифровать.
словно кроме текста в стринглисте можно хотеть зашифровать сам экземпляр стринглиста.
Германн (2016-06-22 02:28:00) [9]
> Иван Петров (21.06.16 20:30) [3]
>
> Мне нужно зашифровать
А для чего? И что именно зашифровать?
Игорь Шевченко (2016-06-21 22:03:00) [10]
> Может я неправильно понимаю...
Неправильно. TStringList - это один участок памяти. TStringList.FList - это другой участок памяти. TStringList.FList[0].String - это третий участок памяти, и т.д.
iop (2016-06-21 21:23:00) [11]тебе же сказали уже про свойство Text.
оно подрастает
Иван Петров (2016-06-21 21:22:00) [12]Может я неправильно понимаю... Создается StringList, под него выделяется некий участок памяти и помере добавления новых строк этот участок "подрастает". Вот его я и хотел зашифровать.
Иван Петров (2016-06-21 21:20:00) [13]
> Dimka Maslov © (21.06.16 20:48) [5]
>
> Что мы хотим шифровать? Данные или сам объект?
И данные и объект. Т.е, чтобы после шифрования Data уже не имела ничего общего с StringList.
Dimka Maslov (2016-06-21 20:48:00) [14]Что мы хотим шифровать? Данные или сам объект?
iop (2016-06-21 20:35:00) [15]ну прибавь одиннадцать - пятнадцать байт.
тогда хватит
на весь блок
или ты еще и vmt со всеми потрохами шифровать собрался?
Иван Петров (2016-06-21 20:30:00) [16]Мне нужно зашифровать не просто текст, а весь блок памяти, выделенный под этот StringList. Т.е Lenth(Text) тут недостаточно.
iop (2016-06-21 20:26:00) [17]размер стринглиста в байтах это четыре.
Dimka Maslov (2016-06-21 20:23:00) [18]У СтрингЛист есть свойство Text