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
- Material.cs
- RequestCachingSection.cs
- DockPattern.cs
- ManagementNamedValueCollection.cs
- DeploymentSection.cs
- TraceSource.cs
- FlowDocumentView.cs
- EnumUnknown.cs
- SafeCryptHandles.cs
- DiscoveryUtility.cs
- NativeCompoundFileAPIs.cs
- LayoutEvent.cs
- WebRequestModulesSection.cs
- HostedTransportConfigurationBase.cs
- LogSwitch.cs
- OneOf.cs
- _KerberosClient.cs
- LostFocusEventManager.cs
- XmlSerializationGeneratedCode.cs
- ProjectionCamera.cs
- SafeBitVector32.cs
- ApplicationFileParser.cs
- UnsafeNativeMethods.cs
- ImageAttributes.cs
- StringComparer.cs
- ValueTypeFixupInfo.cs
- DnsEndpointIdentity.cs
- SQLMoneyStorage.cs
- SoapTypeAttribute.cs
- SmtpException.cs
- BitmapEffect.cs
- SrgsItemList.cs
- MdiWindowListItemConverter.cs
- ToolStripItemRenderEventArgs.cs
- EntityProviderFactory.cs
- ObjectListCommandsPage.cs
- DataGridAutoGeneratingColumnEventArgs.cs
- ToolStripDropDownMenu.cs
- SchemaDeclBase.cs
- Encoding.cs
- BinaryObjectWriter.cs
- FragmentQueryKB.cs
- VisualState.cs
- AggregateNode.cs
- TemplatedAdorner.cs
- EndpointIdentityExtension.cs
- CryptoStream.cs
- GridViewItemAutomationPeer.cs
- RepeatButtonAutomationPeer.cs
- WeakReferenceList.cs
- XmlSchemaSubstitutionGroup.cs
- ConstantExpression.cs
- WindowsScrollBarBits.cs
- SafeNativeMethodsCLR.cs
- EntitySqlQueryBuilder.cs
- MouseActionValueSerializer.cs
- ClientScriptManagerWrapper.cs
- ClientTargetSection.cs
- ByteBufferPool.cs
- TypeSystemHelpers.cs
- Registry.cs
- ZipFileInfoCollection.cs
- ActivityExecutorDelegateInfo.cs
- SignedXml.cs
- Group.cs
- IssuedTokenParametersElement.cs
- ReadWriteObjectLock.cs
- Point3DCollectionConverter.cs
- XmlNamespaceDeclarationsAttribute.cs
- NavigationEventArgs.cs
- EventSinkHelperWriter.cs
- ToolStripLabel.cs
- XamlUtilities.cs
- ChangePassword.cs
- CurrencyWrapper.cs
- ErrorRuntimeConfig.cs
- HotSpot.cs
- ToolStripDropTargetManager.cs
- UnsignedPublishLicense.cs
- EndpointReference.cs
- SchemaLookupTable.cs
- QueryStringParameter.cs
- Sequence.cs
- StorageMappingFragment.cs
- XmlCompatibilityReader.cs
- RelationshipNavigation.cs
- Brush.cs
- SerializableAttribute.cs
- ConversionContext.cs
- CultureMapper.cs
- ServiceObjectContainer.cs
- InternalControlCollection.cs
- AssemblyCollection.cs
- WindowsListViewScroll.cs
- CalendarDayButton.cs
- CompensatableSequenceActivity.cs
- EventLogger.cs
- PersonalizationProvider.cs
- PropertyCollection.cs
- DateTimeValueSerializer.cs