1

私のアプリケーションは、イベントビューアのログを指定されたディレクトリに保存する必要があり、winapiを使用して実行する必要があります。アプリケーションとシステムのログが必要です。

編集:EvtExportLog-最小要件がWin Server 2008であるため、この関数を使用できないことがわかりました。WinServer2000およびWinServer2003で動作させるにはこれが必要です。

何を使用し、どのように使用するかについての提案はありますか?

そして、RichardCookのおかげで解決策があります。

    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;
}
4

1 に答える 1

2

EvtOpenChannelEnum、、EvtNextChannelPathおよびEvtCloseドキュメント)を使用して、システムで使用可能なチャネルを列挙できます。これらのAPI(EvtNextChannelPath具体的には)は、の適切な形式でパスを返しますEvtExportLog

于 2010-09-22T21:38:18.667 に答える