public ClrStackWalk CreateStackWalk(DacLibrary library, uint flags) { CreateStackWalkDelegate create = (CreateStackWalkDelegate)Marshal.GetDelegateForFunctionPointer(VTable->CreateStackWalk, typeof(CreateStackWalkDelegate)); int hr = create(Self, flags, out IntPtr pUnk); if (hr != S_OK) { return(null); } return(new ClrStackWalk(library, pUnk)); }
public ClrStackWalk?CreateStackWalk(DacLibrary library, uint flags) { CreateStackWalkDelegate create = Marshal.GetDelegateForFunctionPointer <CreateStackWalkDelegate>(VTable.CreateStackWalk); if (!create(Self, flags, out IntPtr pUnk)) { return(null); } GC.KeepAlive(create); return(new ClrStackWalk(library, pUnk)); }