+/******************************************************************************
+ * GetEventLogInformation [ADVAPI32.@]
+ *
+ * PARAMS
+ * hEventLog [I] Handle to event log
+ * dwInfoLevel [I] Level of event log information to return
+ * lpBuffer [O] Buffer that receives the event log information
+ * cbBufSize [I] Size of the lpBuffer buffer
+ * pcbBytesNeeded [O] Required buffer size
+ */
+BOOL WINAPI
+GetEventLogInformation(IN HANDLE hEventLog,
+ IN DWORD dwInfoLevel,
+ OUT LPVOID lpBuffer,
+ IN DWORD cbBufSize,
+ OUT LPDWORD pcbBytesNeeded)
+{
+ NTSTATUS Status;
+
+ RpcTryExcept
+ {
+ Status = ElfrGetLogInformation(hEventLog,
+ dwInfoLevel,
+ (LPBYTE)lpBuffer,
+ cbBufSize,
+ pcbBytesNeeded);
+ }
+ RpcExcept(EXCEPTION_EXECUTE_HANDLER)
+ {
+ Status = I_RpcMapWin32Status(RpcExceptionCode());
+ }
+ RpcEndExcept;
+
+ if (!NT_SUCCESS(Status))
+ {
+ SetLastError(RtlNtStatusToDosError(Status));
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+