コード例 #1
0
        internal EventLogInformation(EventLogSession session, string channelName, PathType pathType)
        {
            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);
            }
        }
コード例 #2
0
 internal static extern bool EvtSeek(EventLogHandle resultSet, long position, EventLogHandle bookmark, int timeout, [MarshalAs(UnmanagedType.I4)] EvtSeekFlags flags);
コード例 #3
0
 internal static extern bool EvtClearLog(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] string channelPath,
     [MarshalAs(UnmanagedType.LPWStr)] string targetFilePath,
     int flags
     );
コード例 #4
0
 internal static extern EventLogHandle EvtOpenLog(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] string path,
     [MarshalAs(UnmanagedType.I4)] PathType flags
     );
コード例 #5
0
 internal static extern bool EvtSaveChannelConfig(
     EventLogHandle channelConfig,
     int flags
     );
コード例 #6
0
 internal static extern bool EvtNextPublisherId(
     EventLogHandle publisherEnum,
     int publisherIdBufferSize,
     [Out, MarshalAs(UnmanagedType.LPWStr)] StringBuilder publisherIdBuffer,
     out int publisherIdBufferUsed
     );
コード例 #7
0
 internal static extern EventLogHandle EvtOpenChannelEnum(
     EventLogHandle session,
     int flags
     );
コード例 #8
0
 internal static extern EventLogHandle EvtOpenEventMetadataEnum(
     EventLogHandle publisherMetadata,
     int flags
     );
コード例 #9
0
 internal static partial EventLogHandle EvtOpenPublisherMetadata(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] string publisherId,
     [MarshalAs(UnmanagedType.LPWStr)] string logFilePath,
     int locale,
     int flags);
コード例 #10
0
 internal static partial bool EvtGetQueryInfo(
     EventLogHandle queryHandle,
     EvtQueryPropertyId propertyId,
     int bufferSize,
     IntPtr buffer,
     ref int bufferRequired);
コード例 #11
0
 internal static partial bool EvtGetEventInfo(
     EventLogHandle eventHandle,
     EvtEventPropertyId propertyId,
     int bufferSize,
     IntPtr bufferPtr,
     out int bufferUsed);
コード例 #12
0
 internal static partial bool EvtCancel(EventLogHandle handle);
コード例 #13
0
 internal static partial bool EvtSeek(
     EventLogHandle resultSet,
     long position,
     EventLogHandle bookmark,
     int timeout,
     EvtSeekFlags flags);
コード例 #14
0
 internal static extern EventLogHandle EvtSubscribe(EventLogHandle session, SafeWaitHandle signalEvent, [MarshalAs(UnmanagedType.LPWStr)] string path, [MarshalAs(UnmanagedType.LPWStr)] string query, EventLogHandle bookmark, IntPtr context, IntPtr callback, int flags);
コード例 #15
0
 internal static extern bool EvtCancel(EventLogHandle handle);
コード例 #16
0
 internal static partial bool EvtNextChannelPath(
     EventLogHandle channelEnum,
     int channelPathBufferSize,
     [Out] char[]?channelPathBuffer,
     out int channelPathBufferUsed);
コード例 #17
0
 internal static extern bool EvtGetObjectArraySize(
     EventLogHandle objectArray,
     out int objectArraySize
     );
コード例 #18
0
 internal static partial bool EvtNextPublisherId(
     EventLogHandle publisherEnum,
     int publisherIdBufferSize,
     [Out] char[]?publisherIdBuffer,
     out int publisherIdBufferUsed);
コード例 #19
0
 // public static extern IntPtr EvtNextEventMetadata(
 internal static extern EventLogHandle EvtNextEventMetadata(
     EventLogHandle eventMetadataEnum,
     int flags
     );
コード例 #20
0
 internal static partial bool EvtSetChannelConfigProperty(
     EventLogHandle channelConfig,
     EvtChannelConfigPropertyId propertyId,
     int flags,
     ref EvtVariant propertyValue);
コード例 #21
0
 internal static extern EventLogHandle EvtOpenPublisherEnum(
     EventLogHandle session,
     int flags
     );
コード例 #22
0
 internal static partial bool EvtGetLogInfo(
     EventLogHandle log,
     EvtLogPropertyId propertyId,
     int propertyValueBufferSize,
     IntPtr propertyValueBuffer,
     out int propertyValueBufferUsed);
コード例 #23
0
 internal static extern EventLogHandle EvtOpenChannelConfig(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] String channelPath,
     int flags
     );
コード例 #24
0
 internal static partial bool EvtExportLog(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] string channelPath,
     [MarshalAs(UnmanagedType.LPWStr)] string query,
     [MarshalAs(UnmanagedType.LPWStr)] string targetFilePath,
     int flags);
コード例 #25
0
 internal static extern bool EvtSetChannelConfigProperty(
     EventLogHandle channelConfig,
     [MarshalAs(UnmanagedType.I4)] EvtChannelConfigPropertyId propertyId,
     int flags,
     ref EvtVariant propertyValue
     );
コード例 #26
0
 internal static partial bool EvtUpdateBookmark(
     EventLogHandle bookmark,
     EventLogHandle eventHandle);
コード例 #27
0
 internal static extern bool EvtArchiveExportedLog(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] string logFilePath,
     int locale,
     int flags
     );
コード例 #28
0
 internal static extern EventLogHandle EvtQuery(
     EventLogHandle session,
     [MarshalAs(UnmanagedType.LPWStr)] string path,
     [MarshalAs(UnmanagedType.LPWStr)] string query,
     int flags);
コード例 #29
0
 internal static extern bool EvtUpdateBookmark(
     EventLogHandle bookmark,
     EventLogHandle eventHandle
     );
コード例 #30
0
 internal static extern bool EvtRender(EventLogHandle context, EventLogHandle eventHandle, EvtRenderFlags flags, int buffSize, [Out, MarshalAs(UnmanagedType.LPWStr)] StringBuilder buffer, out int buffUsed, out int propCount);