Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / SafeNativeHandle.cs / 1 / SafeNativeHandle.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- // // Presharp uses the c# pragma mechanism to supress its warnings. // These are not recognised by the base compiler so we need to explictly // disable the following warnings. See http://winweb/cse/Tools/PREsharp/userguide/default.asp // for details. // #pragma warning disable 1634, 1691 // unknown message, unknown pragma namespace Microsoft.InfoCards { using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; using Microsoft.Win32.SafeHandles; // // Summary: // This is a wrapper for Native handles that ensures that they get closed and that the handle // held by this object isn't recycled. // internal sealed class SafeNativeHandle : SafeHandleZeroOrMinusOneIsInvalid { // Called by P/Invoke marshaler private SafeNativeHandle() : base( true ) { } // // Summary: // Creates a new SafeNativeHandle. // // Parameters: // existingHandle - A pointer to an existing native handle. // ownsHandle - Indicates whether this object owns the handle and should clean it up. // public SafeNativeHandle( IntPtr existingHandle, bool ownsHandle ) : base( ownsHandle ) { SetHandle( existingHandle ); } override protected bool ReleaseHandle() { // // Presharp: we want to return even in the case of failure. Useless to examine return error. // #pragma warning suppress 56523 return NativeMethods.SafeHandleOnlyMethods.CloseHandle( handle ); } } } // 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
- SqlRowUpdatedEvent.cs
- TemplateBamlTreeBuilder.cs
- DoubleAnimationClockResource.cs
- AlternateViewCollection.cs
- TypeInformation.cs
- XmlEnumAttribute.cs
- ToolboxBitmapAttribute.cs
- EntitySetDataBindingList.cs
- Keyboard.cs
- CodeMemberField.cs
- XmlElementCollection.cs
- RootProjectionNode.cs
- DataGridViewDesigner.cs
- WebPartManager.cs
- WebBrowserEvent.cs
- ToolStripDesignerUtils.cs
- XmlAttribute.cs
- ArgumentException.cs
- DesignerExtenders.cs
- UriScheme.cs
- Setter.cs
- ImportContext.cs
- ImageSourceTypeConverter.cs
- RectValueSerializer.cs
- Wizard.cs
- IdleTimeoutMonitor.cs
- MessageBuffer.cs
- DbDataSourceEnumerator.cs
- ScriptHandlerFactory.cs
- DataService.cs
- ManagedIStream.cs
- COAUTHIDENTITY.cs
- DataListItem.cs
- DeploymentSection.cs
- ValidationHelpers.cs
- CompilerParameters.cs
- SemanticAnalyzer.cs
- KeyFrames.cs
- Graph.cs
- WindowsToolbarItemAsMenuItem.cs
- DataGridViewIntLinkedList.cs
- CachedBitmap.cs
- ProcessThread.cs
- BooleanSwitch.cs
- TypeViewSchema.cs
- ObjectQueryState.cs
- IntSecurity.cs
- QuaternionRotation3D.cs
- DesignerAutoFormatStyle.cs
- IDReferencePropertyAttribute.cs
- WindowsButton.cs
- XslTransformFileEditor.cs
- BooleanAnimationUsingKeyFrames.cs
- DurationConverter.cs
- SourceFilter.cs
- DesignConnectionCollection.cs
- HighlightComponent.cs
- SafeNativeMethodsCLR.cs
- RegexCaptureCollection.cs
- OracleTransaction.cs
- X509Utils.cs
- EventMappingSettingsCollection.cs
- ConfigurationManagerInternalFactory.cs
- NullableDecimalSumAggregationOperator.cs
- SqlMethods.cs
- ImageBrush.cs
- CompilerResults.cs
- TrackBar.cs
- ConfigurationValues.cs
- KeyboardDevice.cs
- CollectionViewGroupRoot.cs
- SafeLibraryHandle.cs
- TextBreakpoint.cs
- ToolboxCategory.cs
- PartEditor.cs
- IImplicitResourceProvider.cs
- CheckableControlBaseAdapter.cs
- DeferredTextReference.cs
- OutputCacheProfileCollection.cs
- Frame.cs
- ObjectSet.cs
- GeneralTransform.cs
- PtsContext.cs
- SystemColorTracker.cs
- DocumentSchemaValidator.cs
- ColorMap.cs
- Pen.cs
- TextEncodedRawTextWriter.cs
- SelectorAutomationPeer.cs
- StorageScalarPropertyMapping.cs
- WCFModelStrings.Designer.cs
- LinearKeyFrames.cs
- TCEAdapterGenerator.cs
- StyleHelper.cs
- MessageAction.cs
- NamespaceCollection.cs
- RoleManagerEventArgs.cs
- TextProviderWrapper.cs
- TableLayoutCellPaintEventArgs.cs
- SudsWriter.cs