PFNMINIPDBERRORCALLBACK2
Stellt den Dateinamen und Fehlercode für den letzten Ladefehler für Fastlink-PDBs bereit.
Syntax
typedef HRESULT __cdecl (*PFNMINIPDBERRORCALLBACK2)(
void* pvContext,
DWORD dwErrorCode,
const LPCOLESTR szObjOrPdb,
const LPCOLESTR szLib
);
Parameter
pvContext
[in] Der Kontext, der an den Aufruf der IDiaDataSourceEx::setPfnMiniPDBErrorCallback2-Methode übergeben wurde.
dwErrorCode
[in] Der Fehlercode, der den jeweiligen Fehler beschreibt. Obwohl dies als ein DWORD
typiert ist, ist es wirklich ein HRESULT
. Die am häufigsten verwendeten Werte sind E_PDB_CORRUPT
, E_DIA_COFF_ACCESS
und E_DIA_COMP_PDB_ACCESS
.
szObjOrPdb
[in] Der Name der OBJ- oder PDB-Datei, die sich auf den Fehler bezieht.
szLib
[in] Wenn szObjOrPdb
sich auf eine OBJ-Datei in einer LIB-Datei bezieht, ist dies der Name der LIB. Andernfalls ist der Wert nullptr
.
Rückgabewert
Der Rückgabewert wird ignoriert.
Beispiel
HRESULT __cdecl ReportMiniPDBError(void *pvContext, DWORD hr, const wchar_t *szObjOrPdb, const wchar_t *szLib)
{
wprintf(L"Callback on fastlink PDB: hr = 0x%08x, szObjOrPdb=\"%ls\", szLib=\"%ls\"\n", hr, szObjOrPdb, szLib);
*reinterpret_cast<bool*>(pvContext) = true;
return S_OK;
}
...
bool callbackCalled = false;
HRESULT hr = pSourceEx->setPfnMiniPDBErrorCallback2(&callbackCalled, ReportMiniPDBError);
...