Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / clr / src / BCL / System / Runtime / InteropServices / ExtensibleClassFactory.cs / 1 / ExtensibleClassFactory.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: ExtensibleClassFactory ** ** ** Purpose: Methods used to customize the creation of managed objects that ** extend from unmanaged objects. ** ** =============================================================================*/ namespace System.Runtime.InteropServices { using System.Runtime.InteropServices; using System.Runtime.Remoting; using System.Runtime.CompilerServices; using System; [System.Runtime.InteropServices.ComVisible(true)] public sealed class ExtensibleClassFactory { // Prevent instantiation. private ExtensibleClassFactory() {} // Register a delegate that will be called whenever an instance of a managed // type that extends from an unmanaged type needs to allocate the aggregated // unmanaged object. This delegate is expected to allocate and aggregate the // unmanaged object and is called in place of a CoCreateInstance. This // routine must be called in the context of the static initializer for the // class for which the callbacks will be made. // It is not legal to register this callback from a class that has any // parents that have already registered a callback. [MethodImplAttribute(MethodImplOptions.InternalCall)] public static extern void RegisterObjectCreationCallback(ObjectCreationDelegate callback); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: ExtensibleClassFactory ** ** ** Purpose: Methods used to customize the creation of managed objects that ** extend from unmanaged objects. ** ** =============================================================================*/ namespace System.Runtime.InteropServices { using System.Runtime.InteropServices; using System.Runtime.Remoting; using System.Runtime.CompilerServices; using System; [System.Runtime.InteropServices.ComVisible(true)] public sealed class ExtensibleClassFactory { // Prevent instantiation. private ExtensibleClassFactory() {} // Register a delegate that will be called whenever an instance of a managed // type that extends from an unmanaged type needs to allocate the aggregated // unmanaged object. This delegate is expected to allocate and aggregate the // unmanaged object and is called in place of a CoCreateInstance. This // routine must be called in the context of the static initializer for the // class for which the callbacks will be made. // It is not legal to register this callback from a class that has any // parents that have already registered a callback. [MethodImplAttribute(MethodImplOptions.InternalCall)] public static extern void RegisterObjectCreationCallback(ObjectCreationDelegate callback); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RightNameExpirationInfoPair.cs
- IUnknownConstantAttribute.cs
- WindowShowOrOpenTracker.cs
- PeerToPeerException.cs
- MouseEventArgs.cs
- SecurityTokenTypes.cs
- SafeFileMapViewHandle.cs
- AssemblyUtil.cs
- DataGridItem.cs
- HttpCachePolicyWrapper.cs
- ConfigurationStrings.cs
- ConnectionConsumerAttribute.cs
- OdbcTransaction.cs
- VsPropertyGrid.cs
- LoginViewDesigner.cs
- ProcessThread.cs
- WCFModelStrings.Designer.cs
- DelegatingConfigHost.cs
- FormView.cs
- HtmlInputControl.cs
- TableCellCollection.cs
- JoinGraph.cs
- Style.cs
- PropertyCondition.cs
- SByteConverter.cs
- diagnosticsswitches.cs
- EntityCommandCompilationException.cs
- GcHandle.cs
- StorageBasedPackageProperties.cs
- Calendar.cs
- ServiceTimeoutsBehavior.cs
- Blend.cs
- LiteralControl.cs
- GridViewPageEventArgs.cs
- Schema.cs
- FormDocumentDesigner.cs
- SmiEventStream.cs
- FieldNameLookup.cs
- FixedTextContainer.cs
- UrlMapping.cs
- SafePEFileHandle.cs
- BooleanConverter.cs
- WaitHandleCannotBeOpenedException.cs
- RenderingBiasValidation.cs
- AutoCompleteStringCollection.cs
- PlainXmlWriter.cs
- TypeNameHelper.cs
- BaseEntityWrapper.cs
- BaseServiceProvider.cs
- CopyAction.cs
- ProjectionCamera.cs
- JsonReaderWriterFactory.cs
- ImplicitInputBrush.cs
- XPathMessageContext.cs
- CompoundFileIOPermission.cs
- MsmqHostedTransportConfiguration.cs
- ColumnTypeConverter.cs
- CharAnimationBase.cs
- LifetimeServices.cs
- CommandConverter.cs
- MemberRelationshipService.cs
- ActiveXHost.cs
- AutoCompleteStringCollection.cs
- LeafCellTreeNode.cs
- securitymgrsite.cs
- PermissionSet.cs
- WindowsListViewItem.cs
- BitmapData.cs
- PassportIdentity.cs
- DbParameterCollectionHelper.cs
- TableDetailsCollection.cs
- CompositeActivityMarkupSerializer.cs
- Connector.xaml.cs
- MethodCallTranslator.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- SingleQueryOperator.cs
- PinnedBufferMemoryStream.cs
- ArithmeticLiteral.cs
- MenuItemStyleCollection.cs
- CodeGenerator.cs
- RSAPKCS1KeyExchangeFormatter.cs
- TileBrush.cs
- RewritingPass.cs
- ResetableIterator.cs
- MetadataSerializer.cs
- XmlSchemaSimpleContentRestriction.cs
- AssemblyAssociatedContentFileAttribute.cs
- _NTAuthentication.cs
- DbDataRecord.cs
- DeferredTextReference.cs
- ConfigurationPropertyCollection.cs
- CapabilitiesSection.cs
- EmptyControlCollection.cs
- HostingPreferredMapPath.cs
- ConnectionManagementElementCollection.cs
- DataRow.cs
- Relationship.cs
- VirtualPathProvider.cs
- HandleRef.cs
- DataListItemCollection.cs