#include <LibSymbolInfo.h>
Definition at line 15 of file LibSymbolInfo.h.
CLibSymbolInfo::CLibSymbolInfo |
( |
| ) |
|
CLibSymbolInfo::~CLibSymbolInfo |
( |
| ) |
|
|
virtual |
DWORD CLibSymbolInfo::ConvertBigEndian |
( |
DWORD |
bigEndian | ) |
|
|
protected |
Definition at line 179 of file LibSymbolInfo.cpp.
183 temp |= bigEndian >> 24;
184 temp |= ((bigEndian & 0x00FF0000) >> 8);
185 temp |= ((bigEndian & 0x0000FF00) << 8);
186 temp |= ((bigEndian & 0x000000FF) << 24);
BOOL CLibSymbolInfo::Dump |
( |
LPTSTR |
lpszLibPathName, |
|
|
std::ostream & |
pFile |
|
) |
| |
|
protected |
Definition at line 67 of file LibSymbolInfo.cpp.
73 if(
FALSE == libFile.IsValid() ) {
81 PSTR pArchiveStartString = (PSTR)libFile.GetBase();
83 if ( 0 !=
strncmp( pArchiveStartString, IMAGE_ARCHIVE_START,
84 IMAGE_ARCHIVE_START_SIZE ) ) {
91 PIMAGE_ARCHIVE_MEMBER_HEADER pMbrHdr;
92 pMbrHdr =
MakePtr( PIMAGE_ARCHIVE_MEMBER_HEADER, pArchiveStartString,
93 IMAGE_ARCHIVE_START_SIZE );
96 PDWORD pcbSymbols = (PDWORD)(pMbrHdr + 1);
104 PDWORD pMemberOffsets = pcbSymbols + 1;
108 PSTR pszSymbolName =
MakePtr( PSTR, pMemberOffsets, 4 * cSymbols );
113 for (
unsigned i = 0; i < cSymbols; i++ )
125 string symbol(pszSymbolName);
127 pFile << symbol <<
endl;
134 pszSymbolName +=
strlen(pszSymbolName) + 1;
bool TRUE
for job options legacy (TODO: get rid of these!) ----------------------—
#define MakePtr(cast, ptr, addValue)
std::string m_strErrorMsg
BOOL IsFiltedSymbol(std::string &pszSymbolName)
DWORD ConvertBigEndian(DWORD bigEndian)
BOOL IsRegularLibSymbol(PSTR pszSymbolName)
BOOL CLibSymbolInfo::DumpSymbols |
( |
LPTSTR |
lpszLibPathName, |
|
|
std::ostream & |
pFile |
|
) |
| |
Definition at line 43 of file LibSymbolInfo.cpp.
45 if(lpszLibPathName == NULL || pFile.
bad() ) {
46 assert(lpszLibPathName != NULL);
52 if(!
Dump(lpszLibPathName, pFile))
return FALSE;
bool TRUE
for job options legacy (TODO: get rid of these!) ----------------------—
BOOL Dump(LPTSTR lpszLibPathName, std::ostream &pFile)
std::string m_strErrorMsg
string CLibSymbolInfo::GetLastError |
( |
| ) |
const |
BOOL CLibSymbolInfo::IsFiltedSymbol |
( |
std::string & |
pszSymbolName | ) |
|
|
protected |
Definition at line 159 of file LibSymbolInfo.cpp.
161 if ( symbolName.compare(0,2,
"__") == 0 )
163 if ( symbolName.compare(0,3,
"??_") == 0 && symbolName[3] !=
'0')
165 if( symbolName[0] ==
'_') {
166 symbolName.erase(0, 1);
169 if (symbolName.find (
"detail@boost") != string::npos )
171 if (symbolName.find (
"details@boost") != string::npos )
bool TRUE
for job options legacy (TODO: get rid of these!) ----------------------—
BOOL CLibSymbolInfo::IsRegularLibSymbol |
( |
PSTR |
pszSymbolName | ) |
|
|
protected |
Definition at line 143 of file LibSymbolInfo.cpp.
145 if ( 0 ==
strncmp( pszSymbolName,
"__IMPORT_DESCRIPTOR_", 20 ) )
148 if ( 0 ==
strncmp( pszSymbolName,
"__NULL_IMPORT_DESCRIPTOR", 24 ) )
151 if (
strstr( pszSymbolName,
"_NULL_THUNK_DATA" ) )
bool TRUE
for job options legacy (TODO: get rid of these!) ----------------------—
The documentation for this class was generated from the following files: