Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Runtime / InteropServices / ExtensibleClassFactory.cs / 1305376 / 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.Runtime.Versioning; 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. [System.Security.SecuritySafeCritical] // auto-generated [ResourceExposure(ResourceScope.None)] [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.Runtime.Versioning; 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. [System.Security.SecuritySafeCritical] // auto-generated [ResourceExposure(ResourceScope.None)] [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
- HelpProvider.cs
- Vector3DKeyFrameCollection.cs
- SrgsElementFactory.cs
- FlowThrottle.cs
- RequestCache.cs
- wmiprovider.cs
- KnownTypesHelper.cs
- ellipse.cs
- CertificateManager.cs
- XmlSchemaRedefine.cs
- Instrumentation.cs
- XmlNotation.cs
- Button.cs
- arclist.cs
- WindowsEditBoxRange.cs
- FontFamilyConverter.cs
- WindowsGraphicsCacheManager.cs
- ApplicationBuildProvider.cs
- TextRange.cs
- BitmapDownload.cs
- GeneralTransformCollection.cs
- RequestSecurityTokenForRemoteTokenFactory.cs
- CursorInteropHelper.cs
- XmlAttributeCache.cs
- FaultContext.cs
- CertificateManager.cs
- EmptyControlCollection.cs
- ConnectionInterfaceCollection.cs
- SizeLimitedCache.cs
- PropertyOverridesTypeEditor.cs
- StringResourceManager.cs
- ResourceBinder.cs
- UInt16.cs
- Activator.cs
- UrlAuthorizationModule.cs
- WindowsListViewGroup.cs
- TypeDelegator.cs
- EdmRelationshipNavigationPropertyAttribute.cs
- SByteStorage.cs
- BindingExpressionBase.cs
- FieldDescriptor.cs
- XmlHierarchicalEnumerable.cs
- DataTemplate.cs
- AuthenticationService.cs
- ExpressionVisitorHelpers.cs
- SoapElementAttribute.cs
- XmlBindingWorker.cs
- Automation.cs
- unsafeIndexingFilterStream.cs
- ImageBrush.cs
- FacetValueContainer.cs
- DbConnectionPoolCounters.cs
- DataColumnCollection.cs
- SystemWebSectionGroup.cs
- ToolStripComboBox.cs
- _LoggingObject.cs
- UriTemplateTrieLocation.cs
- HtmlControlPersistable.cs
- HttpFileCollection.cs
- EUCJPEncoding.cs
- DbProviderConfigurationHandler.cs
- CompletedAsyncResult.cs
- WebPartConnectionsConfigureVerb.cs
- SoapExtension.cs
- UITypeEditor.cs
- HtmlLink.cs
- AtomServiceDocumentSerializer.cs
- LineMetrics.cs
- ControlTemplate.cs
- WebSysDescriptionAttribute.cs
- IChannel.cs
- ScopedKnownTypes.cs
- FormViewCommandEventArgs.cs
- HybridObjectCache.cs
- _LazyAsyncResult.cs
- ErrorTableItemStyle.cs
- QueueProcessor.cs
- Button.cs
- AddressUtility.cs
- TypeDescriptionProviderAttribute.cs
- XmlValidatingReaderImpl.cs
- ChangeProcessor.cs
- LocatorBase.cs
- DispatcherOperation.cs
- GeneralTransformGroup.cs
- SpellerHighlightLayer.cs
- ConfigXmlElement.cs
- BinaryUtilClasses.cs
- CfgRule.cs
- AssociatedControlConverter.cs
- hwndwrapper.cs
- CacheAxisQuery.cs
- CurrentChangingEventManager.cs
- ScriptingSectionGroup.cs
- sqlnorm.cs
- EventArgs.cs
- WebPartPersonalization.cs
- DataGridViewBindingCompleteEventArgs.cs
- SchemaReference.cs
- ClientSection.cs