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
- DataGridViewCellStateChangedEventArgs.cs
- TransformCryptoHandle.cs
- SqlBulkCopy.cs
- DataBindingExpressionBuilder.cs
- PointConverter.cs
- ConfigXmlComment.cs
- InputScopeNameConverter.cs
- ErrorLog.cs
- CheckPair.cs
- SQLSingle.cs
- XmlSerializerOperationGenerator.cs
- Baml2006KeyRecord.cs
- CompilationLock.cs
- DelayLoadType.cs
- XamlReaderHelper.cs
- RegexStringValidator.cs
- SspiHelper.cs
- ComAdminWrapper.cs
- EventsTab.cs
- DesignerForm.cs
- LookupNode.cs
- DbConnectionStringCommon.cs
- PrintPreviewDialog.cs
- baseaxisquery.cs
- EventTask.cs
- TypeConverter.cs
- SystemColorTracker.cs
- ZipIOExtraFieldElement.cs
- HtmlEncodedRawTextWriter.cs
- SimpleRecyclingCache.cs
- SecurityException.cs
- ArrayElementGridEntry.cs
- UnmanagedMarshal.cs
- AuthenticateEventArgs.cs
- CodeDirectionExpression.cs
- KeyedCollection.cs
- InkPresenterAutomationPeer.cs
- Underline.cs
- CompressedStack.cs
- InstanceNotReadyException.cs
- MachineSettingsSection.cs
- FixedSchema.cs
- BeginSelectCardRequest.cs
- FontUnit.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- Tablet.cs
- Composition.cs
- FilterQueryOptionExpression.cs
- LinkUtilities.cs
- ObjectItemConventionAssemblyLoader.cs
- ParallelTimeline.cs
- XmlArrayAttribute.cs
- DataGridPageChangedEventArgs.cs
- TextServicesCompartmentEventSink.cs
- ConfigurationManagerHelper.cs
- HybridDictionary.cs
- Tool.cs
- streamingZipPartStream.cs
- InheritedPropertyDescriptor.cs
- GraphicsContainer.cs
- SelectionRangeConverter.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- MatrixAnimationUsingPath.cs
- NonVisualControlAttribute.cs
- FaultReason.cs
- FileSystemEventArgs.cs
- HandlerFactoryCache.cs
- HtmlTable.cs
- WindowShowOrOpenTracker.cs
- DataBoundLiteralControl.cs
- WebPartEditorCancelVerb.cs
- LambdaCompiler.Generated.cs
- FontStretches.cs
- ExtensionSimplifierMarkupObject.cs
- MediaElement.cs
- DbConvert.cs
- CodeNamespaceImportCollection.cs
- NonVisualControlAttribute.cs
- CollectionViewGroupInternal.cs
- InputScopeAttribute.cs
- LinkedResource.cs
- DisplayNameAttribute.cs
- EventToken.cs
- BoolLiteral.cs
- ProtocolViolationException.cs
- AgileSafeNativeMemoryHandle.cs
- ObjectDisposedException.cs
- JpegBitmapDecoder.cs
- ReturnEventArgs.cs
- DataListItemEventArgs.cs
- Keyboard.cs
- EntitySqlQueryCacheKey.cs
- RouteUrlExpressionBuilder.cs
- DataGridViewRowsAddedEventArgs.cs
- GeneralTransform3DTo2D.cs
- TextTreeInsertUndoUnit.cs
- TdsParserSessionPool.cs
- BCLDebug.cs
- Qualifier.cs
- IntranetCredentialPolicy.cs