Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / Interop / SafeEventLogWriteHandle.cs / 1305376 / SafeEventLogWriteHandle.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.Interop { using Microsoft.Win32.SafeHandles; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Globalization; using System.Diagnostics; using System.Security; [Fx.Tag.SecurityNote(Critical = "Usage of SafeHandleZeroOrMinusOneIsInvalid, which is protected by a LinkDemand and InheritanceDemand")] [SecurityCritical] sealed class SafeEventLogWriteHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note: RegisterEventSource returns 0 on failure [Fx.Tag.SecurityNote(Critical = "Usage of SafeHandleZeroOrMinusOneIsInvalid, which is protected by a LinkDemand and InheritanceDemand")] [SecurityCritical] SafeEventLogWriteHandle() : base(true) { } [ResourceConsumption(ResourceScope.Machine)] [Fx.Tag.SecurityNote(Critical = "Usage of SafeHandleZeroOrMinusOneIsInvalid, which is protected by a LinkDemand and InheritanceDemand")] [SecurityCritical] public static SafeEventLogWriteHandle RegisterEventSource(string uncServerName, string sourceName) { SafeEventLogWriteHandle retval = UnsafeNativeMethods.RegisterEventSource(uncServerName, sourceName); int error = Marshal.GetLastWin32Error(); if (retval.IsInvalid) { Debug.Print("SafeEventLogWriteHandle::RegisterEventSource[" + uncServerName + ", " + sourceName + "] Failed. Last Error: " + error.ToString(CultureInfo.InvariantCulture)); } return retval; } [DllImport("advapi32", SetLastError = true)] [ResourceExposure(ResourceScope.None)] static extern bool DeregisterEventSource(IntPtr hEventLog); [Fx.Tag.SecurityNote(Critical = "Usage of SafeHandleZeroOrMinusOneIsInvalid, which is protected by a LinkDemand and InheritanceDemand")] [SecurityCritical] protected override bool ReleaseHandle() { return DeregisterEventSource(this.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
- DiscoveryDocument.cs
- ItemsControl.cs
- RequestCachingSection.cs
- TabRenderer.cs
- TextDecorationCollection.cs
- IntSecurity.cs
- ConfigurationManager.cs
- FamilyCollection.cs
- DocumentPageViewAutomationPeer.cs
- metadatamappinghashervisitor.cs
- SBCSCodePageEncoding.cs
- VectorKeyFrameCollection.cs
- Error.cs
- RadialGradientBrush.cs
- SharedStatics.cs
- MultiTrigger.cs
- ServiceAppDomainAssociationProvider.cs
- CompositeScriptReference.cs
- Point4DConverter.cs
- AudioStateChangedEventArgs.cs
- FileLogRecord.cs
- HandleRef.cs
- VisualStyleInformation.cs
- SqlMethodAttribute.cs
- InternalResources.cs
- DBNull.cs
- TableProviderWrapper.cs
- MarkupExtensionReturnTypeAttribute.cs
- LayoutManager.cs
- CryptoHandle.cs
- SetStoryboardSpeedRatio.cs
- XmlQueryCardinality.cs
- PathGeometry.cs
- ScheduleChanges.cs
- TriggerBase.cs
- QilVisitor.cs
- SatelliteContractVersionAttribute.cs
- Attribute.cs
- DBConnection.cs
- DataTableMappingCollection.cs
- XPathParser.cs
- Tile.cs
- Double.cs
- SQLGuid.cs
- LinearGradientBrush.cs
- SocketPermission.cs
- FormViewUpdateEventArgs.cs
- MetadataItemCollectionFactory.cs
- ServiceTimeoutsBehavior.cs
- FormCollection.cs
- SqlException.cs
- MasterPage.cs
- TemplatePagerField.cs
- unitconverter.cs
- DeviceFiltersSection.cs
- GeometryHitTestResult.cs
- CodeExpressionCollection.cs
- WpfKnownTypeInvoker.cs
- IPAddress.cs
- cookiecollection.cs
- UnsafeNativeMethods.cs
- VariantWrapper.cs
- StringKeyFrameCollection.cs
- EntitySqlQueryCacheEntry.cs
- DesignTimeData.cs
- ApplicationInfo.cs
- ProtocolsConfiguration.cs
- StringCollectionMarkupSerializer.cs
- GridViewCancelEditEventArgs.cs
- HoistedLocals.cs
- ProfileManager.cs
- ButtonColumn.cs
- AnnotationResource.cs
- IRCollection.cs
- AvTraceFormat.cs
- EditBehavior.cs
- MarkupCompilePass2.cs
- TcpChannelListener.cs
- GroupItemAutomationPeer.cs
- EntryPointNotFoundException.cs
- TaskFormBase.cs
- Descriptor.cs
- XPathNodeIterator.cs
- SafeLocalMemHandle.cs
- PropertyChangedEventArgs.cs
- ProfileSection.cs
- Delegate.cs
- SqlRetyper.cs
- ImageFormatConverter.cs
- SizeChangedEventArgs.cs
- DocumentReferenceCollection.cs
- CalendarDateRange.cs
- TextWriter.cs
- _LazyAsyncResult.cs
- ToggleButtonAutomationPeer.cs
- GridViewItemAutomationPeer.cs
- HttpRuntimeSection.cs
- Root.cs
- Int64KeyFrameCollection.cs
- CategoryNameCollection.cs