Маршал void * в массив <byte>^ - PullRequest
       11

Маршал void * в массив <byte>^

0 голосов
/ 13 октября 2010

Я хочу записать буфер void* в MemoryStream в C ++ / CLI.Поскольку я не думаю, что это возможно напрямую, в качестве альтернативы я хотел бы преобразовать этот буфер в array<byte>^, чтобы иметь возможность вызывать Stream.Write().Я посмотрел на Marshal, но у меня возникли проблемы при покрытии void* до System::IntPtr.Любая помощь приветствуется.

1 Ответ

2 голосов
/ 13 октября 2010

У меня проблемы с закрытием void * в System :: IntPtr. Любая помощь приветствуется.

Вы можете использовать конструктор IntPtr, который принимает void*:

void* voidPointer = GetTheVoidPointer();
System::IntPtr intPointer(voidPointer);
...