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
- CFStream.cs
- DeploymentSectionCache.cs
- CollectionContainer.cs
- StorageFunctionMapping.cs
- MultipleCopiesCollection.cs
- StringBuilder.cs
- PageSetupDialog.cs
- ButtonBaseDesigner.cs
- DSASignatureDeformatter.cs
- BulletedList.cs
- DataReceivedEventArgs.cs
- ToolStripContentPanel.cs
- ApplicationGesture.cs
- CodeDirectionExpression.cs
- HandleRef.cs
- DataBinder.cs
- HtmlInputReset.cs
- OracleException.cs
- ProxyWebPartManager.cs
- Sorting.cs
- QilXmlReader.cs
- ChannelServices.cs
- PersonalizationDictionary.cs
- TrackingWorkflowEventArgs.cs
- SqlFacetAttribute.cs
- LocationSectionRecord.cs
- UntrustedRecipientException.cs
- TemplatedAdorner.cs
- BuilderElements.cs
- SocketPermission.cs
- MethodRental.cs
- OdbcPermission.cs
- Blend.cs
- SelectedDatesCollection.cs
- DataGridViewBindingCompleteEventArgs.cs
- QuarticEase.cs
- ContentWrapperAttribute.cs
- TextServicesLoader.cs
- UniformGrid.cs
- BitmapImage.cs
- SqlRowUpdatingEvent.cs
- ClientCultureInfo.cs
- PolyBezierSegmentFigureLogic.cs
- PolicyImporterElement.cs
- OdbcConnection.cs
- CompiledQueryCacheKey.cs
- PagesSection.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- TextBreakpoint.cs
- KnownColorTable.cs
- WebControlAdapter.cs
- TreeNodeCollection.cs
- CompareInfo.cs
- UpWmlMobileTextWriter.cs
- TreeView.cs
- DesignTimeVisibleAttribute.cs
- EdmTypeAttribute.cs
- OutputScopeManager.cs
- PropertyGroupDescription.cs
- _SslStream.cs
- InvalidOperationException.cs
- UserPreferenceChangedEventArgs.cs
- _SslStream.cs
- PreviewPrintController.cs
- UpnEndpointIdentityExtension.cs
- Privilege.cs
- ClassData.cs
- EventLogTraceListener.cs
- XmlSchemaAnnotated.cs
- DocobjHost.cs
- AppSettingsReader.cs
- XmlSignatureProperties.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- FileFormatException.cs
- XpsException.cs
- WorkingDirectoryEditor.cs
- XmlSerializerAssemblyAttribute.cs
- XmlSchemaSimpleTypeList.cs
- MetadataAssemblyHelper.cs
- RuleSettings.cs
- RepeaterItem.cs
- Material.cs
- CalculatedColumn.cs
- XsltException.cs
- GlyphRunDrawing.cs
- HierarchicalDataSourceIDConverter.cs
- ServiceModelPerformanceCounters.cs
- PerformanceCountersElement.cs
- WinEventWrap.cs
- SettingsBindableAttribute.cs
- ConfigXmlComment.cs
- ByteConverter.cs
- SerializationIncompleteException.cs
- TriggerAction.cs
- StickyNoteHelper.cs
- SqlAliasesReferenced.cs
- PenThreadWorker.cs
- DeflateEmulationStream.cs
- XdrBuilder.cs
- MsmqTransportBindingElement.cs