Тема: L2PacketHack 3.5.x
Показать сообщение отдельно
Старый 06.10.2008, 22:02   #289
Пользователь
 
Регистрация: 28.06.2008
Сообщений: 33
Сказал Спасибо: 12
Имеет 15 спасибок в 8 сообщенях
RoZ пока неопределено
По умолчанию

Цитата:
Сообщение от xkor Посмотреть сообщение
RoZ, ты не прав, Info:=String(GetPluginInfo(version)) - копирует строку находящуюся по указателю возвращаемому GetPluginInfo в переменную Info так как типы PChar и String в одном месте памяти плохо ужываются ибо разные они....
Да, ты приводишь PChar к String, уже потом их приравниваешь, но строки в Дельфи очень хитрые люди делали, и они решили сэкономить на памяти и поэтому при присваивании String:=String копируется адрес, так сказать оптимизация во всей красе...
http://www.sources.ru/magazine/0804/delphistr.html - вот тут очень подробно расписаны особенности строк в Дельфи.
З.Ы. Почему собственно я это заметил, дело в том что если DLL написана на С++, то при уничтожении библиотеки, по адресу перменной Info пустота...
З.Ы.Ы. Прошу сильно не пинать и показать где я ошибся.
RoZ вне форума   Ответить с цитированием