ATLTRACE2
Zeigt Warnungen ein Ausgabegerät, wie das Debuggerfenster, entsprechend den angegebenen Flags und den Ebenen.
ATLTRACE2( exp );
ATLTRACE2(
DWORD category,
UINT level,
LPCSTR lpszFormat,
...
);
Parameter
exp
[in] Die Zeichenfolge, auf Visual C++ zu des Ausgabefensters oder eine Anwendung senden, die diese Meldungen entsprechen.category
[in] Ereignistyp oder auf dem der - Methode zu melden.Siehe die Hinweise für eine Liste von Kategorien.level
[in] Die Ebene der Ablaufverfolgung zu melden.Siehe die Hinweise für Details.lpszFormat
[in] Die eine, um eine Zeichenfolge zu erstellen printf Formatzeichenfolge zu verwenden, um zum Sicherungsgerät zu senden.
Hinweise
Die Kurzform von ATLTRACE2 schreibt eine Zeichenfolge im Ausgabefenster des Debuggers.Das zweite Format von ATLTRACE2 schreibt auch Ausgabe im Ausgabefenster des Debuggers, jedoch ist abhängig von den Einstellungen des ATL-/MFCablaufverfolgungs-Tools (siehe ATLTraceTool-Beispiel).Wenn Sie die level auf 4 und das ATL/MFC-Ablaufverfolgungsprogramm auf Ebene 0, Sie nicht die Meldung angezeigt.Ebene kann 0, 1, 2, 3 oder 4.Der Standard, 0, meldet nur die ernstesten Probleme.
Die category-Parameterlisten die Ablaufverfolgungsflags festzulegen.Diese Flags entsprechen Typen von Methoden, für die Sie melden möchten.In den folgenden Tabellen werden die gültigen Ablaufverfolgungsflags auf, die Sie für den Parameter category verwenden können.
ATL-Ablaufverfolgungsflags
ATL-Kategorie |
Beschreibung |
---|---|
atlTraceGeneral |
Berichte über alle ATL-Anwendungen.Der Standardwert. |
atlTraceCOM |
Berichte über COM-Methoden. |
atlTraceQI |
Berichte über QueryInterface-Aufrufe. |
atlTraceRegistrar |
Berichte über die Registrierung von Objekten. |
atlTraceRefcount |
Berichte zum Ändern des Verweiszählers. |
atlTraceWindowing |
Berichte über Fenstermethoden; beispielsweise Berichte eine ungültige ID Meldungszuordnung |
atlTraceControls |
Berichte über Steuerelemente; beispielsweise Berichte, wenn ein - Steuerelement oder das Fenster zerstört wird. |
atlTraceHosting |
Berichte, die Nachrichten hosten; beispielsweise Berichte, wenn ein Client in einem Container aktiviert ist. |
atlTraceDBClient |
Berichte über OLE DB-Consumer-Vorlage; beispielsweise wenn ein Aufruf GetData fehlschlägt, kann die Ausgabe das HRESULT enthalten. |
atlTraceDBProvider |
Berichte über OLE DB-Anbieter-Vorlage; beispielsweise Berichte, wenn die Erstellung einer Spalte fehlgeschlagen ist. |
atlTraceSnapin |
Berichte für MMC-Snap-In-Anwendung. |
atlTraceNotImpl |
Berichte, dass die angegebene Funktion nicht implementiert wird. |
atlTraceAllocation |
Zeigt die Meldungen, die von der Arbeitsspeicherdebugtoole in atldbgmem.h gedruckt werden. |
MFC-Ablaufverfolgungsflags
MFC-Kategorie |
Beschreibung |
---|---|
traceAppMsg |
Allgemein, MFC-Meldungen.Immer empfohlen. |
traceDumpContext |
Nachrichten von CDumpContext. |
traceWinMsg |
Meldungen vom Nachrichtenverarbeitungscode MFC. |
traceMemory |
Meldungen vom Speicherverwaltungscode MFC. |
traceCmdRouting |
Meldungen aus der Windows-Befehlsortsnetzkennzahl MFC. |
traceHtml |
Meldungen aus der DHTML-Dialogfeldunterstützung MFC. |
traceSocket |
Nachrichten von der unterstützenden MFC. |
traceOle |
Nachrichten von OLE-Unterstützung MFC. |
traceDatabase |
Meldungen aus der Datenbankunterstützung MFC. |
traceInternet |
Meldungen aus der Internet-Unterstützung MFC. |
Um eine benutzerdefinierte Ablaufverfolgungskategorie zu deklarieren, deklarieren Sie eine globale Instanz der Klasse CTraceCategory wie folgt:
CTraceCategory MY_CATEGORY(_T("MyCategoryName"), 1);
Der Kategoriename, MY_CATEGORY, in diesem Beispiel ist der Name, den Sie an category den Parameter angeben.Der erste Parameter ist der Name der Kategorie, der im ATL/MFC-Ablaufverfolgungsprogramm angezeigt wird.Der zweite Parameter ist die standardmäßige Ablaufverfolgungsebene.Dieser Parameter ist optional und die standardmäßige Ablaufverfolgungsebene ist 0.
So fügen Sie eine benutzerdefinierte Kategorie verwenden:
ATLTRACE2(MY_CATEGORY, 2, _T("a message in a custom category"));
So, dass Sie die Ablaufverfolgungsmeldungen filtern möchten, Einfügungsdefinitionen für diese Makros in Stdafx.h angeben #include <atlbase.h> vor der - Anweisung.
Alternativ können Sie den Filter in den Eigenschaftenseiten-Präprozessordirektiven im Dialogfeld festlegen.Klicken Sie auf die Registerkarte Präprozessor und fügen Sie dann das globale in das Präprozessordefinitionen Eingabefeld ein.
Atlbase.h enthält Standarddefinitionen der ATLTRACE2-Makros und diese Definitionen werden verwendet, wenn Sie diese Symbole definieren, bevor atlbase.h verarbeitet wird.
In Releasebuilds kompiliert ATLTRACE2 zu (void) 0.
ATLTRACE2 schränkt den Inhalt der ein zum Sicherungsgerät zu nicht mehr als 1023 Zeichen zu sendende Zeichenfolge, nachdem es formatiert hat.
ATLTRACE und ATLTRACE2 weisen das gleiche Verhalten, ATLTRACE wird enthalten für Abwärtskompatibilität.
Beispiel
int i = 1;
ATLTRACE2(atlTraceGeneral, 4, "Integer = %d\n", i);
// Output: 'Integer = 1'
Anforderungen
Header: atltrace.h