Я полагаю, вам нужно одно из следующих:
- Функция DCSDictionaryRef
copy
- Документация для структуры памяти DCSDictionaryRef
- Очень впечатляющие хакерские навыки, которые позволяют вам архивировать DCSDictionaryRef (и каждый объект, на который он указывает) и разархивировать его в другом месте памяти
Вот документация Apple по управлению памятью для CoreFoundation . Суть в том, что вам нужна функция Copy
, применимая к типу данных, который вы используете. Посмотрите, сможете ли вы найти и вызвать функцию копирования DCSDictionaryRef. Пример в связанной документации состоит в том, что функция с именем CFStringCreateCopy
будет использоваться для копирования объекта CFString.
Я никогда не пробовал что-то подобное раньше, но может быть возможно заархивировать объект (при условии, что вы можете знать его размер), но это также влечет за собой знание того, какие биты представляют указатели, и впоследствии архивирование объектов указателями указывают также, что также подразумевает знание типов и размеров этих объектов. Если вам удастся успешно заархивировать его, то вы можете попытаться разархивировать его в другом месте в памяти.
Мне кажется, это очень глубокая кроличья нора.