IDiaDataSource::loadAndValidateDataFromPdb
Otevře a ověří, zda soubor databáze (PDB) programu odpovídá podpisu informace poskytnuté a připraví soubor PDB jako zdroj dat pro ladění.
HRESULT loadAndValidateDataFromPdb (
LPCOLESTR pdbPath,
GUID* pcsig70,
DWORD sig,
DWORD age
);
Parametry
pdbPath
[v] Cesta k souboru PDB.pcsig70
[v] Identifikátor GUID podpis ověřit proti podpisu soubor PDB.PDB pouze soubory v Visual C++ a později GUID podpisy.sig
[v] 32Bitové podpis ověřit proti podpisu soubor PDB.age
[v] Hodnota stáří ověřit.Stáří nemusí nezbytně odpovídat známé čas, slouží k určení, zda je synchronizován s odpovídající soubor exe soubor PDB.
Vrácená hodnota
V případě úspěchu vrátí S_OK; v opačném případě vrátí kód chyby.Následující tabulka ukazuje možné vrácené hodnoty pro tuto metodu.
Value |
Description |
---|---|
E_PDB_NOT_FOUND |
Nepodařilo se otevřít soubor nebo soubor má neplatný formát. |
E_PDB_FORMAT |
Došlo k pokusu o přístup k souboru s zastaralý formát. |
E_PDB_INVALID_SIG |
Podpis neodpovídá. |
E_PDB_INVALID_AGE |
Věk neodpovídá. |
E_INVALIDARG |
Neplatný parametr. |
E_UNEXPECTED |
Zdroj dat již připravena. |
Poznámky
Soubor PDB obsahuje hodnoty podpisu a věk.Tyto hodnoty jsou replikovány v souboru EXE nebo DLL odpovídající soubor PDB.Před přípravou zdroj dat, tato metoda ověří podpis a stáří soubor PDB pojmenované odpovídají hodnoty uvedené.
Chcete-li načíst soubor PDB bez ověření, použijte IDiaDataSource::loadDataFromPdb metoda.
Chcete-li získat přístup k procesu načítání dat (prostřednictvím mechanismu zpětné volání), použijte IDiaDataSource::loadDataForExe metoda.
Chcete-li načíst soubor PDB přímo z paměti, použijte IDiaDataSource::loadDataFromIStream metoda.
Příklad
IDiaDataSource* pSource; // Previously created data source.
DEFINE_GUID(expectedGUIDSignature,0x1234,0x5678,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08);
DWORD expectedFileSignature = 0x12345678;
DWORD expectedAge = 128;
HRESULT hr;
hr = pSource->loadAndValidateDataFromPdb( L"yprog.pdb",
&expectedGUIDSignature,
expectedFileSignature,
expectedAge);
if (FAILED(hr))
{
// Report an error
}
Viz také
Referenční dokumentace
IDiaDataSource::loadDataForExe