Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // 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; } } } // 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
- SelectionHighlightInfo.cs
- Timer.cs
- XPathNodePointer.cs
- TextSegment.cs
- ScriptDescriptor.cs
- CodeDomDecompiler.cs
- StringAnimationBase.cs
- TextTreeInsertElementUndoUnit.cs
- PerformanceCounterPermissionEntryCollection.cs
- CounterSampleCalculator.cs
- XmlStringTable.cs
- MemberAssignment.cs
- XamlInt32CollectionSerializer.cs
- FieldTemplateFactory.cs
- AttachedAnnotationChangedEventArgs.cs
- DataGridViewCellMouseEventArgs.cs
- BatchWriter.cs
- WindowsStatic.cs
- ScrollContentPresenter.cs
- ContextMenu.cs
- TTSEngineProxy.cs
- RoleManagerEventArgs.cs
- Stack.cs
- NetMsmqSecurityMode.cs
- JapaneseLunisolarCalendar.cs
- FormViewPageEventArgs.cs
- ExtensionWindow.cs
- SequentialUshortCollection.cs
- JoinGraph.cs
- AsyncInvokeContext.cs
- InheritedPropertyChangedEventArgs.cs
- StorageInfo.cs
- DictionaryContent.cs
- FileSystemEnumerable.cs
- ElapsedEventArgs.cs
- IISUnsafeMethods.cs
- IndexedString.cs
- ReadOnlyKeyedCollection.cs
- UnsafeNativeMethodsCLR.cs
- HtmlHead.cs
- SqlError.cs
- OletxEnlistment.cs
- SqlProfileProvider.cs
- GeometryModel3D.cs
- Byte.cs
- ImportCatalogPart.cs
- MetafileHeader.cs
- FocusManager.cs
- MarkupExtensionParser.cs
- TabletDeviceInfo.cs
- Font.cs
- EnumType.cs
- IPEndPoint.cs
- KeyPressEvent.cs
- StrongName.cs
- ProfileService.cs
- WriteableBitmap.cs
- Publisher.cs
- XPathNodeHelper.cs
- RevocationPoint.cs
- SqlCacheDependencySection.cs
- CssStyleCollection.cs
- SessionStateUtil.cs
- TypeUsageBuilder.cs
- ICollection.cs
- DocumentSequence.cs
- TrustManager.cs
- DataControlExtensions.cs
- Vector3DAnimation.cs
- GenericTransactionFlowAttribute.cs
- TransformProviderWrapper.cs
- DesignerOptions.cs
- KeyEvent.cs
- Point4DValueSerializer.cs
- OracleNumber.cs
- PenLineCapValidation.cs
- SpellerHighlightLayer.cs
- PropertyIDSet.cs
- CachedTypeface.cs
- FixedDSBuilder.cs
- glyphs.cs
- FieldToken.cs
- RTLAwareMessageBox.cs
- SchemaSetCompiler.cs
- EnumMember.cs
- HMACRIPEMD160.cs
- WindowShowOrOpenTracker.cs
- AppDomainUnloadedException.cs
- VideoDrawing.cs
- SQLGuidStorage.cs
- TabControlAutomationPeer.cs
- BasicExpressionVisitor.cs
- MSHTMLHost.cs
- XmlSchemaAnyAttribute.cs
- X509RawDataKeyIdentifierClause.cs
- XmlSchemaObject.cs
- XmlTextReader.cs
- DispatcherEventArgs.cs
- LinkArea.cs
- AddressAccessDeniedException.cs