Konsolenanwendung - Geloggte Events via DCOM-Schnittstelle lesen

Das folgende Beispiel zeigt, wie in C++ eine Liste von geloggten Meldungen ausgegeben werden kann.

  1. Erstellen Sie eine standard Konsolen Applikation.
  2. Fügen Sie folgenden Sourcecode hinzu.
if( SUCCEEDED(CoInitialize( 0 )) )
{
    ITcEventLogPtr    spEventLogger;
    ITcEnumEventsPtr   spEnumEvts;
   ITcEventPtr       spEvent;
    IDispatchPtr      spDisp;

    if( SUCCEEDED( spEventLogger.CreateInstance(CLSID_TcEventLog))
    {
    spEnumEvts =spEventLogger->EnumLoggedEvents();
    if(spEnumEvts)
    {
        while(spEnumEvts->Next(1, &spDisp) == 1 )
        {
           spEvent = spDisp;
           spEvent->GetMsgString(1033);
           printf( "Event %i; Source %i\n Message = %s\n",spEvent->GetId(), spEvent->GetSrcId(),(char*)spEvent->GetMsgString(1033) );
           spDisp = NULL;
        }
    }
}

spEnumEvts = NULL;
spEvent = NULL;
spEventLogger = NULL;

CoUninitialize();
}

return 0;

Das Programm benutzt das ITcEnumEvents Interface um die geloggten Meldungen zu enumerieren.

Für alle geloggten Meldungen wird im Konsolenfenster der Meldungstext ausgegeben.

 

Sprache / IDE

Beispielprogram auspacken

Visual Studio 6 C++

Sample02.zip