Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Prepares the debug data stored in a program database (.pdb) file accessed through a potentially in-memory data stream, with optional record prefetching.
Syntax
HRESULT loadDataFromIStreamEx (
IStream* pIStream,
BOOL fPdbPrefetching
);
Parameters
pIStream
[in] An IStream object representing the data stream to use.
fPdbPrefetching
[in] If set to TRUE
, adjacent debug records are prefetched into memory, potentially replacing many smaller file I/O operations with fewer, larger operations, and thus improving overall throughput as those records are subsequently accessed, at the expense of potentially increased memory usage. If set to FALSE
, this behaves identically to IDiaDataSource::loadDataFromIStream
. If set to some other value, behavior is unspecified.
Return Value
If successful, returns S_OK
; otherwise, returns an error code. The following table shows the possible return values for this method.
Value | Description |
---|---|
E_PDB_FORMAT |
Attempted to access a file with an obsolete format. |
E_INVALIDARG |
Invalid parameter. |
E_UNEXPECTED |
Data source has already been prepared. |
Remarks
This method allows the debug data for an executable to be obtained from memory through an IStream object.
To load a .pdb file without validation, use the IDiaDataSourceEx::loadDataFromPdbEx
method.
To validate the .pdb file against specific criteria, use the IDiaDataSourceEx::loadAndValidateDataFromPdbEx
method.
To gain access to the data load process (through a callback mechanism), use the IDiaDataSourceEx::loadDataForExeEx
method.