Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / Microsoft / Win32 / SafeHandles / SafeTimerHandle.cs / 1305376 / SafeTimerHandle.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeTimerHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for a timer handle ** ** Date: July 23, 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; using System.Runtime.Versioning; namespace Microsoft.Win32.SafeHandles { [HostProtectionAttribute(MayLeakOnAbort=true)] [SuppressUnmanagedCodeSecurityAttribute] internal sealed class SafeTimerHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note that CreateWaitableTimer returns 0 on failure internal SafeTimerHandle() : base (true) {} // Not currently used //[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)] //internal SafeTimerHandle(IntPtr existingHandle, bool ownsHandle) : base(ownsHandle) { // SetHandle(existingHandle); //} [DllImport(ExternDll.Kernel32, ExactSpelling=true, SetLastError=true)] [ResourceExposure(ResourceScope.None)] [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: SafeTimerHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for a timer handle ** ** Date: July 23, 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; using System.Runtime.Versioning; namespace Microsoft.Win32.SafeHandles { [HostProtectionAttribute(MayLeakOnAbort=true)] [SuppressUnmanagedCodeSecurityAttribute] internal sealed class SafeTimerHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note that CreateWaitableTimer returns 0 on failure internal SafeTimerHandle() : base (true) {} // Not currently used //[SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)] //internal SafeTimerHandle(IntPtr existingHandle, bool ownsHandle) : base(ownsHandle) { // SetHandle(existingHandle); //} [DllImport(ExternDll.Kernel32, ExactSpelling=true, SetLastError=true)] [ResourceExposure(ResourceScope.None)] [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
- LockedHandleGlyph.cs
- DisplayToken.cs
- XmlNamespaceMappingCollection.cs
- Renderer.cs
- CompositeCollection.cs
- PartialCachingControl.cs
- BinaryCommonClasses.cs
- TextSelectionHelper.cs
- SQLDecimalStorage.cs
- ErrorEventArgs.cs
- Keywords.cs
- InputScope.cs
- ItemsPresenter.cs
- SpeakProgressEventArgs.cs
- IInstanceTable.cs
- ExtractedStateEntry.cs
- Effect.cs
- StylusPointPropertyInfoDefaults.cs
- PageRequestManager.cs
- ContentType.cs
- ColorTypeConverter.cs
- PageHandlerFactory.cs
- StylusPlugin.cs
- Rotation3DKeyFrameCollection.cs
- QilReplaceVisitor.cs
- DotAtomReader.cs
- AxisAngleRotation3D.cs
- CorePropertiesFilter.cs
- CollectionDataContract.cs
- PerfCounters.cs
- ObjectViewQueryResultData.cs
- RequiredArgumentAttribute.cs
- SqlTypeConverter.cs
- XmlAtomErrorReader.cs
- Msec.cs
- AvTraceDetails.cs
- TitleStyle.cs
- XpsStructure.cs
- EntityClassGenerator.cs
- ClientSettingsSection.cs
- X509ClientCertificateCredentialsElement.cs
- bidPrivateBase.cs
- CompiledQuery.cs
- MenuItemStyleCollection.cs
- WithParamAction.cs
- WebPartCollection.cs
- BitmapCodecInfoInternal.cs
- _ListenerAsyncResult.cs
- AffineTransform3D.cs
- ProcessRequestAsyncResult.cs
- StateWorkerRequest.cs
- DependencyPropertyKind.cs
- WpfSharedXamlSchemaContext.cs
- FontWeightConverter.cs
- SID.cs
- EdmItemError.cs
- WebControlParameterProxy.cs
- SmtpDigestAuthenticationModule.cs
- BookmarkManager.cs
- IndicShape.cs
- WindowShowOrOpenTracker.cs
- RenderOptions.cs
- PersonalizationAdministration.cs
- MetadataUtil.cs
- PeerCollaboration.cs
- CodeVariableDeclarationStatement.cs
- InputQueueChannelAcceptor.cs
- PropertyEmitter.cs
- SelectionManager.cs
- _ListenerResponseStream.cs
- StorageMappingFragment.cs
- FrameworkElementFactory.cs
- SqlConnection.cs
- XmlSignificantWhitespace.cs
- dataSvcMapFileLoader.cs
- DirectionalLight.cs
- CompensateDesigner.cs
- BaseParser.cs
- SoundPlayerAction.cs
- RealizationContext.cs
- TaiwanLunisolarCalendar.cs
- TaskFactory.cs
- CodeBinaryOperatorExpression.cs
- CodeSubDirectory.cs
- QueuePathEditor.cs
- ExcludePathInfo.cs
- SimpleMailWebEventProvider.cs
- _ScatterGatherBuffers.cs
- DataGridViewElement.cs
- Subtract.cs
- VectorCollectionConverter.cs
- SchemaTypeEmitter.cs
- CommandCollectionEditor.cs
- HttpModuleActionCollection.cs
- AsynchronousChannel.cs
- CorePropertiesFilter.cs
- IPAddressCollection.cs
- Item.cs
- MissingManifestResourceException.cs
- DataControlImageButton.cs