IDiaDataSourceEx
启动对调试符号源的访问,并检索有关该源的信息。
语法
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
接口的其中一个 load 方法的调用会打开符号源。 对方法的成功调用 IDiaDataSource::openSession
返回支持 IDiaSession
查询数据源的接口。 如果加载方法返回与文件相关的错误,则 IDiaDataSource::get_lastError
方法返回值包含与错误关联的文件名。
对调用者的说明
通过调用 CoCreateInstance
具有类标识符 CLSID_DiaSource
和接口 ID 的 IID_IDiaDataSourceEx
函数,或通过调用 QueryInterface
现有 IDiaDataSource
接口指针来获取此接口。 该示例演示如何获取此接口。
示例
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