Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / NetworkInformation / SafeCancelMibChangeNotify.cs / 1305376 / SafeCancelMibChangeNotify.cs
using System; using System.Security; using Microsoft.Win32.SafeHandles; namespace System.Net.NetworkInformation { // This class guarantees that any in-progress notifications will be canceled before the AppDomain gets unloaded. // CancelMibChangeNotify2 guarantees that after it returns, the callback will NEVER be called. It may block // for a small amount of time if the callback is currently in progress, which is fine (and, intentional). [SuppressUnmanagedCodeSecurity] internal class SafeCancelMibChangeNotify : SafeHandleZeroOrMinusOneIsInvalid { public SafeCancelMibChangeNotify() : base(true) { } protected override bool ReleaseHandle() { uint err = UnsafeNetInfoNativeMethods.CancelMibChangeNotify2(base.handle); base.handle = IntPtr.Zero; return (err == UnsafeNclNativeMethods.ErrorCodes.ERROR_SUCCESS); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Security; using Microsoft.Win32.SafeHandles; namespace System.Net.NetworkInformation { // This class guarantees that any in-progress notifications will be canceled before the AppDomain gets unloaded. // CancelMibChangeNotify2 guarantees that after it returns, the callback will NEVER be called. It may block // for a small amount of time if the callback is currently in progress, which is fine (and, intentional). [SuppressUnmanagedCodeSecurity] internal class SafeCancelMibChangeNotify : SafeHandleZeroOrMinusOneIsInvalid { public SafeCancelMibChangeNotify() : base(true) { } protected override bool ReleaseHandle() { uint err = UnsafeNetInfoNativeMethods.CancelMibChangeNotify2(base.handle); base.handle = IntPtr.Zero; return (err == UnsafeNclNativeMethods.ErrorCodes.ERROR_SUCCESS); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EditorPartChrome.cs
- DataBoundControl.cs
- ObjectQueryExecutionPlan.cs
- XhtmlTextWriter.cs
- EraserBehavior.cs
- SystemWebExtensionsSectionGroup.cs
- AppSettingsReader.cs
- PointLightBase.cs
- IncomingWebResponseContext.cs
- Color.cs
- EventKeyword.cs
- CompensationToken.cs
- MergeFailedEvent.cs
- SqlDataSourceCommandParser.cs
- PackageDigitalSignature.cs
- ReplyChannelAcceptor.cs
- SpotLight.cs
- Trace.cs
- NonParentingControl.cs
- TrustManager.cs
- TextProviderWrapper.cs
- TextParaClient.cs
- TableLayout.cs
- DictationGrammar.cs
- GetCryptoTransformRequest.cs
- ButtonStandardAdapter.cs
- SimpleBitVector32.cs
- NullToBooleanConverter.cs
- StylusShape.cs
- TreeViewAutomationPeer.cs
- _NetRes.cs
- WebServiceEnumData.cs
- DataGridRowEventArgs.cs
- DataGridView.cs
- BitmapFrameDecode.cs
- CodeDelegateCreateExpression.cs
- DiscreteKeyFrames.cs
- HostDesigntimeLicenseContext.cs
- TypeTypeConverter.cs
- CommandExpr.cs
- ObjectDataSourceMethodEventArgs.cs
- WebPartEventArgs.cs
- SafeLibraryHandle.cs
- CacheHelper.cs
- OneToOneMappingSerializer.cs
- SkinBuilder.cs
- RequestCache.cs
- MultilineStringConverter.cs
- base64Transforms.cs
- XPathParser.cs
- ProcessModule.cs
- BCLDebug.cs
- remotingproxy.cs
- DoubleKeyFrameCollection.cs
- XmlSchemaImport.cs
- DbExpressionVisitor.cs
- MetadataCache.cs
- DocumentEventArgs.cs
- CompareValidator.cs
- MenuItem.cs
- DynamicExpression.cs
- InstanceStore.cs
- ProcessInputEventArgs.cs
- StorageFunctionMapping.cs
- SHA256.cs
- CdpEqualityComparer.cs
- TreeNode.cs
- HttpRequestWrapper.cs
- ProcessManager.cs
- PackageRelationshipCollection.cs
- StreamWithDictionary.cs
- CollectionsUtil.cs
- ControlOperationBehavior.cs
- Mouse.cs
- ListViewGroupItemCollection.cs
- WindowPatternIdentifiers.cs
- AccessControlList.cs
- LogExtentCollection.cs
- StateWorkerRequest.cs
- LocalClientSecuritySettings.cs
- ControlEvent.cs
- BackgroundFormatInfo.cs
- TextProviderWrapper.cs
- HyperlinkAutomationPeer.cs
- PreviewPageInfo.cs
- ComplusEndpointConfigContainer.cs
- PathSegment.cs
- TreeWalkHelper.cs
- XmlSerializerNamespaces.cs
- SqlDependencyListener.cs
- XmlSchemaSimpleContentRestriction.cs
- RuntimeWrappedException.cs
- X509Utils.cs
- MatrixConverter.cs
- AllMembershipCondition.cs
- AccessDataSourceWizardForm.cs
- Method.cs
- Bits.cs
- ProfileEventArgs.cs
- IdentityHolder.cs