Просто создайте управляемый массив и скопируйте данные.Просто.
array<Byte>^ MakeManagedArray(unsigned char* input, int len)
{
array<Byte>^ result = gcnew array<Byte>(len);
for(int i = 0; i < len; i++)
{
result[i] = input[i];
}
return result;
}
Да, я уверен, что есть способ использовать класс Marshal, чтобы сделать копию за вас, или получить указатель на управляемый массив, который вы можете передать memcpy
, но это работаети для его проверки не требуется исследование MSDN.