Veröffentlicht 20. Juli 200421 j Hallo Leutz, ich möchte gerne verschiedene Events im EventLog von meinem Betriebssystem sichtbar machen. Leider bekomme ich eins nicht hin, ich kann keine Beschreibung ausgeben, es wird nur eine Ereignisinformationen ausgegeben. ----- bool CLogger::ReportEventLog() { CString pstrUsername; CString pstrDomain; PSID psidOwner; LPTSTR pszSrcName = _T("programmname"); GetCallProcessUser(&pstrUsername, &pstrDomain, &psidOwner); HANDLE handle; handle= RegisterEventSource(NULL, pszSrcName); if (handle == NULL) { AfxMessageBox(_T("Could not register the event source.")); return false; } LPCSTR lpMsgBuf = _T("Test ist erfolgt"); int n = strlen(lpMsgBuf); if (!ReportEvent(handle , EVENTLOG_ERROR_TYPE, 0, 1024,psidOwner,1,0,&lpMsgBuf,NULL); { AfxMessageBox(_T("Could not report the event.")); } DeregisterEventSource(handle); return true; } -----
28. Juli 200421 j Hat mir jemand eine fertig funktionierendes Beispiel? (Class) Oder vielleicht eine sehr gut Beschreibung (auch gern in Deutsch). THX
28. Juli 200421 j Hat mir jemand eine fertig funktionierendes Beispiel? (Class) An deinem Code ist nichts falsch. Vielleicht ist dir nicht klar, wie das mit den Events funktioniert. Die Texte fürt die Events kommen aus der Message-Datei. Was du bei ReportEvent übergibst, füllt nur die Platzhalter im Text. Wenn deine Message-Datei nicht in Ordnung ist, kann das nicht funktionieren. Siehe dazu auch hier: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/debug/base/event_identifiers.asp
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.