Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- ServiceModelConfigurationElementCollection.cs
- StyleHelper.cs
- EncryptedPackageFilter.cs
- LexicalChunk.cs
- DrawItemEvent.cs
- WindowsRichEditRange.cs
- XmlDictionaryReaderQuotas.cs
- AlternateViewCollection.cs
- DependencyPropertyConverter.cs
- TypedRowHandler.cs
- Pair.cs
- BCLDebug.cs
- AutomationPropertyInfo.cs
- SqlLiftIndependentRowExpressions.cs
- DataGridColumnCollection.cs
- MSG.cs
- PersonalizablePropertyEntry.cs
- ThicknessAnimation.cs
- CacheEntry.cs
- TextPattern.cs
- StateManagedCollection.cs
- MemoryMappedViewAccessor.cs
- SoapReflectionImporter.cs
- EventBindingService.cs
- MonikerBuilder.cs
- CaretElement.cs
- HttpCapabilitiesSectionHandler.cs
- Mapping.cs
- PageThemeParser.cs
- ErrorWebPart.cs
- XmlWrappingReader.cs
- SchemaElementLookUpTable.cs
- HorizontalAlignConverter.cs
- SecurityTokenResolver.cs
- SchemaDeclBase.cs
- sqlmetadatafactory.cs
- SingleConverter.cs
- SQLString.cs
- ReaderWriterLockSlim.cs
- Bidi.cs
- AttributeUsageAttribute.cs
- BoundPropertyEntry.cs
- LoginViewDesigner.cs
- SourceFilter.cs
- SafeRightsManagementSessionHandle.cs
- IdentityValidationException.cs
- System.Data_BID.cs
- ProcessHostConfigUtils.cs
- Page.cs
- GACIdentityPermission.cs
- Compiler.cs
- TableCellsCollectionEditor.cs
- Point3DAnimationUsingKeyFrames.cs
- CompModSwitches.cs
- Helpers.cs
- Object.cs
- TemplateNodeContextMenu.cs
- CallbackValidatorAttribute.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- DataSourceDescriptorCollection.cs
- UnsignedPublishLicense.cs
- ListMarkerSourceInfo.cs
- DbCommandDefinition.cs
- EntityKeyElement.cs
- BufferBuilder.cs
- GroupDescription.cs
- ProxyAttribute.cs
- SkipStoryboardToFill.cs
- HelpPage.cs
- DbConnectionPoolGroupProviderInfo.cs
- SQLMoney.cs
- HScrollBar.cs
- PolyLineSegment.cs
- followingsibling.cs
- ListView.cs
- ModelFunction.cs
- StringReader.cs
- SpecialNameAttribute.cs
- LinearGradientBrush.cs
- SharedMemory.cs
- TreeBuilderXamlTranslator.cs
- ReadWriteObjectLock.cs
- GlyphRunDrawing.cs
- ObjectHandle.cs
- EarlyBoundInfo.cs
- ObjectDataProvider.cs
- ToolStripPanel.cs
- FormsAuthenticationUser.cs
- ToolboxComponentsCreatingEventArgs.cs
- Shape.cs
- ValidationErrorCollection.cs
- RouteParametersHelper.cs
- SqlCommandSet.cs
- RowSpanVector.cs
- MetafileHeader.cs
- WebServiceTypeData.cs
- Events.cs
- Scene3D.cs
- TakeQueryOptionExpression.cs
- DataContext.cs