Длина Pbyte

Z

zubr

Гость
#4
PByte - это указатель на Byte, соответственно размер указателя будет в 32-битной винде - 4 байта.
Легко проверить - SizeOf(PByte)
 
Z

zubr

Гость
#6
slavon-x86
Еще раз повторяю PByte - это указатель, а его размер в 32-битной винде будет всегда 4 байта, не в зависимости от размера массива на который он указывает. По данному указателю размер массива не определишь.
 

slavon-x86

Well-Known Member
18.12.2005
215
0
#7
slavon-x86
Еще раз повторяю PByte - это указатель, а его размер в 32-битной винде будет всегда 4 байта, не в зависимости от размера массива на который он указывает. По данному указателю размер массива не определишь.
Странно...
Написано что dll созданная в делфи имеет собственный менеджер памяти. А значит все переменные типа String и PByte созданные в dll не доступны из приложения. Но PByte передаётся. PByte - указатель, а значит он указывает на переменную в памяти dll и из приложения должен быть недоступен. А доступен !
 
Z

zubr

Гость
#8
Со String из dll могут быть проблемы, PByte будет нормально работать. Дело в том, что длл подключается в адресное пространство приложения, соответственно все указатели длл будут ликвидны в данном адресном пространстве.