Отладка приложений


         

я возвращаюсь назад на 100


 // подходящее смещение, я возвращаюсь назад на 100 байт.
 DWORD dwTempDis = 0;
while ( FALSE == ::SymGetLineFromAddr ( m_hProcess ,
dwAddr — dwTempDis ,
 pdwDisplacement , 
Line ) ) 
}
dwTempDis += 1;
if ( 100 == dwTempDis)
{
return ( FALSE); 
}
}
if (0 != dwTempDis)
 {
*pdwDisplacement = dwTempDis; 
}
return { TRUE);
#endif // DO_NOT_WORK_AROUND_SRCLINE_BUG 
}
BOOL SymGetLineFromName ( IN LPSTR ModuleName ,
IN LPSTR FileName ,
 IN DWORD dwLineNumber ,
 OUT PLONG plDisplacement , 
IN OUT PIMAGEHLP_LINE Line ) 
{
return ( ::SymGetLineFromName ( m_hProcess ,
ModuleName , 
FileName , 
dwLineNumber ,
plDisplacement , 
Line ) ) ; 
}
BOOL SymGetLineNext ( IN OUT PIMAGEHLP_LINE Line) 
{
return ( ::SymGetLineNext ( m_hProcess, Line)); 
}
BOOL SymGetLinePrev ( IN OUT PIMAGEHLP_LINE Line) 
{
return ( ::SymGetLinePrev ( m_hProcess, Line));
 }
BOOL SymMatchFileName ( IN LPSTR FileName ,
IN LPSTR Match , 
OUT LPSTR * FileNameStop ,
 OUT LPSTR * MatchStop ) 
{
return ( ::SymMatchFileName ( FileName ,
Match , 
FileNameStop , 
MatchStop ));
 } 
/*- - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - -
Разные public-члены
- - - - - - - -- - - - - - - - - - - - - - - - - - - - - - - -*/
public :
LPVOID SymFunctionTableAccess ( DWORD AddrBase)
 {
return ( ::SymFunctionTableAccess ( m_hProcess, AddrBase)); 
}
BOOL SymGetSearchPath ( OUT LPSTR SearchPath ,
IN DWORD SearchPathLength ) 
{
return ( ::SymGetSearchPath ( m_hProcess ,
SearchPath , 
SearchPathLength )); 
}
BOOL SymSetSearchPath ( IN LPSTR SearchPath) 
{
return ( ::SymSetSearchPath ( m_hProcess, SearchPath)); 

BOOL SymRegisterCallback ( IN PSYMBOL_REGISTERED_CALLBACK
CallbackFunction,
IN PVOID UserContext ) 
{
return ( ::SymRegisterCallback ( m_hProcess ,

Содержание  Назад  Вперед