Obtenez les journaux des spectateurs de l'événement avec une victoire api en c ++
-
04-10-2019 - |
Question
Mon besoin d'application pour enregistrer les journaux de l'Observateur d'événements dans un répertoire spécifié et il doit être fait avec une victoire api. Les journaux des applications et du système sont nécessaires.
EDIT: EvtExportLog - Je trouve que je ne peux pas utiliser cette fonction parce que les exigences minimales sont Windows Server 2008, et j'ai besoin ce de travailler sur Windows Server 2000 et Windows Server 2003
.Toutes les suggestions les produits à utiliser et comment l'utiliser?
Et il y a la solution grâce à Richard Cook.
int getEventLogs()
{
HANDLE h = OpenEventLog(NULL,"System");
if(!BackupEventLog(h,"backup.evt"))
{
wprintf(L"BackupEventLog failed for initial export with %lu.\n", GetLastError());
}
return 1;
}
La solution
Vous pouvez énumérer les canaux disponibles sur le système en utilisant EvtOpenChannelEnum
, EvtNextChannelPath
et EvtClose
( documentation ). Ces API (EvtNextChannelPath
spécifiquement) retourneront des chemins dans un format approprié pour EvtExportLog
.