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
- DataGridCaption.cs
- OdbcCommand.cs
- DiscoveryServerProtocol.cs
- ShortcutKeysEditor.cs
- ThreadAttributes.cs
- LinearGradientBrush.cs
- StateDesigner.Helpers.cs
- CatalogPartChrome.cs
- TemplateBuilder.cs
- PieceDirectory.cs
- TableProviderWrapper.cs
- VarInfo.cs
- SineEase.cs
- DocumentApplicationJournalEntry.cs
- WindowsTreeView.cs
- BrowserPolicyValidator.cs
- AttributeInfo.cs
- NetworkAddressChange.cs
- HashAlgorithm.cs
- MdiWindowListStrip.cs
- BasicBrowserDialog.cs
- CodeAssignStatement.cs
- TrustManagerMoreInformation.cs
- RSAPKCS1SignatureFormatter.cs
- Directory.cs
- TaskFactory.cs
- IndexedString.cs
- SignatureResourcePool.cs
- ConcurrentStack.cs
- RSAPKCS1SignatureFormatter.cs
- NavigatorOutput.cs
- GuidConverter.cs
- RangeContentEnumerator.cs
- FunctionCommandText.cs
- _TransmitFileOverlappedAsyncResult.cs
- SafeEventHandle.cs
- XmlSignificantWhitespace.cs
- HandlerFactoryCache.cs
- WSSecurityPolicy.cs
- CompressionTracing.cs
- SQLMoney.cs
- DataRowChangeEvent.cs
- ActivityMetadata.cs
- SpanIndex.cs
- IfElseDesigner.xaml.cs
- PingReply.cs
- ProbeMatchesMessage11.cs
- HyperlinkAutomationPeer.cs
- SymbolTable.cs
- odbcmetadatacollectionnames.cs
- StrokeNode.cs
- KeySplineConverter.cs
- StrongTypingException.cs
- LambdaCompiler.Statements.cs
- GridViewDeleteEventArgs.cs
- ClientSettings.cs
- SafeRightsManagementEnvironmentHandle.cs
- DbMetaDataCollectionNames.cs
- AnnotationDocumentPaginator.cs
- ScriptResourceAttribute.cs
- TextTreeInsertUndoUnit.cs
- PolicyUtility.cs
- TimeoutException.cs
- _emptywebproxy.cs
- FilterQuery.cs
- ObservableCollection.cs
- DomNameTable.cs
- FileSystemEventArgs.cs
- ToolboxItemFilterAttribute.cs
- MultiSelectRootGridEntry.cs
- SecuritySessionSecurityTokenAuthenticator.cs
- ExtendedTransformFactory.cs
- SHA256.cs
- ZipArchive.cs
- ComponentDispatcher.cs
- CaseInsensitiveOrdinalStringComparer.cs
- MissingFieldException.cs
- DBCommand.cs
- TypeSemantics.cs
- ValidatingCollection.cs
- QueryServiceConfigHandle.cs
- WpfKnownTypeInvoker.cs
- DbMetaDataFactory.cs
- ColumnHeader.cs
- DispatcherSynchronizationContext.cs
- CustomAttributeFormatException.cs
- PerformanceCounterCategory.cs
- Link.cs
- PhysicalAddress.cs
- ObjectReaderCompiler.cs
- DisplayInformation.cs
- OdbcCommandBuilder.cs
- ZipIOBlockManager.cs
- RulePatternOps.cs
- XmlCustomFormatter.cs
- SpoolingTaskBase.cs
- MLangCodePageEncoding.cs
- HttpCacheParams.cs
- Italic.cs
- CfgArc.cs