我通过以下方式成功获取了一个.NET对象的地址:
GCHandle objHandle = GCHandle.Alloc(obj,GCHandleType.WeakTrackResurrection);
int address = GCHandle.ToIntPtr(objHandle).ToInt32();
我可以通过以下方式来调用对象:
Object obj = GCHandle.FromIntPtr(IntPtr(address)).Target;
目的是将地址存储在本地类中,并了解哪个本机对象与哪个.net对象相关。
据我所知,由于分配而导致地址不会改变,这是真的吗?还是有更好的想法来满足我的需求?
谢谢