Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CompMod / Microsoft / Win32 / SafeHandles / SafeFileMappingHandle.cs / 1 / SafeFileMappingHandle.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*============================================================
**
** Class: SafeFileMappingHandle
**
** Author: David Gutierrez ([....])
**
** A wrapper for handle to file mappings, returned by
** CreateFileMapping and OpenFileMapping. Used for shared
** memory.
**
** Date: July 8, 2002
**
===========================================================*/
using System;
using System.Security;
using System.Security.Permissions;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using Microsoft.Win32;
using Microsoft.Win32.SafeHandles;
using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
[HostProtectionAttribute(MayLeakOnAbort = true)]
[SuppressUnmanagedCodeSecurityAttribute]
internal sealed class SafeFileMappingHandle : SafeHandleZeroOrMinusOneIsInvalid
{
// Note that CreateFileMapping returns 0 on failure.
// Note that you can pass in -1 for the hFile parameter.
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)]
internal SafeFileMappingHandle() : base(true) {}
[DllImport(ExternDll.Kernel32, ExactSpelling=true, SetLastError=true)]
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
private static extern bool CloseHandle(IntPtr handle);
override protected bool ReleaseHandle()
{
return CloseHandle(handle);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*============================================================
**
** Class: SafeFileMappingHandle
**
** Author: David Gutierrez ([....])
**
** A wrapper for handle to file mappings, returned by
** CreateFileMapping and OpenFileMapping. Used for shared
** memory.
**
** Date: July 8, 2002
**
===========================================================*/
using System;
using System.Security;
using System.Security.Permissions;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using Microsoft.Win32;
using Microsoft.Win32.SafeHandles;
using System.Runtime.ConstrainedExecution;
namespace Microsoft.Win32.SafeHandles {
[HostProtectionAttribute(MayLeakOnAbort = true)]
[SuppressUnmanagedCodeSecurityAttribute]
internal sealed class SafeFileMappingHandle : SafeHandleZeroOrMinusOneIsInvalid
{
// Note that CreateFileMapping returns 0 on failure.
// Note that you can pass in -1 for the hFile parameter.
[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)]
internal SafeFileMappingHandle() : base(true) {}
[DllImport(ExternDll.Kernel32, ExactSpelling=true, SetLastError=true)]
[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
private static extern bool CloseHandle(IntPtr handle);
override protected bool ReleaseHandle()
{
return 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
- QuaternionKeyFrameCollection.cs
- Visual3D.cs
- ZoneLinkButton.cs
- DecimalStorage.cs
- ColumnHeader.cs
- IsolationInterop.cs
- MemberListBinding.cs
- SessionEndingEventArgs.cs
- MonthChangedEventArgs.cs
- EdmToObjectNamespaceMap.cs
- Bits.cs
- PlatformCulture.cs
- ConfigurationSectionGroupCollection.cs
- ResourceContainerWrapper.cs
- ArraySortHelper.cs
- FocusChangedEventArgs.cs
- InvalidateEvent.cs
- ActivityDesignerAccessibleObject.cs
- LinqDataSourceUpdateEventArgs.cs
- DataBindingCollection.cs
- VariantWrapper.cs
- PixelShader.cs
- _LocalDataStoreMgr.cs
- OleDbDataReader.cs
- SiteMap.cs
- XmlSchemaCompilationSettings.cs
- HttpCacheVary.cs
- ClassicBorderDecorator.cs
- SqlReferenceCollection.cs
- LinkedDataMemberFieldEditor.cs
- FactoryId.cs
- XmlDesigner.cs
- Int64KeyFrameCollection.cs
- CodeMethodMap.cs
- MyContact.cs
- ScriptResourceAttribute.cs
- OracleBFile.cs
- Volatile.cs
- StorageMappingItemLoader.cs
- WsrmTraceRecord.cs
- EventListenerClientSide.cs
- CombinedGeometry.cs
- FunctionQuery.cs
- X509RawDataKeyIdentifierClause.cs
- UserControlCodeDomTreeGenerator.cs
- BlurBitmapEffect.cs
- CodeArrayIndexerExpression.cs
- CapabilitiesSection.cs
- TypeGeneratedEventArgs.cs
- DefaultObjectMappingItemCollection.cs
- MailHeaderInfo.cs
- PerfCounters.cs
- IriParsingElement.cs
- DoubleMinMaxAggregationOperator.cs
- InvokePatternIdentifiers.cs
- Utils.cs
- ServiceNameCollection.cs
- FormViewModeEventArgs.cs
- PointF.cs
- SmtpSection.cs
- SchemaElementDecl.cs
- CellTreeNode.cs
- WebConfigurationManager.cs
- CaretElement.cs
- XmlSchemaDatatype.cs
- RectConverter.cs
- FontStretch.cs
- AmbiguousMatchException.cs
- SetIterators.cs
- ImageDrawing.cs
- PermissionToken.cs
- LinearGradientBrush.cs
- StylusButtonEventArgs.cs
- PageMediaSize.cs
- ControlCachePolicy.cs
- ComplexTypeEmitter.cs
- ModelItemImpl.cs
- RijndaelManaged.cs
- SHA256Managed.cs
- SecureStringHasher.cs
- ListBindingHelper.cs
- ConfigurationValidatorBase.cs
- FileLoadException.cs
- EditableLabelControl.cs
- Substitution.cs
- DbMetaDataFactory.cs
- FixedSOMSemanticBox.cs
- DataObjectMethodAttribute.cs
- SizeChangedInfo.cs
- safemediahandle.cs
- SByteConverter.cs
- UdpTransportSettingsElement.cs
- HotSpotCollectionEditor.cs
- HttpRequestCacheValidator.cs
- BorderSidesEditor.cs
- InternalConfigSettingsFactory.cs
- WindowAutomationPeer.cs
- Pens.cs
- LinearKeyFrames.cs
- DataShape.cs