Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / CompMod / Microsoft / Win32 / SafeHandles / SafeEventHandle.cs / 1 / SafeEventHandle.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeEventHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for a win32 event handles ** ** 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 SafeEventHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note that CreateEvent returns 0 on failure internal SafeEventHandle() : base(true) {} [DllImport(ExternDll.Kernel32, CharSet=System.Runtime.InteropServices.CharSet.Unicode)] internal static extern SafeEventHandle CreateEvent(HandleRef lpEventAttributes, bool bManualReset, bool bInitialState, string name); [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: SafeEventHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for a win32 event handles ** ** 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 SafeEventHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note that CreateEvent returns 0 on failure internal SafeEventHandle() : base(true) {} [DllImport(ExternDll.Kernel32, CharSet=System.Runtime.InteropServices.CharSet.Unicode)] internal static extern SafeEventHandle CreateEvent(HandleRef lpEventAttributes, bool bManualReset, bool bInitialState, string name); [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
- MinMaxParagraphWidth.cs
- DecoratedNameAttribute.cs
- RoleManagerSection.cs
- TextViewBase.cs
- IImplicitResourceProvider.cs
- CountdownEvent.cs
- ObjectStateEntryDbDataRecord.cs
- ZipIOLocalFileDataDescriptor.cs
- BrowserTree.cs
- FactoryId.cs
- OracleTransaction.cs
- AnnotationService.cs
- TableLayoutSettingsTypeConverter.cs
- ListViewItemSelectionChangedEvent.cs
- LogReservationCollection.cs
- MaxSessionCountExceededException.cs
- TagNameToTypeMapper.cs
- PanelStyle.cs
- TextTreeRootNode.cs
- InputManager.cs
- HtmlInputHidden.cs
- PageWrapper.cs
- ToolStripPanelSelectionGlyph.cs
- ExpressionQuoter.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs
- ElementUtil.cs
- FormsAuthenticationUser.cs
- LogPolicy.cs
- TemplatePagerField.cs
- EntityClientCacheEntry.cs
- JumpTask.cs
- AnnotationAdorner.cs
- GuidelineSet.cs
- DatagridviewDisplayedBandsData.cs
- UpdateException.cs
- LocatorBase.cs
- PortCache.cs
- CaseExpr.cs
- AgileSafeNativeMemoryHandle.cs
- CodeSnippetTypeMember.cs
- DataContract.cs
- Point.cs
- PathGradientBrush.cs
- ErrorRuntimeConfig.cs
- RTTrackingProfile.cs
- AliasedSlot.cs
- EntityDataSourceSelectingEventArgs.cs
- ReadContentAsBinaryHelper.cs
- SafeArrayRankMismatchException.cs
- InheritedPropertyDescriptor.cs
- XmlArrayItemAttribute.cs
- ListBoxAutomationPeer.cs
- SQLBytes.cs
- ConsoleTraceListener.cs
- MappingItemCollection.cs
- WebPartCloseVerb.cs
- TargetControlTypeCache.cs
- BitmapCodecInfoInternal.cs
- DiffuseMaterial.cs
- WorkflowInstanceQuery.cs
- Button.cs
- SettingsProperty.cs
- MexHttpBindingElement.cs
- UrlMappingCollection.cs
- ApplicationException.cs
- InputScopeConverter.cs
- ConfigurationCollectionAttribute.cs
- WebConfigurationFileMap.cs
- Throw.cs
- SchemaImporterExtensionElementCollection.cs
- Label.cs
- ErrorFormatterPage.cs
- ImageCodecInfo.cs
- ISessionStateStore.cs
- ClientRuntimeConfig.cs
- LeaseManager.cs
- ManagedWndProcTracker.cs
- InputLanguage.cs
- __Error.cs
- NavigateEvent.cs
- StringHandle.cs
- RawUIStateInputReport.cs
- DataServiceQuery.cs
- BindingWorker.cs
- TextRangeProviderWrapper.cs
- TrustLevel.cs
- DataReaderContainer.cs
- XmlSchemaImporter.cs
- DeclarationUpdate.cs
- CustomAttributeFormatException.cs
- RemotingServices.cs
- DBSqlParserColumn.cs
- UTF8Encoding.cs
- StreamAsIStream.cs
- BindingValueChangedEventArgs.cs
- ExpressionBinding.cs
- ExtractedStateEntry.cs
- DelegatingConfigHost.cs
- CommentGlyph.cs
- SqlProviderServices.cs