void Initialize(ComClassRuntimeInfo info) { headerInfos = info.Headers; headers = new IntPtr[headerInfos.Length * 2]; for (int i = 0; i < headerInfos.Length; ++i) { var headerInfo = headerInfos[i]; headers[i * 2] = headerInfo.VTablePtr; // vtable headers[i * 2 + 1] = IntPtr.Zero; // handle to this } headersHandle = GCHandle.Alloc(headers, GCHandleType.Pinned); }
internal ComClass(ComClassRuntimeInfo info) { Initialize(info); }