Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Diagnostics / Eventing / Reader / EventLogException.cs / 1305376 / EventLogException.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: EventLogException ** ** Purpose: ** This public class describes an exception thrown from Event ** Log related classes. ** ============================================================*/ using System; using System.ComponentModel; using System.Runtime.Serialization; using System.Security.Permissions; namespace System.Diagnostics.Eventing.Reader { [Serializable] [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public class EventLogException : Exception, ISerializable { internal static void Throw(int errorCode) { switch (errorCode) { case 2: case 3: case 15007: case 15027: case 15028: case 15002: throw new EventLogNotFoundException(errorCode); case 13: case 15005: throw new EventLogInvalidDataException(errorCode); case 1818: // RPC_S_CALL_CANCELED is converted to ERROR_CANCELLED case 1223: throw new OperationCanceledException(); case 15037: throw new EventLogProviderDisabledException(errorCode); case 5: throw new UnauthorizedAccessException(); case 15011: case 15012: throw new EventLogReadingException(errorCode); default: throw new EventLogException(errorCode); } } public EventLogException() { } public EventLogException(string message) : base(message) { } public EventLogException(string message, Exception innerException) : base(message, innerException) { } protected EventLogException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext) { } protected EventLogException(int errorCode) { this.errorCode = errorCode; } // SecurityCritical due to inherited link demand for GetObjectData. [System.Security.SecurityCritical,SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info == null) throw new ArgumentNullException("info"); info.AddValue("errorCode", errorCode); base.GetObjectData(info, context); } public override string Message { // marked as SecurityCritical because it uses Win32Exception. // marked as TreatAsSafe because it performs Demand. [System.Security.SecurityCritical] get { EventLogPermissionHolder.GetEventLogPermission().Demand(); Win32Exception win32Exception = new Win32Exception(errorCode); return win32Exception.Message; } } private int errorCode; } ////// The object requested by the operation is not found. /// [Serializable] [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public class EventLogNotFoundException : EventLogException { public EventLogNotFoundException() { } public EventLogNotFoundException(string message) : base(message) { } public EventLogNotFoundException(string message, Exception innerException) : base(message, innerException) { } protected EventLogNotFoundException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext) { } internal EventLogNotFoundException(int errorCode) : base(errorCode) { } } ////// The state of the reader cursor has become invalid, most likely due to the fact /// that the log has been cleared. User needs to obtain a new reader object if /// they wish to continue navigating result set. /// [Serializable] [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public class EventLogReadingException : EventLogException { public EventLogReadingException() { } public EventLogReadingException(string message) : base(message) { } public EventLogReadingException(string message, Exception innerException) : base(message, innerException) { } protected EventLogReadingException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext) { } internal EventLogReadingException(int errorCode) : base(errorCode) { } } ////// Provider has been uninstalled while ProviderMetadata operations are being performed. /// Obtain a new ProviderMetadata object, when provider is reinstalled, to continue navigating /// provider's metadata. /// [Serializable] [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public class EventLogProviderDisabledException : EventLogException { public EventLogProviderDisabledException() { } public EventLogProviderDisabledException(string message) : base(message) { } public EventLogProviderDisabledException(string message, Exception innerException) : base(message, innerException) { } protected EventLogProviderDisabledException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext) { } internal EventLogProviderDisabledException(int errorCode) : base(errorCode) { } } ////// Data obtained from the eventlog service, for the current operation, is invalid . /// [Serializable] [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public class EventLogInvalidDataException : EventLogException { public EventLogInvalidDataException() { } public EventLogInvalidDataException(string message) : base(message) { } public EventLogInvalidDataException(string message, Exception innerException) : base(message, innerException) { } protected EventLogInvalidDataException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext) { } internal EventLogInvalidDataException(int errorCode) : base(errorCode) { } } } // 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
- TreeViewImageKeyConverter.cs
- DataGridViewColumnHeaderCell.cs
- CellPartitioner.cs
- WeakRefEnumerator.cs
- MailAddress.cs
- MasterPageBuildProvider.cs
- WebExceptionStatus.cs
- Ray3DHitTestResult.cs
- PerfCounters.cs
- SoapRpcServiceAttribute.cs
- ResourceAssociationTypeEnd.cs
- DbCommandTree.cs
- ChoiceConverter.cs
- AppSettingsExpressionEditor.cs
- WorkflowDesignerColors.cs
- DesignSurfaceEvent.cs
- SettingsPropertyNotFoundException.cs
- SelectionListDesigner.cs
- XLinq.cs
- ProgressBarHighlightConverter.cs
- SoundPlayerAction.cs
- SqlCacheDependencyDatabaseCollection.cs
- _Win32.cs
- EnumType.cs
- RegexCapture.cs
- EventArgs.cs
- TextCollapsingProperties.cs
- PathStreamGeometryContext.cs
- MemoryRecordBuffer.cs
- DataRecord.cs
- InvokeGenerator.cs
- TryExpression.cs
- EditingCommands.cs
- SqlAliasesReferenced.cs
- CngKeyBlobFormat.cs
- DataGridViewCellCollection.cs
- WindowsScrollBarBits.cs
- SpellCheck.cs
- XmlSchemaException.cs
- DataGridItemAttachedStorage.cs
- mda.cs
- StylusShape.cs
- DataControlImageButton.cs
- Deflater.cs
- NetSectionGroup.cs
- XmlQueryContext.cs
- Fonts.cs
- LinkLabel.cs
- TextTrailingWordEllipsis.cs
- PipeStream.cs
- PageFunction.cs
- SQLBoolean.cs
- MiniMapControl.xaml.cs
- BindingExpression.cs
- EventDescriptor.cs
- NavigationProperty.cs
- XmlDataSourceView.cs
- DataGridViewCellStyleConverter.cs
- EntryPointNotFoundException.cs
- CompositionTarget.cs
- RadioButtonDesigner.cs
- ErrorLog.cs
- SymbolDocumentGenerator.cs
- BooleanAnimationBase.cs
- XPathItem.cs
- VisualBasicImportReference.cs
- RadioButtonStandardAdapter.cs
- X509SecurityTokenAuthenticator.cs
- VirtualPathData.cs
- ValidationRuleCollection.cs
- ToolStripLabel.cs
- ObjectCloneHelper.cs
- UpDownEvent.cs
- WindowsImpersonationContext.cs
- SiteMapSection.cs
- LookupNode.cs
- BaseDataBoundControl.cs
- PersistNameAttribute.cs
- _OSSOCK.cs
- CmsUtils.cs
- MultipartIdentifier.cs
- WorkflowTransactionOptions.cs
- XamlClipboardData.cs
- HttpPostedFileBase.cs
- FreezableDefaultValueFactory.cs
- Point.cs
- ProfilePropertyNameValidator.cs
- ContentTypeSettingClientMessageFormatter.cs
- AddingNewEventArgs.cs
- CssClassPropertyAttribute.cs
- TextSerializer.cs
- FlagsAttribute.cs
- CodeNamespaceCollection.cs
- SQLBoolean.cs
- SystemIcons.cs
- COM2EnumConverter.cs
- ExpressionWriter.cs
- FormsIdentity.cs
- Processor.cs
- SqlDataReader.cs