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

и показать где я ошибся.