Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / Microsoft / Win32 / SafeHandles / SafeFileHandle.cs / 1 / SafeFileHandle.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*============================================================
**
** Class: SafeFileHandle
**
**
** A wrapper for file handles
**
**
===========================================================*/
using System;
using System.Security;
using System.Security.Permissions;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System.Runtime.ConstrainedExecution;
using System.Runtime.Versioning;
using Microsoft.Win32;
namespace Microsoft.Win32.SafeHandles {
[SecurityPermission(SecurityAction.LinkDemand,UnmanagedCode=true)]
public sealed class SafeFileHandle: SafeHandleZeroOrMinusOneIsInvalid {
private SafeFileHandle() : base(true)
{
}
public SafeFileHandle(IntPtr preexistingHandle, bool ownsHandle) : base(ownsHandle) {
SetHandle(preexistingHandle);
}
[ResourceExposure(ResourceScope.Machine)]
[ResourceConsumption(ResourceScope.Machine)]
override protected bool ReleaseHandle()
{
return Win32Native.CloseHandle(handle);
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WasEndpointConfigContainer.cs
- DtrList.cs
- While.cs
- ServiceModelDictionary.cs
- COAUTHINFO.cs
- HtmlValidatorAdapter.cs
- MenuItem.cs
- MergePropertyDescriptor.cs
- ObjectListGeneralPage.cs
- AbstractSvcMapFileLoader.cs
- ResolveResponse.cs
- TrackBar.cs
- BrushConverter.cs
- XmlTextReaderImpl.cs
- StrokeRenderer.cs
- RSAPKCS1KeyExchangeFormatter.cs
- FilterEventArgs.cs
- InvalidWMPVersionException.cs
- TemplateInstanceAttribute.cs
- VScrollProperties.cs
- ListBoxItem.cs
- DataMemberConverter.cs
- CalendarDataBindingHandler.cs
- EllipseGeometry.cs
- NamespaceDecl.cs
- UpdateEventArgs.cs
- XmlCodeExporter.cs
- SecurityUniqueId.cs
- XmlChildNodes.cs
- FixedSOMImage.cs
- HashCodeCombiner.cs
- PropertyGeneratedEventArgs.cs
- XmlDocumentSerializer.cs
- ConnectionProviderAttribute.cs
- Attributes.cs
- XamlSerializerUtil.cs
- EventItfInfo.cs
- XmlSchemaSimpleTypeRestriction.cs
- ProxyManager.cs
- ResXResourceSet.cs
- DbDataRecord.cs
- ReachNamespaceInfo.cs
- QuadraticBezierSegment.cs
- Configuration.cs
- UriTemplateQueryValue.cs
- MD5.cs
- FormsAuthenticationCredentials.cs
- ListViewSelectEventArgs.cs
- SiteMapNodeCollection.cs
- TypeToStringValueConverter.cs
- _BaseOverlappedAsyncResult.cs
- DriveInfo.cs
- ExpressionDumper.cs
- PointAnimationClockResource.cs
- ExpressionBuilderCollection.cs
- HtmlTextArea.cs
- PasswordPropertyTextAttribute.cs
- Mapping.cs
- SystemGatewayIPAddressInformation.cs
- ToolboxItem.cs
- Button.cs
- TextElementEnumerator.cs
- PromptStyle.cs
- LocatorPartList.cs
- DataGridViewIntLinkedList.cs
- UriScheme.cs
- DataControlButton.cs
- SymmetricKeyWrap.cs
- SafeReversePInvokeHandle.cs
- DiscardableAttribute.cs
- MatrixTransform.cs
- AnnouncementEventArgs.cs
- TemplateParser.cs
- FileChangesMonitor.cs
- VirtualPath.cs
- WebPartConnectionsCancelEventArgs.cs
- ChangeNode.cs
- WindowVisualStateTracker.cs
- Rotation3DAnimation.cs
- EntityDataSourceSelectedEventArgs.cs
- Timer.cs
- TextChangedEventArgs.cs
- DrawingGroup.cs
- PrivilegedConfigurationManager.cs
- AsyncCodeActivityContext.cs
- ConfigurationErrorsException.cs
- DataGridViewHeaderCell.cs
- ConfigPathUtility.cs
- RIPEMD160Managed.cs
- WebServiceErrorEvent.cs
- WebBrowserNavigatedEventHandler.cs
- EntitySetRetriever.cs
- externdll.cs
- RequestQueryParser.cs
- IdleTimeoutMonitor.cs
- WebPartUtil.cs
- HyperLinkStyle.cs
- MouseButton.cs
- SafeWaitHandle.cs
- SqlCaseSimplifier.cs