Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / 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);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
//
// 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);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TimelineCollection.cs
- ColumnHeader.cs
- ListControlDesigner.cs
- MenuAdapter.cs
- WriterOutput.cs
- RelationshipEnd.cs
- HyperLinkField.cs
- RepeatInfo.cs
- ConfigurationElementProperty.cs
- WindowsGraphics2.cs
- CancelEventArgs.cs
- StringUtil.cs
- ValidatedControlConverter.cs
- InputLanguageEventArgs.cs
- ParameterCollection.cs
- DeviceSpecificDesigner.cs
- FtpWebResponse.cs
- XmlSchemaNotation.cs
- VerificationAttribute.cs
- DataGridViewCellCollection.cs
- ImageList.cs
- TransformGroup.cs
- StatusBar.cs
- ConditionCollection.cs
- HtmlElementCollection.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- VisualBasicSettingsHandler.cs
- ByteStreamMessageUtility.cs
- ExpressionsCollectionConverter.cs
- ObjectContext.cs
- ProviderUtil.cs
- AnimationClockResource.cs
- SortFieldComparer.cs
- ServerTooBusyException.cs
- httpserverutility.cs
- ResourceAssociationTypeEnd.cs
- LinqDataSource.cs
- ResourceAssociationSet.cs
- SimpleRecyclingCache.cs
- CapabilitiesAssignment.cs
- DecimalAnimation.cs
- CalendarDayButton.cs
- XmlIlTypeHelper.cs
- ListControlConvertEventArgs.cs
- Transform.cs
- DesignerTextWriter.cs
- ObjectListFieldCollection.cs
- PrintPreviewDialog.cs
- BaseParser.cs
- BaseProcessor.cs
- SchemaInfo.cs
- RelationshipConstraintValidator.cs
- MergeLocalizationDirectives.cs
- ExpressionEditorAttribute.cs
- StrokeSerializer.cs
- DataGridLinkButton.cs
- WindowsScroll.cs
- ReachBasicContext.cs
- FaultPropagationQuery.cs
- PageHandlerFactory.cs
- ProcessThreadDesigner.cs
- ImageSourceValueSerializer.cs
- TdsParserSafeHandles.cs
- XPathItem.cs
- DataControlField.cs
- ConfigErrorGlyph.cs
- NumericUpDownAcceleration.cs
- SafeFileHandle.cs
- StickyNoteAnnotations.cs
- PageFunction.cs
- DataGridViewBand.cs
- StorageConditionPropertyMapping.cs
- xsdvalidator.cs
- HttpVersion.cs
- UnSafeCharBuffer.cs
- Point3DKeyFrameCollection.cs
- EncryptedType.cs
- SvcMapFileLoader.cs
- AliasedSlot.cs
- FormViewUpdateEventArgs.cs
- PeerInputChannel.cs
- CheckBoxField.cs
- GACMembershipCondition.cs
- WorkflowDefinitionDispenser.cs
- ObjectSelectorEditor.cs
- LoginView.cs
- HttpCapabilitiesEvaluator.cs
- ScrollChrome.cs
- QueryCacheEntry.cs
- GridViewSelectEventArgs.cs
- KeyBinding.cs
- SqlMethods.cs
- ToolboxItemFilterAttribute.cs
- Bezier.cs
- BaseDataListComponentEditor.cs
- Transaction.cs
- ChangeInterceptorAttribute.cs
- CompositeFontInfo.cs
- UnaryQueryOperator.cs
- DataSourceView.cs