質問

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

編集:evtexportlog-最小限の要件がWin Server 2008であるため、この機能を使用できないことがわかりました。WinServer 2000とWin Server 2003で作業する必要があります。

何を使用するか、それを使用する方法はありますか?

リチャードクックのおかげで解決策があります。

    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;
}
役に立ちましたか?

解決

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top