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
- SystemIPGlobalProperties.cs
- ObjectDisposedException.cs
- UnsafeNativeMethods.cs
- Debug.cs
- EntryWrittenEventArgs.cs
- XamlStackWriter.cs
- BounceEase.cs
- BitmapFrameEncode.cs
- CopyAttributesAction.cs
- XXXInfos.cs
- ComponentEvent.cs
- ThreadStateException.cs
- VariantWrapper.cs
- ProfileEventArgs.cs
- Menu.cs
- VarRefManager.cs
- ISO2022Encoding.cs
- DateTimeConverter.cs
- AnnotationService.cs
- UrlMapping.cs
- DBPropSet.cs
- SqlDataSourceView.cs
- TextParagraphCache.cs
- TextSpanModifier.cs
- ColorConverter.cs
- MemberRelationshipService.cs
- securitycriticaldataformultiplegetandset.cs
- StringFreezingAttribute.cs
- XmlEntity.cs
- Perspective.cs
- SqlClientPermission.cs
- PointCollectionValueSerializer.cs
- SoapInteropTypes.cs
- ParseChildrenAsPropertiesAttribute.cs
- Environment.cs
- TreeNode.cs
- NotSupportedException.cs
- EntityExpressionVisitor.cs
- ObjectSpanRewriter.cs
- AnimationTimeline.cs
- RichListBox.cs
- Comparer.cs
- ProfilePropertyMetadata.cs
- DataSourceListEditor.cs
- MemberRelationshipService.cs
- Metafile.cs
- CodeSnippetExpression.cs
- RemotingAttributes.cs
- StateChangeEvent.cs
- Signature.cs
- MarginsConverter.cs
- UserPreferenceChangedEventArgs.cs
- MethodExpr.cs
- LinqMaximalSubtreeNominator.cs
- SqlCommandSet.cs
- ArglessEventHandlerProxy.cs
- RijndaelCryptoServiceProvider.cs
- DetailsViewInsertEventArgs.cs
- EventListener.cs
- LinkClickEvent.cs
- Transform3DGroup.cs
- AudioBase.cs
- TogglePatternIdentifiers.cs
- EntityDescriptor.cs
- EnumerableRowCollection.cs
- MenuAutomationPeer.cs
- LocatorGroup.cs
- StateMachineSubscription.cs
- SchemaSetCompiler.cs
- ZipFileInfoCollection.cs
- StringStorage.cs
- PropertyValueChangedEvent.cs
- XNodeNavigator.cs
- PeerMaintainer.cs
- SqlProcedureAttribute.cs
- SqlRecordBuffer.cs
- FileDataSourceCache.cs
- ConnectionProviderAttribute.cs
- HierarchicalDataSourceConverter.cs
- XmlJsonReader.cs
- PageStatePersister.cs
- XdrBuilder.cs
- OlePropertyStructs.cs
- StorageModelBuildProvider.cs
- ParseNumbers.cs
- EditorPartChrome.cs
- FacetValueContainer.cs
- ReadOnlyNameValueCollection.cs
- PathFigureCollection.cs
- WorkflowFileItem.cs
- MemberPath.cs
- IHttpResponseInternal.cs
- UncommonField.cs
- TextBox.cs
- HtmlInputImage.cs
- SourceElementsCollection.cs
- WebPartConnectionsConfigureVerb.cs
- OleDragDropHandler.cs
- QualifiedCellIdBoolean.cs
- BindingUtils.cs