Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
İstemcinin belirtilen adres aralığındaki MSIL uzaklıklarında yineleme yapmasına olanak tanıyan bir numaralandırma alır.
Sözdizimi
HRESULT findILOffsetsByAddr (
DWORD isect,
DWORD offset,
DWORD length,
IDiaEnumLineNumbers** ppResult
);
Parametreler
isect
[in] Belirli adresin bölüm bileşenini belirtir.
offset
[in] Belirli adresin uzaklık bileşenini belirtir.
length
[in] Bu sorguyla kapsaymak için adres aralığının bayt sayısını belirtir.
ppResult
[out] IDiaEnumLineNumbers Belirtilen adres aralığını kapsayan tüm MSIL uzaklıklarının listesini içeren bir nesne döndürür.
Dönüş Değeri
Başarılı olursa döndürür S_OK; aksi takdirde bir hata kodu döndürür.
Örnek
Bu örnekte, işlevin adresini ve uzunluğunu kullanarak bir işlevde bulunan tüm MSIL uzaklığını alan bir işlev gösterilmektedir.
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->findILOffsetsByAddr( seg, offset, static_cast<DWORD>( length ), &pEnum );
}
return(pEnum);
}