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
- ProgressBarAutomationPeer.cs
- OptimisticConcurrencyException.cs
- PathGeometry.cs
- HandleCollector.cs
- KeyInfo.cs
- SQLDouble.cs
- GroupBoxRenderer.cs
- UiaCoreApi.cs
- ConditionalAttribute.cs
- AsyncInvokeOperation.cs
- LineInfo.cs
- MeasureItemEvent.cs
- DataServiceQueryException.cs
- BaseProcessor.cs
- ListViewTableRow.cs
- OdbcStatementHandle.cs
- FormViewPagerRow.cs
- DataGridViewAccessibleObject.cs
- Encoder.cs
- PageThemeCodeDomTreeGenerator.cs
- CacheOutputQuery.cs
- contentDescriptor.cs
- X509WindowsSecurityToken.cs
- PropagatorResult.cs
- ShapeTypeface.cs
- GACIdentityPermission.cs
- JavascriptCallbackMessageInspector.cs
- Constraint.cs
- MobileListItemCollection.cs
- _PooledStream.cs
- TextParagraphView.cs
- XmlSchemaSimpleTypeRestriction.cs
- TableLayoutRowStyleCollection.cs
- _DomainName.cs
- DesignerHelpers.cs
- PropertyValueChangedEvent.cs
- XMLSchema.cs
- CircleHotSpot.cs
- SqlDataSource.cs
- SqlCommandSet.cs
- DrawingGroup.cs
- RootBuilder.cs
- DoubleIndependentAnimationStorage.cs
- WindowsTooltip.cs
- ResourceContainer.cs
- XmlExceptionHelper.cs
- NamedPermissionSet.cs
- ProcessModelInfo.cs
- EntityFrameworkVersions.cs
- PickBranchDesigner.xaml.cs
- RecordsAffectedEventArgs.cs
- DocumentSequenceHighlightLayer.cs
- WebServiceErrorEvent.cs
- CompressionTransform.cs
- SqlUDTStorage.cs
- __ComObject.cs
- FactoryGenerator.cs
- TextParaClient.cs
- RegisteredArrayDeclaration.cs
- DelegateSerializationHolder.cs
- EdmComplexPropertyAttribute.cs
- SecurityKeyIdentifierClause.cs
- EventRoute.cs
- ElementProxy.cs
- StyleSheet.cs
- DataExchangeServiceBinder.cs
- WebPartConnectionsCloseVerb.cs
- SparseMemoryStream.cs
- DetailsViewCommandEventArgs.cs
- _ConnectionGroup.cs
- CookieProtection.cs
- HtmlGenericControl.cs
- EntityDataSourceDesigner.cs
- GradientStop.cs
- activationcontext.cs
- CodePageEncoding.cs
- StreamReader.cs
- FamilyMapCollection.cs
- InstanceCreationEditor.cs
- UnsafeNativeMethods.cs
- InternalBase.cs
- DictionaryEntry.cs
- ClientTarget.cs
- SafeRightsManagementHandle.cs
- ADConnectionHelper.cs
- DocumentGrid.cs
- FactoryGenerator.cs
- ProfileGroupSettings.cs
- UnsafeNativeMethods.cs
- MediaTimeline.cs
- ConnectionManagementElementCollection.cs
- TabControl.cs
- FileSystemWatcher.cs
- ComAwareEventInfo.cs
- ExceptionUtil.cs
- SchemaImporterExtensionElementCollection.cs
- JavaScriptSerializer.cs
- DataGridClipboardHelper.cs
- DSASignatureDeformatter.cs
- DateTimeFormat.cs