Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Diagnostics / Eventing / Reader / EventLogInformation.cs / 1305376 / EventLogInformation.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*============================================================
**
** Class: EventLogInformation
**
** Purpose:
** The objects of this class allow access to the run-time
** properties of logs and external log files. An instance of this
** class is obtained from EventLogSession.
**
============================================================*/
using System;
using System.Runtime.InteropServices;
using Microsoft.Win32;
namespace System.Diagnostics.Eventing.Reader {
///
/// Describes the run-time properties of logs and external log files. An instance
/// of this class is obtained from EventLogSession.
///
[System.Security.Permissions.HostProtection(MayLeakOnAbort = true)]
public sealed class EventLogInformation {
DateTime? creationTime;
DateTime? lastAccessTime;
DateTime? lastWriteTime;
long? fileSize;
int? fileAttributes;
long? recordCount;
long? oldestRecordNumber;
bool? isLogFull;
[System.Security.SecuritySafeCritical]
internal EventLogInformation(EventLogSession session, string channelName, PathType pathType) {
EventLogPermissionHolder.GetEventLogPermission().Demand();
EventLogHandle logHandle = NativeWrapper.EvtOpenLog(session.Handle, channelName, pathType);
using (logHandle) {
creationTime = (DateTime?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogCreationTime);
lastAccessTime = (DateTime?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogLastAccessTime);
lastWriteTime = (DateTime?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogLastWriteTime);
fileSize = (long?)((ulong?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogFileSize));
fileAttributes = (int?)((uint?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogAttributes));
recordCount = (long?)((ulong?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogNumberOfLogRecords));
oldestRecordNumber = (long?)((ulong?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogOldestRecordNumber));
isLogFull = (bool?)NativeWrapper.EvtGetLogInfo(logHandle, UnsafeNativeMethods.EvtLogPropertyId.EvtLogFull);
}
}
public DateTime? CreationTime { get { return creationTime; } }
public DateTime? LastAccessTime { get { return lastAccessTime; } }
public DateTime? LastWriteTime { get { return lastWriteTime; } }
public long? FileSize { get { return fileSize; } }
public int? Attributes { get { return fileAttributes; } }
public long? RecordCount { get { return recordCount; } }
public long? OldestRecordNumber { get { return oldestRecordNumber; } }
public bool? IsLogFull { get { return isLogFull; } }
}
}
// 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
- PasswordTextNavigator.cs
- LogSwitch.cs
- GradientBrush.cs
- SerializationObjectManager.cs
- SymbolType.cs
- DesignerActionVerbItem.cs
- HierarchicalDataBoundControlAdapter.cs
- ManipulationDeltaEventArgs.cs
- WebPartTracker.cs
- DependencyPropertyChangedEventArgs.cs
- SqlTransaction.cs
- SqlUtils.cs
- DesignerActionItemCollection.cs
- TableLayoutStyleCollection.cs
- DataTableNewRowEvent.cs
- JoinElimination.cs
- ScrollItemPatternIdentifiers.cs
- VirtualizingPanel.cs
- AuthenticateEventArgs.cs
- SynchronizedRandom.cs
- MsmqInputChannel.cs
- validation.cs
- TextSpanModifier.cs
- pingexception.cs
- SHA384.cs
- Slider.cs
- StickyNoteContentControl.cs
- BaseComponentEditor.cs
- UrlPropertyAttribute.cs
- ThreadStateException.cs
- EditorZone.cs
- AutomationPatternInfo.cs
- FixedTextBuilder.cs
- HttpRuntime.cs
- CommandCollectionEditor.cs
- QilIterator.cs
- CertificateElement.cs
- RenderingEventArgs.cs
- ChangeBlockUndoRecord.cs
- ToolStripManager.cs
- Panel.cs
- HostedHttpRequestAsyncResult.cs
- UpDownBaseDesigner.cs
- M3DUtil.cs
- PolicyManager.cs
- SpecialFolderEnumConverter.cs
- VideoDrawing.cs
- UpdateTranslator.cs
- ToolBarDesigner.cs
- SatelliteContractVersionAttribute.cs
- DbMetaDataCollectionNames.cs
- SelectionGlyph.cs
- ContractTypeNameCollection.cs
- NonParentingControl.cs
- SEHException.cs
- WebPartUtil.cs
- OleDbParameter.cs
- UnauthorizedAccessException.cs
- GridViewDeletedEventArgs.cs
- ProfileService.cs
- GridViewDesigner.cs
- ValidationError.cs
- AutoGeneratedField.cs
- RegistrationServices.cs
- GeneralTransform2DTo3DTo2D.cs
- Utils.cs
- Rectangle.cs
- ViewSimplifier.cs
- X509ScopedServiceCertificateElementCollection.cs
- TableLayoutColumnStyleCollection.cs
- HashRepartitionEnumerator.cs
- Font.cs
- ErrorFormatter.cs
- TypefaceCollection.cs
- SQLSingle.cs
- X509CertificateChain.cs
- Padding.cs
- NamespaceExpr.cs
- DataObjectSettingDataEventArgs.cs
- RoutingExtensionElement.cs
- PageHandlerFactory.cs
- CompiledXpathExpr.cs
- EpmCustomContentSerializer.cs
- ExpressionBuilderContext.cs
- Double.cs
- CodeDirectionExpression.cs
- AutomationTextAttribute.cs
- TagPrefixAttribute.cs
- DbCommandDefinition.cs
- TemporaryBitmapFile.cs
- TypeConverterHelper.cs
- ListChangedEventArgs.cs
- DoubleCollectionConverter.cs
- EndpointConfigContainer.cs
- SortDescriptionCollection.cs
- Util.cs
- ImmComposition.cs
- Viewport3DVisual.cs
- SimpleType.cs
- UnwrappedTypesXmlSerializerManager.cs