IDiaDataSourceEx::loadDataFromPdbEx
Ouvre et prépare un fichier de base de données de programme (.pdb) en tant que source de données de débogage avec prérécupération d’enregistrement facultative.
Syntaxe
HRESULT loadDataFromPdbEx (
LPCOLESTR pdbPath,
BOOL fPdbPrefetching
);
Paramètres
pdbPath
[entrée] Chemin d’accès au fichier .pdb.
fPdbPrefetching
[in] Si la valeur est définie TRUE
, les enregistrements de débogage adjacents sont prérécupérés en mémoire, en remplaçant potentiellement de nombreuses opérations d’E/S de fichiers plus petites avec moins d’opérations plus volumineuses, et ainsi améliorer le débit global, car ces enregistrements sont ensuite accessibles, au détriment de l’utilisation potentiellement accrue de la mémoire. Si la valeur est définie FALSE
, cela se comporte de façon identique à IDiaDataSource::loadDataFromPdb
. Si la valeur est définie sur une autre valeur, le comportement n’est pas spécifié.
Valeur de retour
En cas de réussite, retourne S_OK
, sinon, retourne un code d'erreur. Le tableau suivant montre les valeurs possibles pour cette méthode.
Valeur | Description |
---|---|
E_PDB_NOT_FOUND |
Impossible d’ouvrir le fichier, ou format du fichier identifié comme non valide. |
E_PDB_FORMAT |
Tentative d’accès à un fichier avec un format incompatible ou non pris en charge. |
E_INVALIDARG |
Paramètre non valide. |
E_UNEXPECTED |
La source de données a déjà été préparée. |
Remarques
Cette méthode charge directement les données de débogage à partir d’un fichier .pdb.
Pour valider le fichier .pdb par rapport à des critères spécifiques, utilisez la IDiaDataSourceEx::loadAndValidateDataFromPdbEx
méthode.
Pour accéder au processus de chargement des données (via un mécanisme de rappel), utilisez la IDiaDataSourceEx::loadDataForExeEx
méthode.
Pour charger un fichier .pdb directement à partir de la mémoire, utilisez la IDiaDataSourceEx::loadDataFromIStreamEx
méthode.
Pour valider un fichier .pdb sans le charger, utilisez la IDiaDataSourceEx::ValidatePdb
méthode.
Exemple
HRESULT hr = pSource->loadDataFromPdbEx( L"myprog.pdb", TRUE );
if (FAILED(hr))
{
// report error
}