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


IDiaSession::getTypeMDTokenMap

Извлекает содержимое карты маркеров типа метаданных .NET Native.

Синтаксис

HRESULT getTypeMDTokenMap(
    DWORD cb,
    DWORD *pcb,
    BYTE *pb
);

Параметры

cb

[in] Размер в байтах буфера, на который указывает pb для получения карты маркеров типа метаданных .NET Native.

pcb

[out] Возвращает размер в байтах карты маркеров типа метаданных .NET Native (т. е. количество байтов, записанных в pb).

pb

[out] Буфер для получения содержимого карты маркеров типа метаданных .NET Native. Это должно быть не менее cb байтов в размере.

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

В случае успешного выполнения возвращается S_OK; в противном случае возвращает код ошибки.

Пример

В этом разделе показано, как получить размер карты, а затем получить карту полного маркера.

DWORD size = 0;
HRESULT hr = pDiaSession->getTypeMDTokenMapSize(&size);
if (FAILED(hr)) {
   return hr;
}
if (size == 0) {
   return S_FALSE;
}

BYTE * map = new (std::nothrow) BYTE[size];
if (map == nullptr) {
   return E_OUTOFMEMORY;
}

hr = pDiaSession->getTypeMDTokenMap(size, &size, map);
if (FAILED(hr)) {
   delete [] map;
   return hr;
}

См. также