Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / Microsoft / Win32 / SafeHandles / SafeViewOfFileHandle.cs / 1 / SafeViewOfFileHandle.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*============================================================
**
** Class: SafeViewOfFileHandle
**
**
** 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;
using Microsoft.Win32.SafeHandles;
namespace Microsoft.Win32.SafeHandles
{
internal sealed class SafeViewOfFileHandle : SafeHandleZeroOrMinusOneIsInvalid
{
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)]
internal SafeViewOfFileHandle() : base(true) {}
// 0 is an Invalid Handle
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)]
internal SafeViewOfFileHandle(IntPtr handle, bool ownsHandle) : base (ownsHandle) {
SetHandle(handle);
}
[ResourceExposure(ResourceScope.Machine)]
[ResourceConsumption(ResourceScope.Machine)]
override protected bool ReleaseHandle()
{
if (Win32Native.UnmapViewOfFile(handle))
{
handle = IntPtr.Zero;
return true;
}
return false;
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- VirtualizingPanel.cs
- TemplateField.cs
- XmlBinaryReader.cs
- ECDiffieHellmanCngPublicKey.cs
- Point3DKeyFrameCollection.cs
- CellLabel.cs
- SelectionEditor.cs
- DataRowExtensions.cs
- DataBinder.cs
- Properties.cs
- Line.cs
- ComponentChangingEvent.cs
- WorkflowInstanceExtensionManager.cs
- QueryPageSettingsEventArgs.cs
- PropertyStore.cs
- sqlinternaltransaction.cs
- HttpModuleActionCollection.cs
- Input.cs
- WorkflowInstance.cs
- SimpleWorkerRequest.cs
- StopStoryboard.cs
- xmlfixedPageInfo.cs
- Accessors.cs
- ComplexBindingPropertiesAttribute.cs
- PropertyFilter.cs
- ProjectedSlot.cs
- SqlDelegatedTransaction.cs
- GZipDecoder.cs
- FixedTextSelectionProcessor.cs
- AppearanceEditorPart.cs
- ToolboxItemSnapLineBehavior.cs
- ViewStateModeByIdAttribute.cs
- DbMetaDataCollectionNames.cs
- StylusTip.cs
- ZipIOExtraField.cs
- SafeLibraryHandle.cs
- ObjectView.cs
- _RequestCacheProtocol.cs
- MimeAnyImporter.cs
- KnownIds.cs
- Error.cs
- TextDecorationCollection.cs
- MimeMultiPart.cs
- InstancePersistenceException.cs
- WindowsStatic.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- Odbc32.cs
- DoubleLinkList.cs
- Int16Animation.cs
- SpStreamWrapper.cs
- MDIWindowDialog.cs
- XmlChoiceIdentifierAttribute.cs
- EncryptedPackage.cs
- StylusPlugInCollection.cs
- BitArray.cs
- EncodingNLS.cs
- SetIterators.cs
- WebColorConverter.cs
- Rule.cs
- ErasingStroke.cs
- StylusTip.cs
- OrderedDictionary.cs
- DataStreamFromComStream.cs
- XamlStream.cs
- AppDomainFactory.cs
- SiblingIterators.cs
- SourceChangedEventArgs.cs
- KeyEvent.cs
- XmlNullResolver.cs
- RepeatBehaviorConverter.cs
- ProtocolsSection.cs
- TextParaClient.cs
- Filter.cs
- panel.cs
- SerialPort.cs
- UnaryNode.cs
- BinaryObjectInfo.cs
- TypedReference.cs
- StylusButtonEventArgs.cs
- DataIdProcessor.cs
- Triplet.cs
- SQLInt32.cs
- AnnotationResourceChangedEventArgs.cs
- VisualStyleTypesAndProperties.cs
- WsdlContractConversionContext.cs
- XmlSchemaIdentityConstraint.cs
- GridEntryCollection.cs
- RenderData.cs
- RuntimeResourceSet.cs
- Span.cs
- GridViewRowPresenterBase.cs
- BooleanProjectedSlot.cs
- XmlReflectionMember.cs
- InstanceKey.cs
- RandomDelaySendsAsyncResult.cs
- RegistrationServices.cs
- PrePostDescendentsWalker.cs
- DesignerAutoFormatCollection.cs
- AuthenticatedStream.cs
- WebPartsPersonalization.cs