启动对调试符号源的访问,并检索有关该源的信息。
语法
IDiaDataSourceEx : IDiaDataSource
Vtable 顺序中的方法
下表显示了 IDiaDataSourceEx
的方法。
方法 | 描述 |
---|---|
IDiaDataSourceEx::loadDataFromPdbEx |
打开并准备程序数据库 (.pdb) 文件作为调试数据源。 |
IDiaDataSourceEx::loadAndValidateDataFromPdbEx |
打开并验证程序数据库 (.pdb) 文件是否与提供的签名信息匹配;将 .pdb 文件准备为调试数据源。 |
IDiaDataSourceEx::loadDataForExeEx |
打开并准备与 .exe/.dll 文件关联的调试数据。 |
IDiaDataSourceEx::loadDataFromIStreamEx |
准备通过内存中数据流访问的程序数据库 (.pdb) 文件中存储的调试数据。 |
IDiaDataSourceEx::getStreamSize |
读取此程序数据库 (.pdb) 文件中命名流的大小。 |
IDiaDataSourceEx::getStreamRawData |
读取此程序数据库 (.pdb) 文件中命名流的数据。 |
IDiaDataSourceEx::setPfnMiniPDBErrorCallback2 |
设置回调函数指针,用于接收与快速链接 PDB 相关的错误通知。 |
IDiaDataSourceEx::ValidatePdb |
仅验证程序数据库 (.pdb) 文件是否与提供的签名信息匹配。 |
言论
对 IDiaDataSourceEx
接口的其中一种加载方法的调用将打开符号源。 成功调用 IDiaDataSource::openSession
方法将返回支持查询数据源的 IDiaSession
接口。 如果加载方法返回与文件相关的错误,则 IDiaDataSource::get_lastError
方法返回值包含与错误关联的文件名。
呼叫者的说明
通过调用 CoCreateInstance
函数,该函数具有类标识符 CLSID_DiaSource
和 IID_IDiaDataSourceEx
的接口 ID,或通过调用现有 IDiaDataSource
接口指针上的 QueryInterface
来获取此接口。 该示例演示如何获取此接口。
例
IDiaDataSource* pSource;
HRESULT hr = CoCreateInstance(CLSID_DiaSource,
NULL,
CLSCTX_INPROC_SERVER,
IID_IDiaDataSourceEx,
(void**) &pSource);
if (FAILED(hr))
{
// Report error and exit
}
要求
标头:Dia2.h
库:diaguids.lib
DLL:msdia140.dll