我一直在查看Marshal类,但我似乎找不到允许我从非托管数组(IntPtr)复制到另一个非托管数组(IntPtr)的方法。
这可以使用.NET吗?
答案 0 :(得分:4)
您还可以通过DllImport RtlMoveMemory完成工作:
[DllImport("Kernel32.dll", EntryPoint="RtlMoveMemory", SetLastError=false)]
static extern void MoveMemory(IntPtr dest, IntPtr src, int size);
但是,这也需要FullTrust,但是当您使用非托管代码时,我希望您已经拥有它。
答案 1 :(得分:-1)
您可以恢复使用unsafe code in C#,如果这是一个选项(通常需要FullTrust权限,可能并非在所有情况下都可用)。