Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mengambil baris dalam kompilasi tertentu yang berisi alamat tertentu.
Sintaks
HRESULT findLinesByAddr (
DWORD seg,
DWORD offset,
DWORD length,
IDiaEnumLineNumbers** ppResult
);
Parameter
seg
[in] Menentukan komponen bagian dari alamat tertentu.
offset
[in] Menentukan komponen offset dari alamat tertentu.
length
[in] Menentukan jumlah byte rentang alamat yang akan dicakup dengan kueri ini.
ppResult
[out] Mengembalikan IDiaEnumLineNumbers objek yang berisi daftar semua nomor baris yang mencakup rentang alamat yang ditentukan.
Tampilkan Nilai
Jika berhasil, mengembalikan S_OK; jika tidak, mengembalikan kode galat.
Contoh
Contoh ini menunjukkan fungsi yang memperoleh semua nomor baris yang terdapat dalam fungsi menggunakan alamat dan panjang fungsi.
IDiaEnumLineNumbers* GetLineNumbersByAddr(IDiaSymbol *pFunc,
IDiaSession *pSession)
{
IDiaEnumLineNumbers* pEnum = NULL;
DWORD seg;
DWORD offset;
ULONGLONG length;
if (pFunc->get_addressSection ( &seg ) == S_OK &&
pFunc->get_addressOffset ( &offset ) == S_OK)
{
pFunc->get_length ( &length );
pSession->findLinesByAddr( seg, offset, static_cast<DWORD>( length ), &pEnum );
}
return(pEnum);
}