Цитата:
Сообщение от xkor
RoZ, дело в том что если преобразовывать String в PChar то получается просто указатель на первый символ строки, а вот если наоборот PChar в String, то надо перед первым символом ещё разместить счётчик ссылок и длинну строки, поэтому строка при этом копируется и получается что если есть переменная p типа PChar, то PChar(String(p))<>p
|
А может быть что "новый" String из PChar он создаёт в адресном протранстве DLL так как память первоначально была выделена под PChar там же? Впрочем всё это мои домыслы, пока буду разбираться в Дельфи дальше, авось чего еще и раскопаю..
З.Ы. Кому интересно можно прочитать про похожую ситуацию вот тут
http://forum.sources.ru/index.php?showtopic=98659# хотя она и не подходит на 100%. Завтра попробую переписать функцию по другому, как там советуют, хотя из меня Дельфист тот ещё...