IDiaDataSourceEx::loadDataFromIStreamEx
使用可选的记录预提取准备通过可能内存中数据流访问的程序数据库 (.pdb) 文件中存储的调试数据。
语法
HRESULT loadDataFromIStreamEx (
IStream* pIStream,
BOOL fPdbPrefetching
);
参数
pIStream
[in] 表示要使用的数据流的 IStream 对象。
fPdbPrefetching
[in]如果设置为 TRUE
,则相邻的调试记录将预提取到内存中,可能会将许多较小的文件 I/O 操作替换为更少、更大的操作,从而提高总体吞吐量,因为随后访问这些记录,代价是内存使用量可能会增加。 如果设置为 FALSE
,则其行为方式与 IDiaDataSource::loadDataFromIStream
相同。 如果设置为其他值,则行为未指定。
返回值
如果成功,则返回 S_OK
;否则,返回错误代码。 下表显示了此方法的可能返回值。
值 | 说明 |
---|---|
E_PDB_FORMAT |
尝试访问采用过时格式的文件。 |
E_INVALIDARG |
参数无效。 |
E_UNEXPECTED |
数据源已准备好。 |
备注
此方法允许通过 IStream 对象从内存中获取可执行文件的调试数据。
若要在不验证的情况下加载 .pdb 文件,请使用 IDiaDataSourceEx::loadDataFromPdbEx
该方法。
若要根据特定条件验证 .pdb 文件,请使用 IDiaDataSourceEx::loadAndValidateDataFromPdbEx
该方法。
若要访问数据加载过程(通过回调机制),请使用 IDiaDataSourceEx::loadDataForExeEx
该方法。