Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // 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); } } } // 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
- ReflectionTypeLoadException.cs
- EventDescriptorCollection.cs
- LocationChangedEventArgs.cs
- ElasticEase.cs
- AdRotatorDesigner.cs
- ContextMenuService.cs
- WebBrowserProgressChangedEventHandler.cs
- BlockUIContainer.cs
- MultiPropertyDescriptorGridEntry.cs
- BasicHttpSecurityElement.cs
- DynamicRenderer.cs
- ObjectHandle.cs
- WindowsEditBox.cs
- WorkflowRuntimeSection.cs
- Literal.cs
- DBDataPermission.cs
- HtmlElementCollection.cs
- GeometryModel3D.cs
- DoubleLinkListEnumerator.cs
- ServiceDescriptionData.cs
- CookielessHelper.cs
- CellTreeSimplifier.cs
- OrderByExpression.cs
- EditBehavior.cs
- TextTreeObjectNode.cs
- _NetRes.cs
- ButtonBaseAdapter.cs
- XPathNodeHelper.cs
- HostUtils.cs
- DataComponentGenerator.cs
- StrokeIntersection.cs
- FileSecurity.cs
- WebPartPersonalization.cs
- ResourceDefaultValueAttribute.cs
- MetadataSerializer.cs
- OutputCache.cs
- Profiler.cs
- _SingleItemRequestCache.cs
- StateManagedCollection.cs
- IisTraceWebEventProvider.cs
- ConnectionManagementSection.cs
- UriSection.cs
- MachineKeySection.cs
- DefaultAsyncDataDispatcher.cs
- PerformanceCounterNameAttribute.cs
- KeySpline.cs
- WebPartPersonalization.cs
- FileLogRecord.cs
- HtmlListAdapter.cs
- AssemblyFilter.cs
- _HeaderInfoTable.cs
- RegistrationServices.cs
- WebEvents.cs
- Rotation3DKeyFrameCollection.cs
- TextCompositionManager.cs
- ListControlDesigner.cs
- PingReply.cs
- DragDeltaEventArgs.cs
- TreeBuilderBamlTranslator.cs
- MenuEventArgs.cs
- IOThreadTimer.cs
- PageEventArgs.cs
- TypeValidationEventArgs.cs
- cookieexception.cs
- TextParentUndoUnit.cs
- InfiniteTimeSpanConverter.cs
- PrintDialog.cs
- FormsAuthenticationEventArgs.cs
- CounterSampleCalculator.cs
- PointHitTestResult.cs
- RectangleF.cs
- TextFormatter.cs
- NameTable.cs
- ObjectTokenCategory.cs
- SelectedPathEditor.cs
- StylusCaptureWithinProperty.cs
- BitmapFrameEncode.cs
- RadialGradientBrush.cs
- CdpEqualityComparer.cs
- SafeNativeMethods.cs
- LoginView.cs
- XamlSerializer.cs
- SizeConverter.cs
- PageBuildProvider.cs
- ImageField.cs
- DataView.cs
- PEFileEvidenceFactory.cs
- Canvas.cs
- Walker.cs
- basevalidator.cs
- CommandLineParser.cs
- FormatPage.cs
- PathSegmentCollection.cs
- DecoderExceptionFallback.cs
- NonBatchDirectoryCompiler.cs
- KeyPullup.cs
- DeferredSelectedIndexReference.cs
- PreloadedPackages.cs
- EventLogPermissionAttribute.cs
- cookiecollection.cs