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
- SqlDataSource.cs
- CommunicationObjectAbortedException.cs
- XslTransform.cs
- ObjectViewQueryResultData.cs
- COM2PropertyDescriptor.cs
- DrawingContext.cs
- ImageList.cs
- StickyNoteAnnotations.cs
- AutomationElementIdentifiers.cs
- NameValueConfigurationElement.cs
- XmlException.cs
- ExceptionTrace.cs
- SessionStateUtil.cs
- OutputCacheProfileCollection.cs
- DataGridViewColumnEventArgs.cs
- EncryptedXml.cs
- PrintPreviewDialog.cs
- BoolLiteral.cs
- ComponentResourceManager.cs
- MergeFailedEvent.cs
- PropertyMetadata.cs
- ConstructorBuilder.cs
- StorageBasedPackageProperties.cs
- GridViewAutomationPeer.cs
- AQNBuilder.cs
- TextTabProperties.cs
- CardSpaceException.cs
- UseLicense.cs
- EditorZoneDesigner.cs
- GridViewCellAutomationPeer.cs
- StronglyTypedResourceBuilder.cs
- OperationCanceledException.cs
- MethodBody.cs
- QilIterator.cs
- WebReference.cs
- EventLogPermissionEntry.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- DataGridColumn.cs
- TraceFilter.cs
- SourceFileBuildProvider.cs
- CapabilitiesRule.cs
- XmlElementCollection.cs
- DataBindingList.cs
- SqlConnectionPoolGroupProviderInfo.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- PenThread.cs
- TextPointer.cs
- Base64Stream.cs
- Label.cs
- SQLInt16Storage.cs
- HijriCalendar.cs
- XslTransform.cs
- ProtocolsSection.cs
- WebEventTraceProvider.cs
- CodeChecksumPragma.cs
- DecimalKeyFrameCollection.cs
- MatrixUtil.cs
- SystemParameters.cs
- Compiler.cs
- MeshGeometry3D.cs
- InputProviderSite.cs
- LinkedResourceCollection.cs
- ContractHandle.cs
- HtmlTableRow.cs
- PreloadedPackages.cs
- MemoryFailPoint.cs
- clipboard.cs
- Group.cs
- HwndMouseInputProvider.cs
- ModelUIElement3D.cs
- PbrsForward.cs
- RectAnimationClockResource.cs
- EventWaitHandle.cs
- WebPartTransformerAttribute.cs
- SharedPerformanceCounter.cs
- StringExpressionSet.cs
- FindSimilarActivitiesVerb.cs
- DbResourceAllocator.cs
- JsonUriDataContract.cs
- OpCellTreeNode.cs
- CompilationUtil.cs
- DesignerForm.cs
- DataGridViewUtilities.cs
- DependencyPropertyDescriptor.cs
- XmlEventCache.cs
- ReflectionUtil.cs
- BulletChrome.cs
- DbParameterHelper.cs
- Fonts.cs
- PolicyException.cs
- Collection.cs
- DSGeneratorProblem.cs
- AssemblyCacheEntry.cs
- ErrorItem.cs
- PageWrapper.cs
- DispatcherExceptionEventArgs.cs
- CodeTypeReferenceSerializer.cs
- CustomCredentialPolicy.cs
- RC2CryptoServiceProvider.cs
- ResourceBinder.cs