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
- ListenerConnectionModeReader.cs
- UpdateCommand.cs
- DBSqlParserColumn.cs
- ReflectionTypeLoadException.cs
- EdmComplexPropertyAttribute.cs
- RequestCacheValidator.cs
- WebScriptMetadataMessageEncoderFactory.cs
- LoadedOrUnloadedOperation.cs
- UseLicense.cs
- EntityDataSourceViewSchema.cs
- EncryptedType.cs
- BulletedList.cs
- NativeObjectSecurity.cs
- OleDbConnectionInternal.cs
- HostTimeoutsElement.cs
- DataGridCellsPanel.cs
- ControlTemplate.cs
- UIElement.cs
- OneOfScalarConst.cs
- SoapAttributeAttribute.cs
- Margins.cs
- ConsoleCancelEventArgs.cs
- JoinQueryOperator.cs
- DefaultPrintController.cs
- PermissionRequestEvidence.cs
- ColorAnimationBase.cs
- Listbox.cs
- Misc.cs
- DataExpression.cs
- SmiMetaData.cs
- FrameworkContentElementAutomationPeer.cs
- CommonObjectSecurity.cs
- DataFormats.cs
- RtfControlWordInfo.cs
- OleDbParameter.cs
- ResolveDuplex11AsyncResult.cs
- _OverlappedAsyncResult.cs
- TrustSection.cs
- LogExtent.cs
- ProjectionAnalyzer.cs
- IsolatedStorageException.cs
- SqlServer2KCompatibilityCheck.cs
- OdbcConnectionStringbuilder.cs
- MouseGestureConverter.cs
- XmlDataSourceView.cs
- AmbientLight.cs
- AutoGeneratedFieldProperties.cs
- AsyncOperation.cs
- Comparer.cs
- EventDescriptorCollection.cs
- QilDataSource.cs
- ScrollBar.cs
- HttpDictionary.cs
- ListBoxAutomationPeer.cs
- columnmapfactory.cs
- RestHandler.cs
- DataGridHelper.cs
- WebControlAdapter.cs
- HwndHostAutomationPeer.cs
- IProvider.cs
- documentation.cs
- DrawingGroup.cs
- XmlSerializer.cs
- keycontainerpermission.cs
- ProcessModelSection.cs
- RetrieveVirtualItemEventArgs.cs
- ConstraintManager.cs
- SymLanguageVendor.cs
- IpcManager.cs
- ToolStripProgressBar.cs
- PackWebRequestFactory.cs
- AccessDataSource.cs
- NumericPagerField.cs
- DefaultValueTypeConverter.cs
- SelectedGridItemChangedEvent.cs
- FileBasedResourceGroveler.cs
- ToolStripTextBox.cs
- QilReference.cs
- X509UI.cs
- coordinator.cs
- SqlConnectionPoolProviderInfo.cs
- hresults.cs
- SystemEvents.cs
- CommonGetThemePartSize.cs
- UIntPtr.cs
- ClientFormsIdentity.cs
- KeyValueConfigurationCollection.cs
- BitmapFrameDecode.cs
- HiddenField.cs
- TcpStreams.cs
- IntPtr.cs
- EllipticalNodeOperations.cs
- KnownColorTable.cs
- StringAnimationBase.cs
- _UriSyntax.cs
- DataSysAttribute.cs
- ImpersonationContext.cs
- SystemNetHelpers.cs
- NonBatchDirectoryCompiler.cs
- WebControlParameterProxy.cs