Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / Microsoft / Win32 / SafeHandles / SafeLocalMemHandle.cs / 1 / SafeLocalMemHandle.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeLocalMemHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for handle to local 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 SafeLocalMemHandle : SafeHandleZeroOrMinusOneIsInvalid { internal SafeLocalMemHandle() : base(true) {} [SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)] internal SafeLocalMemHandle(IntPtr existingHandle, bool ownsHandle) : base(ownsHandle) { SetHandle(existingHandle); } [DllImport(ExternDll.Advapi32, CharSet=System.Runtime.InteropServices.CharSet.Auto, SetLastError=true, BestFitMapping=false)] internal static extern unsafe bool ConvertStringSecurityDescriptorToSecurityDescriptor(string StringSecurityDescriptor, int StringSDRevision, out SafeLocalMemHandle pSecurityDescriptor, IntPtr SecurityDescriptorSize); [DllImport(ExternDll.Kernel32)] [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] private static extern IntPtr LocalFree(IntPtr hMem); override protected bool ReleaseHandle() { return LocalFree(handle) == IntPtr.Zero; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CompiledIdentityConstraint.cs
- DataGridViewRowHeaderCell.cs
- SchemaNamespaceManager.cs
- JsonCollectionDataContract.cs
- CheckBoxPopupAdapter.cs
- GeneralTransformCollection.cs
- HostUtils.cs
- WebPartVerbsEventArgs.cs
- XPathLexer.cs
- safesecurityhelperavalon.cs
- MailWebEventProvider.cs
- LateBoundBitmapDecoder.cs
- PageContentAsyncResult.cs
- FlowLayoutSettings.cs
- EventLogger.cs
- SqlGatherProducedAliases.cs
- GlyphRun.cs
- CodeSnippetCompileUnit.cs
- InputLanguageEventArgs.cs
- CompilationRelaxations.cs
- WebReference.cs
- FrameSecurityDescriptor.cs
- BamlLocalizableResourceKey.cs
- TextSelectionProcessor.cs
- ByteBufferPool.cs
- SyntaxCheck.cs
- DescriptionAttribute.cs
- Int32CollectionValueSerializer.cs
- TimelineCollection.cs
- Clipboard.cs
- PingOptions.cs
- DocumentCollection.cs
- SqlInternalConnectionSmi.cs
- FileFormatException.cs
- GlobalizationAssembly.cs
- AsyncOperationLifetimeManager.cs
- EventBookmark.cs
- InvalidContentTypeException.cs
- IOException.cs
- JobDuplex.cs
- DbDataRecord.cs
- Fx.cs
- ImageIndexConverter.cs
- HttpRuntimeSection.cs
- AmbiguousMatchException.cs
- SymmetricKeyWrap.cs
- ContentControl.cs
- CommandHelpers.cs
- HttpPostedFile.cs
- HttpModuleAction.cs
- DataGridViewTextBoxEditingControl.cs
- Win32SafeHandles.cs
- BufferModeSettings.cs
- FunctionDetailsReader.cs
- UntypedNullExpression.cs
- TabItemAutomationPeer.cs
- EditorZoneAutoFormat.cs
- PageCanvasSize.cs
- XmlLinkedNode.cs
- BinaryUtilClasses.cs
- WebEvents.cs
- VariableElement.cs
- AspNetSynchronizationContext.cs
- MsdtcWrapper.cs
- BypassElement.cs
- ListBoxChrome.cs
- Registry.cs
- FileSecurity.cs
- MediaElementAutomationPeer.cs
- Membership.cs
- PerfService.cs
- CoreSwitches.cs
- StatusBarItem.cs
- NodeLabelEditEvent.cs
- TableHeaderCell.cs
- StackSpiller.Bindings.cs
- SQLDateTime.cs
- Header.cs
- ItemsControlAutomationPeer.cs
- AccessText.cs
- TextProperties.cs
- RenderData.cs
- PtsContext.cs
- XPathDocument.cs
- TextElementEditingBehaviorAttribute.cs
- MetabaseServerConfig.cs
- QilGeneratorEnv.cs
- arabicshape.cs
- WebPartAddingEventArgs.cs
- TableRow.cs
- AlphabeticalEnumConverter.cs
- PolicyStatement.cs
- SystemWebExtensionsSectionGroup.cs
- FlowDocumentFormatter.cs
- StrokeNodeOperations2.cs
- BamlRecordWriter.cs
- ListDictionaryInternal.cs
- latinshape.cs
- ReturnType.cs
- CustomCategoryAttribute.cs