Dynamische Ablaufverfolgung

Die Ablaufverfolgung kann jederzeit in einer Anwendung aktiviert oder deaktiviert werden. Auf diese Weise kann eine Anwendung eine beliebige Anzahl von Funktionsaufrufen nachverfolgen.

Die Variable ODBCSharedTraceFlag ist so festgelegt, dass die Ablaufverfolgung dynamisch aktiviert wird. Diese Variable wird für alle ausgeführten Kopien des Treiber-Managers freigegeben. Wenn eine Anwendung diese Variable festlegt, ist die Ablaufverfolgung für alle derzeit ausgeführten ODBC-Anwendungen aktiviert. Um die Ablaufverfolgung zu deaktivieren, wenn die dynamische Ablaufverfolgung aktiviert ist, ruft eine Anwendung SQLSet Verbinden Attr auf, um SQL_ATTR_TRACE auf SQL_TRACE_OFF festzulegen. Dieser Aufruf deaktiviert die Ablaufverfolgung nur für diese Anwendung. Anwendungen, die mit Odbc32.lib verknüpft sind, können die Verwendung dieser Variablen ändern. Ablaufverfolgungsdaten können in einem Echtzeitfenster anstelle der Ablaufverfolgungsdatei angezeigt werden, die nach der ODBC-Sitzung geöffnet werden muss. Steuerelemente können dem Bildschirm einer Anwendung hinzugefügt werden, um die Ablaufverfolgung zu aktivieren oder zu deaktivieren.

Die mit ODBC 3*.x* ausgelieferte Ablaufverfolgungs-DLL ist nicht threadsicher. Es ist nicht gewährleistet, dass die Protokolldatei ordnungsgemäß geschrieben wird, wenn die globale Ablaufverfolgung aktiviert ist (die Variable ODBCSharedTraceFlag festgelegt ist) und mehrere Anwendungen gleichzeitig in die Ablaufverfolgungsdatei schreiben. Diese Bedingung gibt keinen Fehler zurück.