Freigeben über


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_ACCESSund 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);
...

Weitere Informationen