Added evntrace.h and wmistr.h.
diff --git a/include/evntrace.h b/include/evntrace.h
new file mode 100644
index 0000000..e0e45d9
--- /dev/null
+++ b/include/evntrace.h
@@ -0,0 +1,181 @@
+/*
+ * Copyright (C) 2005 Mike McCormack
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef _EVNTRACE_
+#define _EVNTRACE_
+
+#include <guiddef.h>
+
+typedef ULONG64 TRACEHANDLE, *PTRACEHANDLE;
+
+struct _EVENT_TRACE_LOGFILEA;
+struct _EVENT_TRACE_LOGFILEW;
+
+typedef struct _EVENT_TRACE_LOGFILEA EVENT_TRACE_LOGFILEA, *PEVENT_TRACE_LOGFILEA;
+typedef struct _EVENT_TRACE_LOGFILEW EVENT_TRACE_LOGFILEW, *PEVENT_TRACE_LOGFILEW;
+
+typedef ULONG (WINAPI * PEVENT_TRACE_BUFFER_CALLBACKA)( PEVENT_TRACE_LOGFILEA );
+typedef ULONG (WINAPI * PEVENT_TRACE_BUFFER_CALLBACKW)( PEVENT_TRACE_LOGFILEW );
+
+typedef ULONG (WINAPI * WMIDPREQUEST)( WMIDPREQUESTCODE, PVOID, ULONG*, PVOID );
+
+typedef struct _TRACE_GUID_REGISTRATION
+{
+ LPCGUID Guid;
+ HANDLE RegHandle;
+} TRACE_GUID_REGISTRATION, *PTRACE_GUID_REGISTRATION;
+
+typedef struct _EVENT_TRACE_HEADER
+{
+ USHORT Size;
+ union
+ {
+ USHORT FieldTypeFlags;
+ struct
+ {
+ UCHAR HeaderType;
+ UCHAR MarkerFlags;
+ };
+ } DUMMYUNIONNAME;
+ union
+ {
+ ULONG Version;
+ struct
+ {
+ UCHAR Type;
+ UCHAR Level;
+ USHORT Version;
+ } Class;
+ } DUMMYUNIONNAME1;
+ ULONG ThreadId;
+ ULONG ProcessId;
+ LARGE_INTEGER TimeStamp;
+ union
+ {
+ GUID Guid;
+ ULONGLONG GuidPtr;
+ } DUMMYUNIONNAME2;
+ union
+ {
+ struct
+ {
+ ULONG ClientContext;
+ ULONG Flags;
+ };
+ struct
+ {
+ ULONG KernelTime;
+ ULONG UserTime;
+ };
+ } DUMMYUNIONNAME3;
+} EVENT_TRACE_HEADER, *PEVENT_TRACE_HEADER;
+
+typedef struct _EVENT_TRACE
+{
+ EVENT_TRACE_HEADER Header;
+ ULONG InstanceId;
+ ULONG ParentInstanceId;
+ GUID ParentGuid;
+ PVOID MofData;
+ ULONG MofLength;
+ ULONG ClientContext;
+} EVENT_TRACE, *PEVENT_TRACE;
+
+typedef VOID (WINAPI * PEVENT_CALLBACK)( PEVENT_TRACE );
+
+typedef struct _TRACE_LOGFILE_HEADER
+{
+ ULONG BufferSize;
+ union
+ {
+ ULONG Version;
+ struct
+ {
+ UCHAR MajorVersion;
+ UCHAR MinorVersion;
+ UCHAR SubVersion;
+ UCHAR SubMinorVersion;
+ } VersionDetail;
+ } DUMMYUNIONNAME;
+ ULONG ProviderVersion;
+ ULONG NumberOfProcessors;
+ LARGE_INTEGER EndTime;
+ ULONG TimerResolution;
+ ULONG MaximumFileSize;
+ ULONG LogFileMode;
+ ULONG BuffersWritten;
+ union
+ {
+ GUID LogInstanceGuid;
+ struct
+ {
+ ULONG StartBuffers;
+ ULONG PointerSize;
+ ULONG EventsLost;
+ ULONG CpuSpeedInMHZ;
+ };
+ } DUMMYUNIONNAME1;
+ LPWSTR LoggerName;
+ LPWSTR LogFileName;
+ TIME_ZONE_INFORMATION TimeZone;
+ LARGE_INTEGER BootTime;
+ LARGE_INTEGER PerfFreq;
+ LARGE_INTEGER StartTime;
+ ULONG ReservedTime;
+ ULONG BuffersLost;
+} TRACE_LOGFILE_HEADER, *PTRACE_LOGFILE_HEADER;
+
+struct _EVENT_TRACE_LOGFILEW
+{
+ LPWSTR LogFileName;
+ LPWSTR LoggerName;
+ LONGLONG CurrentTime;
+ ULONG LogFileMode;
+ EVENT_TRACE CurrentEvent;
+ TRACE_LOGFILE_HEADER LogfileHeader;
+ PEVENT_TRACE_BUFFER_CALLBACKW BufferCallback;
+ ULONG BufferSize;
+ ULONG Filled;
+ ULONG EventsLost;
+ PEVENT_CALLBACK EventCallback;
+ PVOID Context;
+};
+
+struct _EVENT_TRACE_LOGFILEA
+{
+ LPSTR LogFileName;
+ LPSTR LoggerName;
+ LONGLONG CurrentTime;
+ ULONG LogFileMode;
+ EVENT_TRACE CurrentEvent;
+ TRACE_LOGFILE_HEADER LogfileHeader;
+ PEVENT_TRACE_BUFFER_CALLBACKA BufferCallback;
+ ULONG BufferSize;
+ ULONG Filled;
+ ULONG EventsLost;
+ PEVENT_CALLBACK EventCallback;
+ PVOID Context;
+};
+
+ULONG WINAPI CloseTrace(TRACEHANDLE);
+ULONG WINAPI EnableTrace(ULONG,ULONG,ULONG,LPCGUID,TRACEHANDLE);
+ULONG WINAPI RegisterTraceGuidsA(WMIDPREQUEST,PVOID,LPCGUID,ULONG,PTRACE_GUID_REGISTRATION,LPCSTR,LPCSTR,PTRACEHANDLE);
+ULONG WINAPI RegisterTraceGuidsW(WMIDPREQUEST,PVOID,LPCGUID,ULONG,PTRACE_GUID_REGISTRATION,LPCWSTR,LPCWSTR,PTRACEHANDLE);
+#define RegisterTraceGuids WINELIB_NAME_AW(RegisterTraceGuids)
+
+#endif /* _EVNTRACE_ */