Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- XmlHierarchyData.cs
- DesignerAttributeInfo.cs
- KnownTypesProvider.cs
- DataServiceProcessingPipelineEventArgs.cs
- Collection.cs
- DynamicActionMessageFilter.cs
- PermissionListSet.cs
- MultiViewDesigner.cs
- CompilerState.cs
- WasAdminWrapper.cs
- AbstractSvcMapFileLoader.cs
- LocalBuilder.cs
- BitmapEffectDrawingContextState.cs
- CodeAccessPermission.cs
- LinkedList.cs
- Configuration.cs
- AssemblyInfo.cs
- Invariant.cs
- BooleanConverter.cs
- ContentOperations.cs
- WindowsImpersonationContext.cs
- TextTreeInsertUndoUnit.cs
- EventLogException.cs
- PathData.cs
- XmlSchemaComplexContent.cs
- WizardSideBarListControlItemEventArgs.cs
- StylusPointCollection.cs
- WaitHandleCannotBeOpenedException.cs
- ToolStripContainer.cs
- ListViewDesigner.cs
- FunctionQuery.cs
- TextAutomationPeer.cs
- IsolatedStorageFilePermission.cs
- UpdatePanel.cs
- XmlBoundElement.cs
- ZipIOBlockManager.cs
- SubclassTypeValidator.cs
- StrokeFIndices.cs
- InternalSafeNativeMethods.cs
- FilteredReadOnlyMetadataCollection.cs
- webproxy.cs
- HeaderedItemsControl.cs
- PointF.cs
- XmlCharType.cs
- CompareInfo.cs
- InputScopeManager.cs
- PersonalizationAdministration.cs
- PartialArray.cs
- SessionPageStatePersister.cs
- ValidateNames.cs
- CultureSpecificStringDictionary.cs
- Serializer.cs
- InstancePersistenceEvent.cs
- TemplateBindingExtension.cs
- RenderData.cs
- Vector3dCollection.cs
- Range.cs
- HierarchicalDataTemplate.cs
- DataGridViewCellStyleChangedEventArgs.cs
- DesignerAttribute.cs
- PrivilegeNotHeldException.cs
- DataRelationCollection.cs
- XPathDocument.cs
- HostedNamedPipeTransportManager.cs
- ConditionCollection.cs
- ThicknessAnimationUsingKeyFrames.cs
- TagMapCollection.cs
- MultipartIdentifier.cs
- Panel.cs
- _FtpControlStream.cs
- TransformGroup.cs
- ColumnBinding.cs
- Transactions.cs
- WebPartConnectionsConnectVerb.cs
- EnumBuilder.cs
- RijndaelManaged.cs
- SqlConnectionManager.cs
- CodeGroup.cs
- ScriptingRoleServiceSection.cs
- BitmapEffectGroup.cs
- OrderedDictionaryStateHelper.cs
- RunInstallerAttribute.cs
- DataContractSerializerMessageContractImporter.cs
- ConsumerConnectionPointCollection.cs
- ChangeTracker.cs
- FrameDimension.cs
- HttpDebugHandler.cs
- PlaceHolder.cs
- XsltCompileContext.cs
- SelectionItemPattern.cs
- mda.cs
- AssociationTypeEmitter.cs
- Pool.cs
- RemoteDebugger.cs
- SupportingTokenSecurityTokenResolver.cs
- CqlWriter.cs
- Int32.cs
- Duration.cs
- ToolStrip.cs
- XsltException.cs