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
- EncryptedKeyIdentifierClause.cs
- DeviceContext.cs
- InvalidOleVariantTypeException.cs
- mediaclock.cs
- ImageFormat.cs
- FixedNode.cs
- EntityAdapter.cs
- Brush.cs
- Highlights.cs
- FrameworkPropertyMetadata.cs
- RegisteredScript.cs
- hwndwrapper.cs
- BufferedWebEventProvider.cs
- ZoomPercentageConverter.cs
- Token.cs
- ValidatingReaderNodeData.cs
- HttpVersion.cs
- BrushConverter.cs
- BaseParagraph.cs
- GridPatternIdentifiers.cs
- XmlSerializableServices.cs
- ExpressionBinding.cs
- MetaData.cs
- TemplateField.cs
- WSDualHttpSecurityElement.cs
- WebServiceFault.cs
- GetWinFXPath.cs
- ControlAdapter.cs
- GregorianCalendarHelper.cs
- TransformedBitmap.cs
- ToolStripOverflowButton.cs
- ContentType.cs
- EntityTypeBase.cs
- Rect.cs
- ViewPort3D.cs
- HttpContext.cs
- Interfaces.cs
- Normalization.cs
- TripleDES.cs
- DataGridColumnDropSeparator.cs
- DataSourceControlBuilder.cs
- GeneralTransform3DTo2DTo3D.cs
- HttpWebRequestElement.cs
- DetectEofStream.cs
- WindowsToolbarAsMenu.cs
- ValidationErrorCollection.cs
- IntSecurity.cs
- TextParagraph.cs
- RequestCachePolicy.cs
- XmlComplianceUtil.cs
- ServiceModelConfigurationSection.cs
- XPathAncestorQuery.cs
- TextFragmentEngine.cs
- TimeZoneInfo.cs
- parserscommon.cs
- XmlSchemaInclude.cs
- TransformValueSerializer.cs
- StrongNameIdentityPermission.cs
- TemplateColumn.cs
- WsdlImporterElementCollection.cs
- HMAC.cs
- EventProxy.cs
- EventLogPermissionAttribute.cs
- QueryStringParameter.cs
- CodeTypeMemberCollection.cs
- Attributes.cs
- SwitchLevelAttribute.cs
- ScriptDescriptor.cs
- Point4D.cs
- SoapAttributeOverrides.cs
- DefaultMemberAttribute.cs
- AuthenticationException.cs
- CursorEditor.cs
- RequiredFieldValidator.cs
- HostSecurityManager.cs
- AssemblyNameProxy.cs
- BuildManagerHost.cs
- IDictionary.cs
- x509store.cs
- FlatButtonAppearance.cs
- ExpressionsCollectionEditor.cs
- WorkflowNamespace.cs
- ServiceModelSecurityTokenRequirement.cs
- RectAnimationBase.cs
- TextElement.cs
- ListBoxAutomationPeer.cs
- Viewport3DVisual.cs
- WSSecureConversationFeb2005.cs
- basecomparevalidator.cs
- RectangleConverter.cs
- TextEffect.cs
- XamlParser.cs
- XmlDataDocument.cs
- BindableTemplateBuilder.cs
- VerticalAlignConverter.cs
- LinqDataSourceDeleteEventArgs.cs
- ConvertTextFrag.cs
- DelegatingConfigHost.cs
- AnonymousIdentificationSection.cs
- DecimalKeyFrameCollection.cs