前言
用到PtrToStructure进行指针转结构体,结果一直报如下错误:
NullReferenceException: Object reference not set to an instance of an object
(wrapper unknown) **.PtrToStructure(intptr,object)
结果长时间的尝试,终于找到问题,在此分享一下。
原因不详,有知道的也可以指点一下。
解决方法
修改前:
(TYPE)Marshal.PtrToStructure((IntPtr)((Int32)(ptr1) + offset), typeof(TYPE));
修改为:
(TYPE)Marshal.PtrToStructure((IntPtr)(ptr1 + offset), typeof(TYPE));