52 pCreateWellKnownSid = (
void*)
GetProcAddress(hadvapi32,
"CreateWellKnownSid");
53 pGetEventLogInformation = (
void*)
GetProcAddress(hadvapi32,
"GetEventLogInformation");
54 pEventWriteString = (
void*)
GetProcAddress(hadvapi32,
"EventWriteString");
55 pEventRegister = (
void*)
GetProcAddress(hadvapi32,
"EventRegister");
56 pEventUnregister = (
void*)
GetProcAddress(hadvapi32,
"EventUnregister");
71 win_skip(
"Can't open event log\n" );
80 skip(
"insufficient privileges to backup the eventlog\n");
100 ok(!
ret,
"Expected failure\n");
103 "Expected ERROR_INVALID_HANDLE, got %ld\n",
GetLastError());
112 ok(
handle ==
NULL,
"OpenEventLogA(IDontExist,) succeeded\n");
117 ok(
handle ==
NULL,
"OpenEventLogA(IDontExist,deadbeef) succeeded\n");
120 "Expected RPC_S_SERVER_UNAVAILABLE, got %ld\n",
GetLastError());
132 ok(!
ret,
"Expected failure\n");
154 if (!pGetEventLogInformation)
157 win_skip(
"GetEventLogInformation is not available\n");
162 ok(!
ret,
"Expected failure\n");
167 ok(!
ret,
"Expected failure\n");
175 ok(!
ret,
"Expected failure\n");
180 ok(!
ret,
"Expected failure\n");
185 ok(!
ret,
"Expected failure\n");
190 efi->dwFull = 0xdeadbeef;
192 ok(!
ret,
"Expected failure\n");
195 ok(efi->dwFull == 0xdeadbeef,
"Expected no change to the dwFull member\n");
198 efi->dwFull = 0xdeadbeef;
203 ok(efi->dwFull == 0 || efi->dwFull == 1,
"Expected 0 (not full) or 1 (full), got %ld\n", efi->dwFull);
213 const char backup[] =
"backup.evt";
217 ok(!
ret,
"Expected failure\n");
223 ok(!
ret,
"Expected failure\n");
225 ok(
count == 0xdeadbeef,
"Expected count to stay unchanged\n");
232 ok(!
ret,
"Expected failure\n");
238 ok(
count != 0xdeadbeef,
"Expected the number of records\n");
255 ok(
count != 0xdeadbeef,
"Expected the number of records\n");
268 const char backup[] =
"backup.evt";
272 ok(!
ret,
"Expected failure\n");
278 ok(!
ret,
"Expected failure\n");
280 ok(oldest == 0xdeadbeef,
"Expected oldest to stay unchanged\n");
285 win_skip(
"Can't open event log\n" );
292 ok(!
ret,
"Expected failure\n");
298 ok(oldest != 0xdeadbeef,
"Expected the number of the oldest record\n");
315 ok(oldest != 0xdeadbeef,
"Expected the number of the oldest record\n");
327 const char backup[] =
"backup.evt";
328 const char backup2[] =
"backup2.evt";
332 ok(!
ret,
"Expected failure\n");
337 ok(!
ret,
"Expected failure\n");
343 win_skip(
"Can't open event log\n" );
350 ok(!
ret,
"Expected failure\n");
356 skip(
"insufficient privileges for backup tests\n");
369 ok(!
ret,
"Expected failure\n");
401 ok(!
ret,
"Expected failure\n");
408 ok(!
ret,
"Expected failure\n");
409 ok(
read == 0xdeadbeef,
"Expected 'read' parameter to remain unchanged\n");
416 ok(!
ret,
"Expected failure\n");
417 ok(needed == 0xdeadbeef,
"Expected 'needed' parameter to remain unchanged\n");
424 ok(!
ret,
"Expected failure\n");
430 ok(!
ret,
"Expected failure\n");
436 ok(!
ret,
"Expected failure\n");
444 ok(!
ret,
"Expected failure\n");
452 ok(!
ret,
"Expected failure\n");
460 win_skip(
"Can't open event log\n" );
470 ok(!
ret,
"Expected failure\n");
476 ok(!
ret,
"Expected failure\n");
482 ok(!
ret,
"Expected failure\n");
489 ok(!
ret,
"Expected failure\n");
496 ok(!
ret,
"Expected failure\n");
503 ok(!
ret,
"Expected failure\n");
514 skip(
"No records in the 'Application' log\n");
521 read = needed = 0xdeadbeef;
525 ok(!
ret,
"Expected failure\n");
526 ok(
read == 0,
"Expected no bytes read\n");
527 ok(needed >
sizeof(
EVENTLOGRECORD),
"Expected the needed buffersize to be bigger than sizeof(EVENTLOGRECORD)\n");
533 read = needed = 0xdeadbeef;
539 "Expected the requested size to be read\n");
540 ok(needed == 0,
"Expected no extra bytes to be read\n");
550 const char backup[] =
"backup.evt";
551 const char text[] =
"Just some text";
576 "Expected RPC_S_SERVER_UNAVAILABLE, got %ld\n",
GetLastError());
584 skip(
"We don't have a backup eventlog to work with\n");
593 "Expected RPC_S_SERVER_UNAVAILABLE, got %ld\n",
GetLastError());
605 ok(handle2 !=
NULL,
"Expected a handle\n");
606 ok(handle2 !=
handle,
"Didn't expect the same handle\n");
645 const char backup[] =
"backup.evt";
646 const char backup2[] =
"backup2.evt";
650 ok(!
ret,
"Expected failure\n");
659 ok(!
ret,
"Expected failure\n");
669 ok(!
ret,
"Expected failure\n");
675 "Expected ERROR_INVALID_HANDLE, got %ld\n",
GetLastError());
680 ok(!
ret,
"Expected failure\n");
686 ok(!
ret,
"Expected failure\n");
694static const char eventlogsvc[] =
"SYSTEM\\CurrentControlSet\\Services\\Eventlog";
696static const char eventsources[][11] = {
"WineSrc",
"WineSrc1",
"WineSrc20",
"WineSrc300" };
709 skip(
"Could not open the EventLog service registry key\n");
749static const char *
two_strings[] = {
"First string",
"Second string" };
781 char *localcomputer =
NULL;
785 if (pCreateWellKnownSid)
790 pCreateWellKnownSid(WinInteractiveSid,
NULL,
user, &sidsize);
795 win_skip(
"Skipping some SID related tests\n");
796 sidavailable =
FALSE;
807 win_skip(
"Could not get a handle to the eventlog\n");
816 win_skip(
"We most likely opened the Application eventlog\n");
826 win_skip(
"We didn't open our new eventlog\n");
836 win_skip(
"Win7 fails when using incorrect event types\n");
856 0,
buf, needed, &
read, &needed);
906 ok(
count == (
i + 1),
"Expected %ld records, got %ld\n",
i + 1,
count);
913 (oldest > 1 && oldest != 0xdeadbeef),
914 "Expected oldest to be 1 or higher, got %ld\n", oldest);
915 if (oldest > 1 && oldest != 0xdeadbeef)
938 skip(
"No events were written to the eventlog\n");
944 skip(
"There is no DWORD alignment enforced for UserSid on Vista, W2K8 or Win7\n");
946 if (on_vista && pGetComputerNameExA)
951 pGetComputerNameExA(ComputerNameDnsFullyQualified,
NULL, &
size);
953 pGetComputerNameExA(ComputerNameDnsFullyQualified, localcomputer, &
size);
972 char *sourcename, *computername;
982 ok(!
ret,
"Expected failure\n");
997 0,
buf, needed, &
read, &needed);
1007 "Expected %ld, got %ld\n",
read,
record->Length);
1009 "Expected 0x654c664c, got %ld\n",
record->Reserved);
1011 (on_vista && (
record->RecordNumber >
i + 1)),
1012 "Expected %ld or higher, got %ld\n",
i + 1,
record->RecordNumber);
1027 ok(!
lstrcmpiA(computername, localcomputer),
"Expected '%s', got '%s'\n",
1028 localcomputer, computername);
1042 ok(*(
DWORD *)((
BYTE *)
buf + calculated_sidoffset) == 0,
"Expected 0\n");
1049 ok(
record->UserSidLength == sidsize,
"Expected %ld, got %ld\n", sidsize,
record->UserSidLength);
1053 ok(
record->StringOffset ==
record->UserSidOffset,
"Expected offsets to be the same\n");
1054 ok(
record->UserSidLength == 0,
"Expected 0, got %ld\n",
record->UserSidLength);
1057 ok(
record->DataLength == 0,
"Expected 0, got %ld\n",
record->DataLength);
1060 for (
k = 0;
k <
record->NumStrings;
k++)
1067 "Expected the closing DWORD to contain the length of the record\n");
1086 ok(
count == 0,
"Expected an empty eventlog, got %ld records\n",
count);
1091 free(localcomputer);
1136 memset(sources_verify, 0,
sizeof(sources_verify));
1146 "Expected a correct 'Sources' value (size : %ld)\n",
size);
1153 if (pWow64DisableWow64FsRedirection)
1154 pWow64DisableWow64FsRedirection(&redir);
1164 if (pWow64RevertWow64FsRedirection)
1165 pWow64RevertWow64FsRedirection(redir);
1187 ok(lret ==
ERROR_SUCCESS,
"Could not delete the registry tree : %ld\n", lret);
1193 ok(bret,
"Expected MoveFileEx to succeed: %ld\n",
GetLastError());
1199 static const GUID test_guid = {0x57696E65, 0x0000, 0x0000, {0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x01}};
1204 if (!pEventRegister)
1206 win_skip(
"advapi32.EventRegister is missing, skipping trace event tests\n");
1216 uret = pEventRegister(&test_guid,
NULL,
NULL, ®_handle);
1217 ok(uret ==
ERROR_SUCCESS,
"EventRegister gave wrong error: %#lx\n", uret);
1219 uret = pEventWriteString(0, 0, 0,
emptyW);
1222 uret = pEventWriteString(reg_handle, 0, 0,
NULL);
1225 uret = pEventUnregister(0);
1228 uret = pEventUnregister(reg_handle);
1229 ok(uret ==
ERROR_SUCCESS,
"EventUnregister gave wrong error: %#lx\n", uret);
1234 const char sessionname[] =
"wine";
1235 const char filepath[] =
"wine.etl";
1236 const char filepath2[] =
"eniw.etl";
1243 properties =
calloc(1, buffersize);
1256 "Expected ERROR_BAD_LENGTH, got %ld\n",
ret);
1291 properties->
Wnode.
Guid = SystemTraceControlGuid;
1306 skip(
"need admin rights\n");
1315 "Expected ERROR_ALREADY_EXISTS, got %ld\n",
ret);
1352 WCHAR *sourcename, *computername, *localcomputer;
1353 char *sourcenameA, *computernameA, *localcomputerA;
1359 win_skip(
"Can't open System event log\n" );
1368 ok(!!handle2,
"Expected valid handle\n");
1377 while (!found &&
ret)
1388 ok(needed == 0,
"Expected 0, got %ld\n", needed);
1393 ok(
record->Reserved == 0x654c664c,
"Expected 0x654c664c, got %ld\n",
record->Reserved);
1394 ok(
record->RecordNumber > 0,
"Expected 1 or higher, got %ld\n",
record->RecordNumber);
1395 ok(
record->TimeGenerated ==
record->TimeWritten,
"Expected time values to be the same\n");
1401 ok(
record->NumStrings == 0,
"Expected 0, got %d\n",
record->NumStrings);
1403 ok(
record->EventCategory == 0,
"Expected 0, got %d\n",
record->EventCategory);
1404 ok(
record->ReservedFlags == 0,
"Expected 0, got %d\n",
record->ReservedFlags);
1405 ok(
record->ClosingRecordNumber == 0,
"Expected 0, got %ld\n",
record->ClosingRecordNumber);
1406 ok(
record->StringOffset ==
record->UserSidOffset,
"Expected offsets to be the same\n");
1407 ok(
record->UserSidLength == 0,
"Expected 0, got %ld\n",
record->UserSidLength);
1412 ok(
record->DataLength == 24,
"Expected 24, got %ld\n",
record->DataLength);
1413 ok(
record->DataOffset ==
record->UserSidOffset,
"Expected offsets to be the same\n");
1418 "Expected 'EventLog', got '%ls'\n", sourcename);
1420 computername = sourcename +
sizeof(
"EventLog");
1421 ok(!
lstrcmpiW(computername, localcomputer),
"Expected '%ls', got '%ls'\n",
1422 localcomputer, computername);
1434 "Expected %ld, got %ld\n",
size,
record->DataOffset);
1440 todo_wine ok(found,
"EventlogStarted event not found\n");
1442 free(localcomputer);
1456 while (!found &&
ret)
1467 ok(needed == 0,
"Expected 0, got %ld\n", needed);
1472 ok(
record->Reserved == 0x654c664c,
"Expected 0x654c664c, got %ld\n",
record->Reserved);
1473 ok(
record->RecordNumber > 0,
"Expected 1 or higher, got %ld\n",
record->RecordNumber);
1474 ok(
record->TimeGenerated ==
record->TimeWritten,
"Expected time values to be the same\n");
1480 ok(
record->NumStrings == 0,
"Expected 0, got %d\n",
record->NumStrings);
1482 ok(
record->EventCategory == 0,
"Expected 0, got %d\n",
record->EventCategory);
1483 ok(
record->ReservedFlags == 0,
"Expected 0, got %d\n",
record->ReservedFlags);
1484 ok(
record->ClosingRecordNumber == 0,
"Expected 0, got %ld\n",
record->ClosingRecordNumber);
1485 ok(
record->StringOffset ==
record->UserSidOffset,
"Expected offsets to be the same\n");
1486 ok(
record->UserSidLength == 0,
"Expected 0, got %ld\n",
record->UserSidLength);
1491 ok(
record->DataLength == 24,
"Expected 24, got %ld\n",
record->DataLength);
1492 ok(
record->DataOffset ==
record->UserSidOffset,
"Expected offsets to be the same\n");
1495 sourcenameA = (
char *)(
record + 1);
1496 ok(!
strcmp(sourcenameA,
"EventLog"),
1497 "Expected 'EventLog', got '%s'\n", sourcenameA);
1499 computernameA = sourcenameA +
sizeof(
"EventLog");
1500 ok(!
_stricmp(computernameA, localcomputerA),
"Expected '%s', got '%s'\n",
1501 localcomputerA, computernameA);
1512 "Expected %ld, got %ld\n",
size,
record->DataOffset);
1518 todo_wine ok(found,
"EventlogStarted event not found\n");
1520 free(localcomputerA);
1530 ok(
record->RecordNumber == 1,
"Expected 1, got %lu\n",
record->RecordNumber);
1535 ok(
record->RecordNumber == 2,
"Expected 2, got %lu\n",
record->RecordNumber);
1542 ok(
record->RecordNumber == 2,
"Expected 2, got %lu\n",
record->RecordNumber);
1547 ok(
record->RecordNumber == 1,
"Expected 1, got %lu\n",
record->RecordNumber);
1554 ok(!
ret,
"Expected failure\n");
1565 ok(
count,
"Zero records in log\n");
1586 ok(!
ret,
"Expected failure\n");
1598 ok(!
ret,
"Expected failure\n");
1610 ok(
record->RecordNumber == 2,
"Expected 2, got %lu\n",
record->RecordNumber);
1619 ok(
record->RecordNumber == 4,
"Expected 4, got %lu\n",
record->RecordNumber);
1628 ok(
record->RecordNumber == 3,
"Expected 3, got %lu\n",
record->RecordNumber);
1635 "Expected 4, got %lu\n",
record->RecordNumber);
1644 ok(
record->RecordNumber == 10,
"Expected 10, got %lu\n",
record->RecordNumber);
1653 ok(!
ret,
"Expected failure\n");
1664 ok(
record->RecordNumber == 5,
"Expected 5, got %lu\n",
record->RecordNumber);
1673 ok(
record->RecordNumber == 3,
"Expected 3, got %lu\n",
record->RecordNumber);
1682 ok(
record->RecordNumber == 4,
"Expected 4, got %lu\n",
record->RecordNumber);
1689 "Expected 3, got %lu\n",
record->RecordNumber);
1698 ok(
record->RecordNumber == 10,
"Expected 10, got %lu\n",
record->RecordNumber);
1710 ok(
record->RecordNumber == 1,
"Expected 1, got %lu\n",
record->RecordNumber);
1715 ok(
record->RecordNumber == 1,
"Expected 1, got %lu\n",
record->RecordNumber);
1732 ok(
size == size2,
"Expected %lu, got %lu\n",
size, size2);
1735 count2 = 0xdeadbeef;
1740 ok(
count == count2,
"Expected %lu, got %lu\n",
count, count2);
1754 win_skip(
"Event log functions are not implemented\n");
void user(int argc, const char *argv[])
#define RegCloseKey(hKey)
BOOL WINAPI GetComputerNameW(LPWSTR lpBuffer, LPDWORD lpnSize)
#define ERROR_NOT_ENOUGH_MEMORY
#define ERROR_INSUFFICIENT_BUFFER
LONG WINAPI RegCreateKeyA(HKEY hKey, LPCSTR lpSubKey, PHKEY phkResult)
LONG WINAPI RegFlushKey(HKEY hKey)
LONG WINAPI RegOpenKeyA(HKEY hKey, LPCSTR lpSubKey, PHKEY phkResult)
LONG WINAPI RegDeleteValueA(HKEY hKey, LPCSTR lpValueName)
LONG WINAPI RegQueryValueExA(_In_ HKEY hkeyorg, _In_ LPCSTR name, _In_ LPDWORD reserved, _Out_opt_ LPDWORD type, _Out_opt_ LPBYTE data, _Inout_opt_ LPDWORD count)
LONG WINAPI RegDeleteKeyA(_In_ HKEY hKey, _In_ LPCSTR lpSubKey)
HANDLE WINAPI OpenEventLogW(IN LPCWSTR lpUNCServerName, IN LPCWSTR lpSourceName)
BOOL WINAPI CloseEventLog(IN HANDLE hEventLog)
BOOL WINAPI GetNumberOfEventLogRecords(IN HANDLE hEventLog, OUT PDWORD NumberOfRecords)
BOOL WINAPI GetOldestEventLogRecord(IN HANDLE hEventLog, OUT PDWORD OldestRecord)
BOOL WINAPI ClearEventLogA(IN HANDLE hEventLog, IN LPCSTR lpBackupFileName)
BOOL WINAPI ReportEventA(IN HANDLE hEventLog, IN WORD wType, IN WORD wCategory, IN DWORD dwEventID, IN PSID lpUserSid, IN WORD wNumStrings, IN DWORD dwDataSize, IN LPCSTR *lpStrings, IN LPVOID lpRawData)
HANDLE WINAPI OpenEventLogA(IN LPCSTR lpUNCServerName, IN LPCSTR lpSourceName)
BOOL WINAPI ReadEventLogA(IN HANDLE hEventLog, IN DWORD dwReadFlags, IN DWORD dwRecordOffset, OUT LPVOID lpBuffer, IN DWORD nNumberOfBytesToRead, OUT DWORD *pnBytesRead, OUT DWORD *pnMinNumberOfBytesNeeded)
HANDLE WINAPI OpenBackupEventLogA(IN LPCSTR lpUNCServerName, IN LPCSTR lpFileName)
BOOL WINAPI BackupEventLogA(IN HANDLE hEventLog, IN LPCSTR lpBackupFileName)
BOOL WINAPI ReadEventLogW(IN HANDLE hEventLog, IN DWORD dwReadFlags, IN DWORD dwRecordOffset, OUT LPVOID lpBuffer, IN DWORD nNumberOfBytesToRead, OUT DWORD *pnBytesRead, OUT DWORD *pnMinNumberOfBytesNeeded)
BOOL WINAPI DeregisterEventSource(IN HANDLE hEventLog)
HANDLE WINAPI RegisterEventSourceA(IN LPCSTR lpUNCServerName, IN LPCSTR lpSourceName)
#define ERROR_CALL_NOT_IMPLEMENTED
#define ERROR_INVALID_PARAMETER
#define GetProcAddress(x, y)
#define CreateFileA(a, b, c, d, e, f, g)
#define ERROR_INVALID_HANDLE
#define ERROR_ACCESS_DENIED
static void cleanup(void)
BOOL WINAPI DeleteFileA(IN LPCSTR lpFileName)
DWORD WINAPI GetFileAttributesA(LPCSTR lpFileName)
BOOL WINAPI WriteFile(IN HANDLE hFile, IN LPCVOID lpBuffer, IN DWORD nNumberOfBytesToWrite OPTIONAL, OUT LPDWORD lpNumberOfBytesWritten, IN LPOVERLAPPED lpOverlapped OPTIONAL)
HMODULE WINAPI DECLSPEC_HOTPATCH GetModuleHandleA(LPCSTR lpModuleName)
UINT WINAPI GetSystemDirectoryA(OUT LPSTR lpBuffer, IN UINT uSize)
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
int WINAPI lstrcmpA(LPCSTR str1, LPCSTR str2)
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
int WINAPI lstrcmpiA(LPCSTR str1, LPCSTR str2)
_ACRTIMP int __cdecl memcmp(const void *, const void *, size_t)
_ACRTIMP size_t __cdecl strlen(const char *)
_ACRTIMP int __cdecl strcmp(const char *, const char *)
struct _EVENT_TRACE_PROPERTIES EVENT_TRACE_PROPERTIES
#define EVENT_TRACE_CONTROL_STOP
#define EVENT_TRACE_FILE_MODE_NONE
#define EVENT_TRACE_FILE_MODE_CIRCULAR
EXTERN_C ULONG WMIAPI StartTraceA(OUT PTRACEHANDLE TraceHandle, IN LPCSTR InstanceName, IN OUT PEVENT_TRACE_PROPERTIES Properties)
#define EVENT_TRACE_FILE_MODE_SEQUENTIAL
EXTERN_C ULONG WMIAPI ControlTraceA(IN TRACEHANDLE TraceHandle, IN LPCSTR InstanceName OPTIONAL, IN OUT PEVENT_TRACE_PROPERTIES Properties, IN ULONG ControlCode)
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLenum GLuint GLenum GLsizei const GLchar * buf
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static const WCHAR emptyW[]
LPSTR WINAPI lstrcpyA(LPSTR lpString1, LPCSTR lpString2)
LPSTR WINAPI lstrcatA(LPSTR lpString1, LPCSTR lpString2)
int WINAPI lstrlenA(LPCSTR lpString)
void __cdecl void __cdecl void __cdecl void __cdecl void __cdecl winetest_push_context(const char *fmt,...) __WINE_PRINTF_ATTR(1
void __cdecl void __cdecl void __cdecl void __cdecl void __cdecl void winetest_pop_context(void)
#define ERROR_ALREADY_EXISTS
#define ERROR_FILE_NOT_FOUND
static void test_clear(void)
static void test_oldest(void)
static const char * two_strings[]
static void test_backup(void)
static void init_function_pointers(void)
static DWORD *static DWORD
static char eventlogfile[MAX_PATH]
static BOOL create_new_eventlog(void)
static const char * one_string[]
static const char eventsources[][11]
static void test_readwrite(void)
static void test_autocreation(void)
const char ** evt_strings
static const char eventlogname[]
static void test_eventlog_start(void)
static void test_count(void)
static BOOL read_record(HANDLE handle, DWORD flags, DWORD offset, EVENTLOGRECORD **record, DWORD *size)
static void test_info(void)
static DWORD *static LPDWORD
static void test_start_trace(void)
static const char eventlogsvc[]
static void test_read(void)
static const WCHAR *static LPSTR
static const struct @1753 read_write[]
static DWORD *static LPVOID
static void test_trace_event_params(void)
static void cleanup_eventlog(void)
static void test_openbackup(void)
static BOOL create_backup(const char *filename)
static void test_open_close(void)
static HINSTANCE hkernel32
BOOL WINAPI MoveFileExA(IN LPCSTR lpExistingFileName, IN LPCSTR lpNewFileName OPTIONAL, IN DWORD dwFlags)
unsigned __int3264 UINT_PTR
#define EVENT_EventlogStarted
#define _WIN32_WINNT_WS03
#define _WIN32_WINNT_VISTA
BOOL WINAPI SHIM_OBJ_NAME() GetComputerNameA(LPSTR lpBuffer, LPDWORD lpnSize)
VOID WINAPI DECLSPEC_HOTPATCH Sleep(IN DWORD dwMilliseconds)
#define INVALID_FILE_ATTRIBUTES
DWORD WINAPI GetLastError(void)
#define EVENTLOG_FULL_INFO
#define MOVEFILE_DELAY_UNTIL_REBOOT
#define MAX_COMPUTERNAME_LENGTH
struct _EVENTLOG_FULL_INFORMATION EVENTLOG_FULL_INFORMATION
#define ERROR_INVALID_LEVEL
#define ERROR_SHARING_VIOLATION
#define ERROR_BAD_PATHNAME
#define RPC_X_NULL_REF_POINTER
#define ERROR_EVENTLOG_FILE_CORRUPT
#define RPC_S_SERVER_UNAVAILABLE
#define RPC_S_INVALID_NET_ADDR
#define ERROR_PRIVILEGE_NOT_HELD
#define EVENTLOG_ERROR_TYPE
#define EVENTLOG_SEQUENTIAL_READ
#define EVENTLOG_AUDIT_FAILURE
#define EVENTLOG_INFORMATION_TYPE
#define EVENTLOG_AUDIT_SUCCESS
#define EVENTLOG_BACKWARDS_READ
#define EVENTLOG_FORWARDS_READ
struct _EVENTLOGRECORD EVENTLOGRECORD
#define EVENTLOG_WARNING_TYPE
#define EVENTLOG_SEEK_READ
#define HKEY_LOCAL_MACHINE
#define WNODE_FLAG_TRACED_GUID
#define SECURITY_MAX_SID_SIZE