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
- TraceSection.cs
- SimpleType.cs
- SwitchExpression.cs
- FixedSOMLineRanges.cs
- KoreanLunisolarCalendar.cs
- RoleBoolean.cs
- QuaternionRotation3D.cs
- ObjectCloneHelper.cs
- ConfigurationPropertyCollection.cs
- ViewUtilities.cs
- ListViewTableRow.cs
- FileDialogPermission.cs
- BitmapEffectGroup.cs
- InplaceBitmapMetadataWriter.cs
- DodSequenceMerge.cs
- DBDataPermissionAttribute.cs
- LayoutEditorPart.cs
- RemoveStoryboard.cs
- LocalizationComments.cs
- SocketElement.cs
- XmlDataDocument.cs
- EventDescriptorCollection.cs
- SqlAggregateChecker.cs
- ListCommandEventArgs.cs
- ElementsClipboardData.cs
- AppDomainManager.cs
- AppDomainUnloadedException.cs
- ActivationServices.cs
- CopyAction.cs
- DbReferenceCollection.cs
- SynchronizedDispatch.cs
- BroadcastEventHelper.cs
- LogLogRecordHeader.cs
- InterleavedZipPartStream.cs
- AudioBase.cs
- EventManager.cs
- Menu.cs
- ApplicationGesture.cs
- Statements.cs
- x509store.cs
- FilePresentation.cs
- CacheChildrenQuery.cs
- DoWorkEventArgs.cs
- MimeTypeAttribute.cs
- PathSegment.cs
- HttpStaticObjectsCollectionBase.cs
- ACL.cs
- XPathNodeInfoAtom.cs
- SecUtil.cs
- TreeBuilderXamlTranslator.cs
- LockedActivityGlyph.cs
- AttributeExtensions.cs
- NotifyParentPropertyAttribute.cs
- PathParser.cs
- IdentityModelStringsVersion1.cs
- SyndicationItem.cs
- DynamicDiscoveryDocument.cs
- ImageIndexEditor.cs
- SaveLedgerEntryRequest.cs
- ClientSettingsSection.cs
- StringExpressionSet.cs
- UpdatePanelTriggerCollection.cs
- ResourceReferenceKeyNotFoundException.cs
- HttpInputStream.cs
- XmlWriter.cs
- EdmItemCollection.cs
- AppDomainAttributes.cs
- XmlDeclaration.cs
- Compiler.cs
- AxImporter.cs
- ConfigXmlText.cs
- MouseDevice.cs
- QueryableDataSourceHelper.cs
- ScrollViewerAutomationPeer.cs
- CompatibleIComparer.cs
- lengthconverter.cs
- FrameworkReadOnlyPropertyMetadata.cs
- ProvidePropertyAttribute.cs
- RegexRunner.cs
- ExpandableObjectConverter.cs
- StoragePropertyMapping.cs
- DataDocumentXPathNavigator.cs
- FormatterServicesNoSerializableCheck.cs
- HtmlFormWrapper.cs
- ViewUtilities.cs
- ToolBar.cs
- NetworkInterface.cs
- DefaultShape.cs
- CacheVirtualItemsEvent.cs
- ReadWriteObjectLock.cs
- ToolStripItemTextRenderEventArgs.cs
- SupportingTokenSecurityTokenResolver.cs
- TrackingMemoryStreamFactory.cs
- ObjectQueryProvider.cs
- QueueSurrogate.cs
- QilStrConcatenator.cs
- TextFormatter.cs
- RequestCacheManager.cs
- StreamAsIStream.cs
- FullTextState.cs