Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / MULTI_QI.cs / 1 / MULTI_QI.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.Collections; using System.Configuration; using System.Configuration.Internal; using System.Web; using System.Web.Util; using System.Security; using System.IO; using System.Web.Hosting; using System.Runtime.InteropServices; using System.Reflection; using System.Collections.Specialized; using System.Xml; using System.Security.Principal; using System.Threading; using System.Globalization; [StructLayout(LayoutKind.Sequential, Pack = 4)] internal struct MULTI_QI : IDisposable { internal MULTI_QI(IntPtr pid) { piid = pid; pItf = IntPtr.Zero; hr = 0; } internal IntPtr piid; // 'Guid' can't be marshaled to GUID* here? use IntPtr buffer trick instead internal IntPtr pItf; internal int hr; void IDisposable.Dispose() { if (pItf != IntPtr.Zero) { Marshal.Release(pItf); pItf = IntPtr.Zero; } if (piid != IntPtr.Zero) { Marshal.FreeCoTaskMem(piid); piid = IntPtr.Zero; } GC.SuppressFinalize(this); } } [StructLayout(LayoutKind.Sequential, Pack = 4)] internal struct MULTI_QI_X64 : IDisposable { internal MULTI_QI_X64(IntPtr pid) { piid = pid; pItf = IntPtr.Zero; hr = 0; padding = 0; } internal IntPtr piid; // 'Guid' can't be marshaled to GUID* here? use IntPtr buffer trick instead internal IntPtr pItf; internal int hr; #pragma warning disable 0649 internal int padding; #pragma warning restore 0649 void IDisposable.Dispose() { if (pItf != IntPtr.Zero) { Marshal.Release(pItf); pItf = IntPtr.Zero; } if (piid != IntPtr.Zero) { Marshal.FreeCoTaskMem(piid); piid = IntPtr.Zero; } GC.SuppressFinalize(this); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SetState.cs
- CompositeCollectionView.cs
- SafeSecurityHelper.cs
- AlphabeticalEnumConverter.cs
- BaseDataList.cs
- FixedPageProcessor.cs
- ValueType.cs
- Assembly.cs
- RunWorkerCompletedEventArgs.cs
- XamlDebuggerXmlReader.cs
- DependencyObject.cs
- TypeConverterValueSerializer.cs
- RotateTransform3D.cs
- SectionInformation.cs
- HtmlElement.cs
- PropertyOverridesDialog.cs
- ComplexObject.cs
- PolicyValidator.cs
- SqlUtil.cs
- TableAdapterManagerNameHandler.cs
- CodeAttributeArgumentCollection.cs
- StaticFileHandler.cs
- ExtenderProvidedPropertyAttribute.cs
- SwitchDesigner.xaml.cs
- OleDbEnumerator.cs
- PageStatePersister.cs
- VirtualizingStackPanel.cs
- DefaultHttpHandler.cs
- FixedSOMPageElement.cs
- DateTimeParse.cs
- WebPartConnectionsCancelEventArgs.cs
- StorageModelBuildProvider.cs
- Int32Rect.cs
- DataProtection.cs
- EventDescriptorCollection.cs
- _RequestCacheProtocol.cs
- SqlCommandSet.cs
- EncryptedPackageFilter.cs
- DataGrid.cs
- GatewayDefinition.cs
- Assign.cs
- UriTemplateLiteralPathSegment.cs
- OleDbStruct.cs
- AssemblyNameProxy.cs
- TableLayoutStyleCollection.cs
- AppDomainFactory.cs
- WizardSideBarListControlItemEventArgs.cs
- EntityContainerRelationshipSet.cs
- AssociatedControlConverter.cs
- StoreContentChangedEventArgs.cs
- EntityProxyFactory.cs
- GridViewEditEventArgs.cs
- ListViewDataItem.cs
- EditorZone.cs
- ChtmlMobileTextWriter.cs
- GenericTypeParameterBuilder.cs
- Vector3DConverter.cs
- ElementProxy.cs
- webproxy.cs
- TextPointerBase.cs
- WebZone.cs
- ReachPageContentSerializerAsync.cs
- Filter.cs
- UserPreferenceChangedEventArgs.cs
- FocusTracker.cs
- ThreadAttributes.cs
- DataGridViewIntLinkedList.cs
- CheckBoxRenderer.cs
- JapaneseCalendar.cs
- AnnouncementEndpoint.cs
- TypeReference.cs
- UrlPropertyAttribute.cs
- EnumConverter.cs
- BooleanProjectedSlot.cs
- CSharpCodeProvider.cs
- GraphicsContainer.cs
- SQLDateTimeStorage.cs
- Matrix.cs
- IdentityHolder.cs
- CurrencyWrapper.cs
- TransformationRules.cs
- VBIdentifierTrimConverter.cs
- DomainLiteralReader.cs
- XmlAttributeProperties.cs
- PolyLineSegment.cs
- IItemContainerGenerator.cs
- NewArray.cs
- ClipboardProcessor.cs
- ObjectAnimationBase.cs
- IERequestCache.cs
- PropertyOverridesTypeEditor.cs
- ProcessHostMapPath.cs
- tibetanshape.cs
- AssertFilter.cs
- RadioButton.cs
- DbMetaDataCollectionNames.cs
- ArithmeticException.cs
- EntityClassGenerator.cs
- TemplateBindingExpressionConverter.cs
- Base64Encoder.cs