IDiaDataSourceEx::loadDataFromPdbEx
Öffnet und bereitet eine Programmdatenbankdatei (PDB) als Debugdatenquelle mit optionaler Datensatzvorschub vor.
Syntax
HRESULT loadDataFromPdbEx (
LPCOLESTR pdbPath,
BOOL fPdbPrefetching
);
Parameter
pdbPath
[in] Der Pfad zur PDB-Datei.
fPdbPrefetching
[in] Bei Festlegung auf TRUE
, werden angrenzende Debugdatensätze in den Arbeitsspeicher voreingestellt, wodurch möglicherweise viele kleinere Datei-E/A-Vorgänge durch weniger, größere Vorgänge ersetzt werden und somit der gesamter Durchsatz verbessert wird, da anschließend auf diese Datensätze zugegriffen wird, auf Kosten der potenziell erhöhten Speicherauslastung. Bei Festlegung FALSE
auf , verhält sich dies identisch mit IDiaDataSource::loadDataFromPdb
. Wenn dieser Wert auf einen anderen Wert festgelegt ist, wird das Verhalten nicht angegeben.
Rückgabewert
Wenn die Ausführung erfolgreich ist, wird S_OK
, andernfalls ein Fehlercode zurückgegeben. In der folgenden Tabelle werden die möglichen Rückgabewerte für diese Methode angezeigt.
Wert | Beschreibung |
---|---|
E_PDB_NOT_FOUND |
Fehler beim Öffnen der Datei, oder es wurde festgestellt, dass die Datei ein ungültiges Format aufweist. |
E_PDB_FORMAT |
Es wurde versucht, auf eine Datei mit einem inkompatiblen oder nicht unterstützten Format zuzugreifen. |
E_INVALIDARG |
Ungültiger -Parameter. |
E_UNEXPECTED |
Die Datenquelle wurde bereits vorbereitet. |
Bemerkungen
Bei dieser Methode werden die Debugdaten direkt aus einer PDB-Datei geladen.
Verwenden Sie die IDiaDataSourceEx::loadAndValidateDataFromPdbEx
Methode, um die PDB-Datei anhand bestimmter Kriterien zu überprüfen.
Verwenden Sie die IDiaDataSourceEx::loadDataForExeEx
Methode, um Zugriff auf den Datenladevorgang (über einen Rückrufmechanismus) zu erhalten.
Verwenden Sie die Methode, um eine PDB-Datei direkt aus dem IDiaDataSourceEx::loadDataFromIStreamEx
Arbeitsspeicher zu laden.
Verwenden Sie die Methode, um eine PDB-Datei zu überprüfen, ohne sie IDiaDataSourceEx::ValidatePdb
zu laden.
Beispiel
HRESULT hr = pSource->loadDataFromPdbEx( L"myprog.pdb", TRUE );
if (FAILED(hr))
{
// report error
}