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
- TerminatorSinks.cs
- Util.cs
- FontNameConverter.cs
- QuaternionAnimationUsingKeyFrames.cs
- SourceItem.cs
- QilFunction.cs
- StreamingContext.cs
- ManipulationVelocities.cs
- BulletedList.cs
- CodeGeneratorOptions.cs
- TailCallAnalyzer.cs
- UserNameSecurityToken.cs
- SqlLiftIndependentRowExpressions.cs
- UserInitiatedNavigationPermission.cs
- DesignRelation.cs
- XmlWhitespace.cs
- MimeParameter.cs
- ImageMapEventArgs.cs
- BufferedGraphics.cs
- RestHandlerFactory.cs
- TemplateControl.cs
- XmlBinaryReader.cs
- DetailsViewPagerRow.cs
- DropDownList.cs
- NativeMethods.cs
- StartUpEventArgs.cs
- TextBox.cs
- HttpWebResponse.cs
- SQLBytes.cs
- CacheDependency.cs
- SortDescription.cs
- OracleInfoMessageEventArgs.cs
- Instrumentation.cs
- PerformanceCounterScope.cs
- Point3DAnimationUsingKeyFrames.cs
- DataRowChangeEvent.cs
- LogicalExpr.cs
- CustomTypeDescriptor.cs
- DataGridViewCellStyle.cs
- Codec.cs
- LoadItemsEventArgs.cs
- ListMarkerLine.cs
- DistributedTransactionPermission.cs
- indexingfiltermarshaler.cs
- EventProvider.cs
- FunctionQuery.cs
- Schema.cs
- LayoutEngine.cs
- ScopedKnownTypes.cs
- HttpListenerException.cs
- PixelFormats.cs
- SubMenuStyleCollection.cs
- XmlSerializerFactory.cs
- EmptyEnumerable.cs
- ImageAnimator.cs
- PagedDataSource.cs
- WizardPanelChangingEventArgs.cs
- DynamicMethod.cs
- MetafileEditor.cs
- CompoundFileStreamReference.cs
- TextDecorationCollection.cs
- KeyboardInputProviderAcquireFocusEventArgs.cs
- odbcmetadatacollectionnames.cs
- querybuilder.cs
- XPathMultyIterator.cs
- ProcessHostConfigUtils.cs
- Propagator.cs
- ECDiffieHellman.cs
- HtmlAnchor.cs
- DateTimeUtil.cs
- StringCollection.cs
- DataGridViewComboBoxColumn.cs
- AssociatedControlConverter.cs
- EventLogEntry.cs
- ObjectAnimationBase.cs
- UInt32Storage.cs
- QilInvokeLateBound.cs
- RecordManager.cs
- errorpatternmatcher.cs
- smtpconnection.cs
- PrivilegeNotHeldException.cs
- SafeProcessHandle.cs
- SelectorItemAutomationPeer.cs
- TransformerConfigurationWizardBase.cs
- LicenseProviderAttribute.cs
- ModuleElement.cs
- XPathNavigatorKeyComparer.cs
- CategoryEditor.cs
- PropertySourceInfo.cs
- UserControlParser.cs
- NavigationHelper.cs
- BoundColumn.cs
- ApplicationSettingsBase.cs
- AudioStateChangedEventArgs.cs
- DesignerObjectListAdapter.cs
- PrivilegeNotHeldException.cs
- DesignTimeHTMLTextWriter.cs
- UserControlBuildProvider.cs
- OperationCanceledException.cs
- DbCommandDefinition.cs