在CLR项目中,我将AesManaged类的输出作为16字节数组
array<unsigned char>^ result = msEncrypt->ToArray();
但是我需要将它转换为像这样定义的unsigned char类型的数组
unsigned char buff[16];
编辑:我确实尝试了这个,但它给出了错误(没有方法签名与这些参数,虽然有一个)
System::Runtime::InteropServices::Marshal::Copy(result, 0, buff, 16);
这一个
buff = reinterpret_cast<unsigned char>(&result);
但错误是 Expression必须是可修改的左值
答案 0 :(得分:3)
根据这个MSDN documentation,我使用了它,似乎可行
ObjProcessor processor = getProcessor();
MyClass myObj = getObjToProcess();// MyClass extends PersistentObj