Поделиться через


PFNMINIPDBERRORCALLBACK2

Предоставляет имя файла и код ошибки для последней ошибки загрузки для ПД fastlink.

Синтаксис

typedef HRESULT __cdecl (*PFNMINIPDBERRORCALLBACK2)(
  void* pvContext, 
  DWORD dwErrorCode, 
  const LPCOLESTR szObjOrPdb, 
  const LPCOLESTR szLib
);

Параметры

pvContext

[in] Контекст, переданный в вызов метода IDiaDataSourceEx::setPfnMiniPDBErrorCallback2 .

dwErrorCode

[in] Код ошибки, описывающий конкретную ошибку. Хотя типизированный DWORD как это действительно HRESULT. Наиболее распространенными значениями являются E_PDB_CORRUPT, E_DIA_COFF_ACCESSи E_DIA_COMP_PDB_ACCESS.

szObjOrPdb

[in] Имя OBJ или PDB-файла, связанного с ошибкой.

szLib

[in] Если szObjOrPdb ссылается на OBJ-файл в LIB-файле, это имя LIB. В противном случае — nullptr.

Возвращаемое значение

Возвращаемое значение игнорируется.

Пример

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

См. также